Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / clr / src / BCL / System / Diagnostics / Eventing / EventDescriptor.cs / 1305376 / EventDescriptor.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- using System; using System.Runtime.InteropServices; namespace System.Diagnostics.Eventing { [StructLayout(LayoutKind.Explicit, Size = 16)] [System.Security.Permissions.HostProtection(MayLeakOnAbort = true)] [System.Runtime.CompilerServices.FriendAccessAllowed] internal struct EventDescriptorInternal { # region private [FieldOffset(0)] private ushort m_id; [FieldOffset(2)] private byte m_version; [FieldOffset(3)] private byte m_channel; [FieldOffset(4)] private byte m_level; [FieldOffset(5)] private byte m_opcode; [FieldOffset(6)] private ushort m_task; [FieldOffset(8)] private long m_keywords; #endregion public EventDescriptorInternal( int id, byte version, byte channel, byte level, byte opcode, int task, long keywords ) { if (id < 0) { throw new ArgumentOutOfRangeException("id", SRETW.GetString(SRETW.ArgumentOutOfRange_NeedNonNegNum)); } if (id > ushort.MaxValue) { throw new ArgumentOutOfRangeException("id", SRETW.GetString(SRETW.ArgumentOutOfRange_NeedValidId, 1, ushort.MaxValue)); } m_id = (ushort)id; m_version = version; m_channel = channel; m_level = level; m_opcode = opcode; m_keywords = keywords; if (task < 0) { throw new ArgumentOutOfRangeException("task", SRETW.GetString(SRETW.ArgumentOutOfRange_NeedNonNegNum)); } if (task > ushort.MaxValue) { throw new ArgumentOutOfRangeException("task", SRETW.GetString(SRETW.ArgumentOutOfRange_NeedValidId, 1, ushort.MaxValue)); } m_task = (ushort)task; } public int EventId { get { return m_id; } } public byte Version { get { return m_version; } } public byte Channel { get { return m_channel; } } public byte Level { get { return m_level; } } public byte Opcode { get { return m_opcode; } } public int Task { get { return m_task; } } public long Keywords { get { return m_keywords; } } public override bool Equals(object obj) { if (!(obj is EventDescriptorInternal)) return false; return Equals((EventDescriptorInternal) obj); } public override int GetHashCode() { return m_id ^ m_version ^ m_channel ^ m_level ^ m_opcode ^ m_task ^ (int)m_keywords; } public bool Equals(EventDescriptorInternal other) { if ((m_id != other.m_id) || (m_version != other.m_version) || (m_channel != other.m_channel) || (m_level != other.m_level) || (m_opcode != other.m_opcode) || (m_task != other.m_task) || (m_keywords != other.m_keywords)) { return false; } return true; } public static bool operator ==(EventDescriptorInternal event1, EventDescriptorInternal event2) { return event1.Equals(event2); } public static bool operator !=(EventDescriptorInternal event1, EventDescriptorInternal event2) { return !event1.Equals(event2); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- RectangleConverter.cs
- TriState.cs
- UserControlCodeDomTreeGenerator.cs
- StatusBarDesigner.cs
- WebPart.cs
- SafeUserTokenHandle.cs
- InstallHelper.cs
- TextModifier.cs
- AssertUtility.cs
- DoubleLink.cs
- XmlWrappingReader.cs
- BuildProviderAppliesToAttribute.cs
- Substitution.cs
- AuthenticationModulesSection.cs
- ComboBox.cs
- ExternalCalls.cs
- ScopelessEnumAttribute.cs
- RowBinding.cs
- cookieexception.cs
- ScriptingJsonSerializationSection.cs
- ComponentChangingEvent.cs
- TcpPortSharing.cs
- NameSpaceEvent.cs
- RefreshPropertiesAttribute.cs
- SqlCommand.cs
- CompiledWorkflowDefinitionContext.cs
- Item.cs
- OrthographicCamera.cs
- GlobalizationSection.cs
- XmlAnyElementAttributes.cs
- ExpressionParser.cs
- ArgumentException.cs
- SmtpSection.cs
- BufferBuilder.cs
- TypeLibConverter.cs
- SessionStateSection.cs
- DelayedRegex.cs
- PointHitTestResult.cs
- PropertyDescriptorGridEntry.cs
- HGlobalSafeHandle.cs
- InternalCache.cs
- NoneExcludedImageIndexConverter.cs
- RowToParametersTransformer.cs
- RoutedUICommand.cs
- TargetFrameworkAttribute.cs
- TextChange.cs
- TransformedBitmap.cs
- MetaModel.cs
- DataGridClipboardCellContent.cs
- CodeMemberProperty.cs
- ButtonFlatAdapter.cs
- ProfileParameter.cs
- SQLBinary.cs
- WebPartHelpVerb.cs
- SoapAttributeOverrides.cs
- TextBoxLine.cs
- HyperLinkColumn.cs
- FlowDocumentScrollViewer.cs
- ContentPlaceHolder.cs
- AbsoluteQuery.cs
- PictureBoxDesigner.cs
- EncodingInfo.cs
- HtmlInputFile.cs
- CalendarModeChangedEventArgs.cs
- Transactions.cs
- ExpandCollapsePattern.cs
- DocumentXPathNavigator.cs
- OdbcConnectionHandle.cs
- Int32Animation.cs
- AssemblyAssociatedContentFileAttribute.cs
- XamlDesignerSerializationManager.cs
- ResolveCriteria11.cs
- ISAPIRuntime.cs
- InternalResources.cs
- SmiMetaData.cs
- SafeCertificateStore.cs
- AsyncOperation.cs
- ListViewItemEventArgs.cs
- OleDbReferenceCollection.cs
- Transform3DCollection.cs
- OptimalTextSource.cs
- ArrayTypeMismatchException.cs
- PageStatePersister.cs
- Ray3DHitTestResult.cs
- XsltConvert.cs
- UserControl.cs
- ContextMenuAutomationPeer.cs
- NetworkCredential.cs
- NonParentingControl.cs
- PeerValidationBehavior.cs
- PersistenceTypeAttribute.cs
- LoginView.cs
- CompoundFileStorageReference.cs
- StateBag.cs
- CodeActivity.cs
- HyperLinkColumn.cs
- ConnectionStringsExpressionBuilder.cs
- RelatedView.cs
- GradientStop.cs
- ParserOptions.cs