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
- Version.cs
- BindingWorker.cs
- _WebProxyDataBuilder.cs
- ContainerSelectorGlyph.cs
- ListChunk.cs
- DbConnectionPoolOptions.cs
- _AutoWebProxyScriptHelper.cs
- PermissionSetTriple.cs
- CryptoKeySecurity.cs
- ComponentChangingEvent.cs
- UidManager.cs
- BadImageFormatException.cs
- QilParameter.cs
- EmptyStringExpandableObjectConverter.cs
- DataBindingValueUIHandler.cs
- ProfileGroupSettingsCollection.cs
- XmlEncoding.cs
- MergeLocalizationDirectives.cs
- COM2PropertyDescriptor.cs
- Adorner.cs
- EditorBrowsableAttribute.cs
- base64Transforms.cs
- EnumerableCollectionView.cs
- HTMLTextWriter.cs
- MarkupObject.cs
- LockedHandleGlyph.cs
- CodeAttachEventStatement.cs
- ObjectContextServiceProvider.cs
- SQLSingle.cs
- ExpressionBindings.cs
- TextModifierScope.cs
- CommonDialog.cs
- RTLAwareMessageBox.cs
- UInt16Converter.cs
- CompleteWizardStep.cs
- AsyncPostBackErrorEventArgs.cs
- MergeExecutor.cs
- StorageMappingItemLoader.cs
- RowToParametersTransformer.cs
- SimpleBitVector32.cs
- EncryptedPackageFilter.cs
- ConfigXmlReader.cs
- ScalarType.cs
- VariableReference.cs
- SubMenuStyle.cs
- SrgsItemList.cs
- LookupNode.cs
- QueryPageSettingsEventArgs.cs
- COAUTHINFO.cs
- SiteMapDataSource.cs
- InstalledFontCollection.cs
- MethodBody.cs
- Image.cs
- ActivityBuilderXamlWriter.cs
- InternalTransaction.cs
- InfoCardSymmetricAlgorithm.cs
- SHA256.cs
- WsdlWriter.cs
- ModifierKeysValueSerializer.cs
- VisualCollection.cs
- UrlPath.cs
- ObjectFullSpanRewriter.cs
- SocketPermission.cs
- RuntimeWrappedException.cs
- SqlMethodTransformer.cs
- AvtEvent.cs
- SrgsRuleRef.cs
- HwndSourceParameters.cs
- PreviewControlDesigner.cs
- MetaModel.cs
- SdlChannelSink.cs
- DataServiceResponse.cs
- FileDetails.cs
- DataGridCell.cs
- hresults.cs
- FixedSOMTableRow.cs
- ListViewItemCollectionEditor.cs
- Triplet.cs
- ImageMapEventArgs.cs
- SafeHandles.cs
- HtmlTable.cs
- WindowsToolbarItemAsMenuItem.cs
- PerformanceCounterPermissionEntryCollection.cs
- MimeMapping.cs
- ConnectionInterfaceCollection.cs
- PropertyEmitter.cs
- DockPatternIdentifiers.cs
- ComboBoxAutomationPeer.cs
- XmlUtil.cs
- SqlWebEventProvider.cs
- GridItemPattern.cs
- MsmqReceiveHelper.cs
- SecurityResources.cs
- RelationshipConverter.cs
- FixedSOMGroup.cs
- DbParameterCollection.cs
- PropertyEmitterBase.cs
- NamespaceEmitter.cs
- CornerRadius.cs
- Funcletizer.cs