ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

winperf.h
Go to the documentation of this file.
00001 #ifndef _WINPERF_H
00002 #define _WINPERF_H
00003 
00004 #ifdef __cplusplus
00005 extern "C" {
00006 #endif
00007 #ifdef _MSC_VER
00008 #pragma warning(push)
00009 #pragma warning(disable:4820)
00010 #endif
00011 #define PERF_DATA_VERSION 1
00012 #define PERF_DATA_REVISION 1
00013 #define PERF_NO_INSTANCES -1
00014 #define PERF_SIZE_DWORD 0
00015 #define PERF_SIZE_LARGE 256
00016 #define PERF_SIZE_ZERO 512
00017 #define PERF_SIZE_VARIABLE_LEN 768
00018 #define PERF_TYPE_NUMBER 0
00019 #define PERF_TYPE_COUNTER 1024
00020 #define PERF_TYPE_TEXT 2048
00021 #define PERF_TYPE_ZERO 0xC00
00022 #define PERF_NUMBER_HEX 0
00023 #define PERF_NUMBER_DECIMAL 0x10000
00024 #define PERF_NUMBER_DEC_1000 0x20000
00025 #define PERF_COUNTER_VALUE 0
00026 #define PERF_COUNTER_RATE 0x10000
00027 #define PERF_COUNTER_FRACTION 0x20000
00028 #define PERF_COUNTER_BASE 0x30000
00029 #define PERF_COUNTER_ELAPSED 0x40000
00030 #define PERF_COUNTER_QUEUELEN 0x50000
00031 #define PERF_COUNTER_HISTOGRAM 0x60000
00032 #define PERF_TEXT_UNICODE 0
00033 #define PERF_TEXT_ASCII 0x10000
00034 #define PERF_TIMER_TICK 0
00035 #define PERF_TIMER_100NS 0x100000
00036 #define PERF_OBJECT_TIMER 0x200000
00037 #define PERF_DELTA_COUNTER 0x400000
00038 #define PERF_DELTA_BASE 0x800000
00039 #define PERF_INVERSE_COUNTER 0x1000000
00040 #define PERF_MULTI_COUNTER 0x2000000
00041 #define PERF_DISPLAY_NO_SUFFIX 0
00042 #define PERF_DISPLAY_PER_SEC 0x10000000
00043 #define PERF_DISPLAY_PERCENT 0x20000000
00044 #define PERF_DISPLAY_SECONDS 0x30000000
00045 #define PERF_DISPLAY_NOSHOW 0x40000000
00046 #define PERF_COUNTER_HISTOGRAM_TYPE 0x80000000
00047 #define PERF_NO_UNIQUE_ID (-1)
00048 #define PERF_DETAIL_NOVICE 100
00049 #define PERF_DETAIL_ADVANCED 200
00050 #define PERF_DETAIL_EXPERT 300
00051 #define PERF_DETAIL_WIZARD 400
00052 #define PERF_COUNTER_COUNTER (PERF_SIZE_DWORD|PERF_TYPE_COUNTER|PERF_COUNTER_RATE|PERF_TIMER_TICK|PERF_DELTA_COUNTER|PERF_DISPLAY_PER_SEC)
00053 #define PERF_COUNTER_TIMER (PERF_SIZE_LARGE|PERF_TYPE_COUNTER|PERF_COUNTER_RATE|PERF_TIMER_TICK|PERF_DELTA_COUNTER|PERF_DISPLAY_PERCENT)
00054 #define PERF_COUNTER_QUEUELEN_TYPE (PERF_SIZE_DWORD|PERF_TYPE_COUNTER|PERF_COUNTER_QUEUELEN|PERF_TIMER_TICK|PERF_DELTA_COUNTER|PERF_DISPLAY_NO_SUFFIX)
00055 #define PERF_COUNTER_BULK_COUNT (PERF_SIZE_LARGE|PERF_TYPE_COUNTER|PERF_COUNTER_RATE|PERF_TIMER_TICK|PERF_DELTA_COUNTER|PERF_DISPLAY_PER_SEC)
00056 #define PERF_COUNTER_TEXT (PERF_SIZE_VARIABLE_LEN|PERF_TYPE_TEXT|PERF_TEXT_UNICODE|PERF_DISPLAY_NO_SUFFIX)
00057 #define PERF_COUNTER_RAWCOUNT (PERF_SIZE_DWORD|PERF_TYPE_NUMBER|PERF_NUMBER_DECIMAL|PERF_DISPLAY_NO_SUFFIX)
00058 #define PERF_COUNTER_LARGE_RAWCOUNT (PERF_SIZE_LARGE|PERF_TYPE_NUMBER|PERF_NUMBER_DECIMAL|PERF_DISPLAY_NO_SUFFIX)
00059 #define PERF_COUNTER_RAWCOUNT_HEX (PERF_SIZE_DWORD|PERF_TYPE_NUMBER|PERF_NUMBER_HEX|PERF_DISPLAY_NO_SUFFIX)
00060 #define PERF_COUNTER_LARGE_RAWCOUNT_HEX (PERF_SIZE_LARGE|PERF_TYPE_NUMBER|PERF_NUMBER_HEX|PERF_DISPLAY_NO_SUFFIX)
00061 #define PERF_SAMPLE_FRACTION (PERF_SIZE_DWORD|PERF_TYPE_COUNTER|PERF_COUNTER_FRACTION|PERF_DELTA_COUNTER|PERF_DELTA_BASE|PERF_DISPLAY_PERCENT)
00062 #define PERF_SAMPLE_COUNTER (PERF_SIZE_DWORD|PERF_TYPE_COUNTER|PERF_COUNTER_RATE|PERF_TIMER_TICK|PERF_DELTA_COUNTER|PERF_DISPLAY_NO_SUFFIX)
00063 #define PERF_COUNTER_NODATA (PERF_SIZE_ZERO|PERF_DISPLAY_NOSHOW)
00064 #define PERF_COUNTER_TIMER_INV (PERF_SIZE_LARGE|PERF_TYPE_COUNTER|PERF_COUNTER_RATE|PERF_TIMER_TICK|PERF_DELTA_COUNTER|PERF_INVERSE_COUNTER|PERF_DISPLAY_PERCENT)
00065 #define PERF_SAMPLE_BASE (PERF_SIZE_DWORD|PERF_TYPE_COUNTER|PERF_COUNTER_BASE|PERF_DISPLAY_NOSHOW|1)
00066 #define PERF_AVERAGE_TIMER (PERF_SIZE_DWORD|PERF_TYPE_COUNTER|PERF_COUNTER_FRACTION|PERF_DISPLAY_SECONDS)
00067 #define PERF_AVERAGE_BASE (PERF_SIZE_DWORD|PERF_TYPE_COUNTER|PERF_COUNTER_BASE|PERF_DISPLAY_NOSHOW|2)
00068 #define PERF_AVERAGE_BULK (PERF_SIZE_LARGE|PERF_TYPE_COUNTER|PERF_COUNTER_FRACTION|PERF_DISPLAY_NOSHOW)
00069 #define PERF_100NSEC_TIMER (PERF_SIZE_LARGE|PERF_TYPE_COUNTER|PERF_COUNTER_RATE|PERF_TIMER_100NS|PERF_DELTA_COUNTER|PERF_DISPLAY_PERCENT)
00070 #define PERF_100NSEC_TIMER_INV (PERF_SIZE_LARGE|PERF_TYPE_COUNTER|PERF_COUNTER_RATE|PERF_TIMER_100NS|PERF_DELTA_COUNTER|PERF_INVERSE_COUNTER|PERF_DISPLAY_PERCENT)
00071 #define PERF_COUNTER_MULTI_TIMER (PERF_SIZE_LARGE|PERF_TYPE_COUNTER|PERF_COUNTER_RATE|PERF_DELTA_COUNTER|PERF_TIMER_TICK|PERF_MULTI_COUNTER|PERF_DISPLAY_PERCENT)
00072 #define PERF_COUNTER_MULTI_TIMER_INV (PERF_SIZE_LARGE|PERF_TYPE_COUNTER|PERF_COUNTER_RATE|PERF_DELTA_COUNTER|PERF_MULTI_COUNTER|PERF_TIMER_TICK|PERF_INVERSE_COUNTER|PERF_DISPLAY_PERCENT)
00073 #define PERF_COUNTER_MULTI_BASE (PERF_SIZE_LARGE|PERF_TYPE_COUNTER|PERF_COUNTER_BASE|PERF_MULTI_COUNTER|PERF_DISPLAY_NOSHOW)
00074 #define PERF_100NSEC_MULTI_TIMER (PERF_SIZE_LARGE|PERF_TYPE_COUNTER|PERF_DELTA_COUNTER|PERF_COUNTER_RATE|PERF_TIMER_100NS|PERF_MULTI_COUNTER|PERF_DISPLAY_PERCENT)
00075 #define PERF_100NSEC_MULTI_TIMER_INV (PERF_SIZE_LARGE|PERF_TYPE_COUNTER|PERF_DELTA_COUNTER|PERF_COUNTER_RATE|PERF_TIMER_100NS|PERF_MULTI_COUNTER|PERF_INVERSE_COUNTER|PERF_DISPLAY_PERCENT)
00076 #define PERF_RAW_FRACTION (PERF_SIZE_DWORD|PERF_TYPE_COUNTER|PERF_COUNTER_FRACTION|PERF_DISPLAY_PERCENT)
00077 #define PERF_RAW_BASE (PERF_SIZE_DWORD|PERF_TYPE_COUNTER|PERF_COUNTER_BASE|PERF_DISPLAY_NOSHOW|3)
00078 #define PERF_ELAPSED_TIME (PERF_SIZE_LARGE|PERF_TYPE_COUNTER|PERF_COUNTER_ELAPSED|PERF_OBJECT_TIMER|PERF_DISPLAY_SECONDS)
00079 typedef struct _PERF_DATA_BLOCK {
00080     WCHAR Signature[4];
00081     DWORD LittleEndian;
00082     DWORD Version;
00083     DWORD Revision;
00084     DWORD TotalByteLength;
00085     DWORD HeaderLength;
00086     DWORD NumObjectTypes;
00087     LONG DefaultObject;
00088     SYSTEMTIME SystemTime;
00089     LARGE_INTEGER PerfTime;
00090     LARGE_INTEGER PerfFreq;
00091     LARGE_INTEGER PerfTime100nSec;
00092     DWORD SystemNameLength;
00093     DWORD SystemNameOffset;
00094 } PERF_DATA_BLOCK, *PPERF_DATA_BLOCK;
00095 typedef struct _PERF_OBJECT_TYPE {
00096     DWORD TotalByteLength;
00097     DWORD DefinitionLength;
00098     DWORD HeaderLength;
00099     DWORD ObjectNameTitleIndex;
00100     LPWSTR ObjectNameTitle;
00101     DWORD ObjectHelpTitleIndex;
00102     LPWSTR ObjectHelpTitle;
00103     DWORD DetailLevel;
00104     DWORD NumCounters;
00105     LONG DefaultCounter;
00106     LONG NumInstances;
00107     DWORD CodePage;
00108     LARGE_INTEGER PerfTime;
00109     LARGE_INTEGER PerfFreq;
00110 } PERF_OBJECT_TYPE, *PPERF_OBJECT_TYPE;
00111 typedef struct _PERF_COUNTER_DEFINITION {
00112     DWORD ByteLength;
00113     DWORD CounterNameTitleIndex;
00114     LPWSTR CounterNameTitle;
00115     DWORD CounterHelpTitleIndex;
00116     LPWSTR CounterHelpTitle;
00117     LONG DefaultScale;
00118     DWORD DetailLevel;
00119     DWORD CounterType;
00120     DWORD CounterSize;
00121     DWORD CounterOffset;
00122 } PERF_COUNTER_DEFINITION,*PPERF_COUNTER_DEFINITION;
00123 typedef struct _PERF_INSTANCE_DEFINITION {
00124     DWORD ByteLength;
00125     DWORD ParentObjectTitleIndex;
00126     DWORD ParentObjectInstance;
00127     LONG UniqueID;
00128     DWORD NameOffset;
00129     DWORD NameLength;
00130 } PERF_INSTANCE_DEFINITION,*PPERF_INSTANCE_DEFINITION;
00131 typedef struct _PERF_COUNTER_BLOCK {
00132     DWORD ByteLength;
00133 } PERF_COUNTER_BLOCK, *PPERF_COUNTER_BLOCK;
00134 typedef DWORD(CALLBACK PM_OPEN_PROC)(LPWSTR);
00135 typedef DWORD(CALLBACK PM_COLLECT_PROC)(LPWSTR,PVOID*,PDWORD,PDWORD);
00136 typedef DWORD(CALLBACK PM_CLOSE_PROC)(void);
00137 #ifdef _MSC_VER
00138 #pragma warning(pop)
00139 #endif
00140 #ifdef __cplusplus
00141 }
00142 #endif
00143 #endif

Generated on Sat May 26 2012 04:31:38 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.