/*++ Copyright (c) 1995 Microsoft Corporation Module Name: item.h Abstract: Item header file Author: 08-Apr-1998 mraghu Revision History: --*/ // // Temporary structure used. Should be using MOF types // #define GUID_TYPE_HEADER L"Header" #define GUID_TYPE_UNKNOWN L"Unknown" #define GUID_TYPE_DEFAULT L"Default" #define EVENT_TYPE_DEFAULT ((CHAR)(-1)) #define EVENT_LEVEL_DEFAULT ((CHAR)(-1)) #define EVENT_VERSION_DEFAULT ((SHORT)(-1)) #define STR_ItemChar L"ItemChar" #define STR_ItemCharHidden L"ItemCharHidden" #define STR_ItemWChar L"ItemWChar" #define STR_ItemUChar L"ItemUChar" #define STR_ItemCharShort L"ItemCharShort" #define STR_ItemCharSign L"ItemCharSign" #define STR_ItemShort L"ItemShort" #define STR_ItemUShort L"ItemUShort" #define STR_ItemLong L"ItemLong" #define STR_ItemULong L"ItemULong" #define STR_ItemULongX L"ItemULongX" #define STR_ItemLongLong L"ItemLongLong" #define STR_ItemULongLong L"ItemULongLong" #define STR_ItemString L"ItemString" #define STR_ItemWString L"ItemWString" #define STR_ItemRString L"ItemRString" #define STR_ItemRWString L"ItemRWString" #define STR_ItemPString L"ItemPString" #define STR_ItemPWString L"ItemPWString" #define STR_ItemDSString L"ItemDSString" #define STR_ItemDSWString L"ItemDSWString" #define STR_ItemMLString L"ItemMLString" #define STR_ItemSid L"ItemSid" #define STR_ItemChar4 L"ItemChar4" #define STR_ItemIPAddr L"ItemIPAddr" #define STR_ItemTDIAddr L"ItemTDIAddr" #define STR_ItemPort L"ItemPort" #define STR_ItemNWString L"ItemNWString" #define STR_ItemPtr L"ItemPtr" #define STR_ItemGuid L"ItemGuid" #define STR_ItemVariant L"ItemVariant" #define STR_ItemBool L"ItemBool" #define STR_ItemOptArgs L"ItemOptArgs" #define STR_ItemCPUTime L"ItemCPUTime" #define STR_ItemSizeT L"ItemSizeT" // // The following are the data types supported by // WMI event trace parsing tools. New data types must be // added to this file and the parsing code for that type // must be added in the DumpEvent routine. // typedef enum _ITEM_TYPE { ItemChar, ItemCharHidden, ItemWChar, ItemUChar, ItemCharShort, ItemCharSign, ItemShort, ItemUShort, ItemLong, ItemULong, ItemULongX, ItemLongLong, ItemULongLong, ItemString, ItemWString, ItemRString, ItemRWString, ItemPString, ItemPWString, ItemDSString, ItemDSWString, ItemSid, ItemChar4, ItemIPAddr, ItemTDIAddr, ItemPort, ItemMLString, ItemNWString, // Non-null terminated Wide Char String ItemPtr, ItemGuid, ItemVariant, ItemBool, ItemOptArgs, ItemCPUTime, ItemSizeT, ItemUnknown } ITEM_TYPE; #define VALUETYPE_INDEX 1 #define VALUETYPE_FLAG 2 typedef struct _VALUEMAP { LIST_ENTRY Entry; DWORD dwValueType; SAFEARRAY* saValueMap; SAFEARRAY* saValues; } VALUEMAP, *PVALUEMAP; typedef struct _ITEM_DESC { LIST_ENTRY Entry; ULONG DataSize; ULONG ArraySize; ITEM_TYPE ItemType; PVALUEMAP pValueMap; PWCHAR strDescription; } ITEM_DESC, *PITEM_DESC;