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
- WebException.cs
- SvcMapFileLoader.cs
- TreeNode.cs
- WebPartTransformer.cs
- AuthorizationRule.cs
- AnnotationResource.cs
- DrawingBrush.cs
- translator.cs
- SaveFileDialog.cs
- XmlQualifiedNameTest.cs
- BamlStream.cs
- MsdtcWrapper.cs
- SqlProviderServices.cs
- ComponentEditorPage.cs
- DesignerVerb.cs
- FileInfo.cs
- Image.cs
- Dynamic.cs
- WebDisplayNameAttribute.cs
- PlatformCulture.cs
- SimpleWebHandlerParser.cs
- InputScopeAttribute.cs
- FillErrorEventArgs.cs
- EntitySet.cs
- CodeTypeDelegate.cs
- XmlIlTypeHelper.cs
- BooleanFunctions.cs
- TextRunTypographyProperties.cs
- ResourceAttributes.cs
- HtmlInputSubmit.cs
- SqlTypesSchemaImporter.cs
- ToolStripLabel.cs
- TextOnlyOutput.cs
- CollectionChangeEventArgs.cs
- PngBitmapDecoder.cs
- ContractSearchPattern.cs
- ItemChangedEventArgs.cs
- IOException.cs
- EntityKey.cs
- HtmlUtf8RawTextWriter.cs
- XmlAnyElementAttribute.cs
- GetPageCompletedEventArgs.cs
- UserCancellationException.cs
- MaskDescriptor.cs
- InputGestureCollection.cs
- DesignerSerializationOptionsAttribute.cs
- WebPartAuthorizationEventArgs.cs
- ModelUtilities.cs
- _FixedSizeReader.cs
- CharConverter.cs
- FileSecurity.cs
- Rules.cs
- EventLogReader.cs
- DataBindingExpressionBuilder.cs
- TypeDescriptionProvider.cs
- StyleSelector.cs
- XmlDeclaration.cs
- ChannelServices.cs
- ThemeDictionaryExtension.cs
- KeyConverter.cs
- DiagnosticTraceSource.cs
- NeutralResourcesLanguageAttribute.cs
- WsdlBuildProvider.cs
- DodSequenceMerge.cs
- BitmapMetadataBlob.cs
- StyleTypedPropertyAttribute.cs
- FixedPosition.cs
- MemoryStream.cs
- SplitContainer.cs
- FontStretchConverter.cs
- UnmanagedMemoryStream.cs
- VisualStyleInformation.cs
- TargetPerspective.cs
- PeerTransportListenAddressConverter.cs
- DataViewSetting.cs
- WaitForChangedResult.cs
- RangeBaseAutomationPeer.cs
- ProcessModelSection.cs
- TextCompositionEventArgs.cs
- TableLayoutSettings.cs
- TreeNode.cs
- BaseCollection.cs
- PropertyEntry.cs
- FixedFlowMap.cs
- DefaultWorkflowLoaderService.cs
- DllHostedComPlusServiceHost.cs
- BezierSegment.cs
- ExceptionUtil.cs
- Part.cs
- DeviceSpecific.cs
- Converter.cs
- TypeSystem.cs
- UxThemeWrapper.cs
- ReadWriteObjectLock.cs
- Lease.cs
- TemplateField.cs
- SQLDateTime.cs
- BaseCodePageEncoding.cs
- TypedTableBaseExtensions.cs
- ToolStripItemTextRenderEventArgs.cs