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
- ConsumerConnectionPoint.cs
- ClientBuildManager.cs
- Identity.cs
- ObjectConverter.cs
- ConfigsHelper.cs
- QilLoop.cs
- XmlNodeList.cs
- XmlWrappingReader.cs
- InfoCardBinaryReader.cs
- DirtyTextRange.cs
- CodeStatement.cs
- XmlSerializationWriter.cs
- IPGlobalProperties.cs
- UrlMappingsSection.cs
- StackOverflowException.cs
- BrowserCapabilitiesCompiler.cs
- GenericEnumerator.cs
- _SpnDictionary.cs
- Constraint.cs
- DeflateStreamAsyncResult.cs
- WebResourceAttribute.cs
- HostUtils.cs
- GeometryGroup.cs
- GestureRecognizer.cs
- CollectionViewGroupInternal.cs
- SqlCommandBuilder.cs
- QueryReaderSettings.cs
- XmlCharCheckingWriter.cs
- CompositionAdorner.cs
- ImageBrush.cs
- bidPrivateBase.cs
- ArrangedElementCollection.cs
- PathFigureCollection.cs
- DbParameterCollectionHelper.cs
- CurrentChangedEventManager.cs
- EpmSyndicationContentSerializer.cs
- LoginName.cs
- WebPartVerbsEventArgs.cs
- TryCatchDesigner.xaml.cs
- TextLine.cs
- SimpleExpression.cs
- TextParentUndoUnit.cs
- HttpUnhandledOperationInvoker.cs
- ProtocolsConfigurationEntry.cs
- SingleAnimationUsingKeyFrames.cs
- TokenFactoryFactory.cs
- QueryOutputWriter.cs
- AsymmetricKeyExchangeFormatter.cs
- UpdateTranslator.cs
- NTAccount.cs
- GeneralTransform3DTo2DTo3D.cs
- ForeignConstraint.cs
- FindCriteriaElement.cs
- PreProcessor.cs
- MyContact.cs
- PrefixQName.cs
- externdll.cs
- ImageListUtils.cs
- ControlIdConverter.cs
- MouseGesture.cs
- GeneralTransform3D.cs
- InheritedPropertyChangedEventArgs.cs
- Size3DValueSerializer.cs
- D3DImage.cs
- BigInt.cs
- LogReservationCollection.cs
- SqlDataSourceSelectingEventArgs.cs
- Ray3DHitTestResult.cs
- AlternateView.cs
- SqlMethods.cs
- SmiEventSink_Default.cs
- TriggerCollection.cs
- ArgumentValueSerializer.cs
- XmlAttribute.cs
- SslStreamSecurityBindingElement.cs
- METAHEADER.cs
- ProxyHwnd.cs
- TagPrefixCollection.cs
- FixedPageProcessor.cs
- CombinedGeometry.cs
- XmlSortKey.cs
- RemoveStoryboard.cs
- InstanceOwner.cs
- XPathAncestorIterator.cs
- ToolStripArrowRenderEventArgs.cs
- WCFModelStrings.Designer.cs
- EdmToObjectNamespaceMap.cs
- Thickness.cs
- ClientTargetSection.cs
- WindowsStartMenu.cs
- DataObjectPastingEventArgs.cs
- GPPOINTF.cs
- CornerRadius.cs
- SoapAttributeOverrides.cs
- ArglessEventHandlerProxy.cs
- DataBindingHandlerAttribute.cs
- ReplyAdapterChannelListener.cs
- AnimationTimeline.cs
- ThemeDictionaryExtension.cs
- AssemblyInfo.cs