You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
94 lines
1.7 KiB
94 lines
1.7 KiB
/*++
|
|
|
|
Copyright (c) 1998 Microsoft Corporation
|
|
|
|
Module Name:
|
|
|
|
grovperf.h
|
|
|
|
Abstract:
|
|
|
|
SIS Groveler performance DLL primary include file
|
|
|
|
Authors:
|
|
|
|
John Douceur, 1998
|
|
|
|
Environment:
|
|
|
|
User Mode
|
|
|
|
|
|
Revision History:
|
|
|
|
|
|
--*/
|
|
|
|
#ifndef _INC_GROVPERF
|
|
|
|
#define _INC_GROVPERF
|
|
|
|
#define WIN32_LEAN_AND_MEAN 1
|
|
|
|
extern "C" DWORD CALLBACK OpenGrovelerPerformanceData(LPWSTR lpDeviceNames);
|
|
|
|
extern "C" DWORD WINAPI CloseGrovelerPerformanceData();
|
|
|
|
extern "C" DWORD WINAPI CollectGrovelerPerformanceData(
|
|
LPWSTR lpwszValue,
|
|
LPVOID *lppData,
|
|
LPDWORD lpcbBytes,
|
|
LPDWORD lpcObjectTypes);
|
|
|
|
int space_needed_for_data(
|
|
int num_partitions);
|
|
|
|
void build_part_object_info_block(
|
|
LPVOID *lppData,
|
|
int num_partitions,
|
|
int data_size);
|
|
|
|
void build_part_instance_info_block(
|
|
LPVOID *lppData,
|
|
int partition_index,
|
|
SharedDataRecord *records);
|
|
|
|
void build_total_instance_info_block(
|
|
LPVOID *lppData,
|
|
int num_partitions,
|
|
SharedDataRecord *records);
|
|
|
|
#pragma pack (8)
|
|
|
|
const int partition_name_length = 32;
|
|
const int total_name_length = 7;
|
|
|
|
struct PartitionData
|
|
{
|
|
PERF_COUNTER_BLOCK counter_block;
|
|
LARGE_INTEGER counter[num_perf_counters];
|
|
};
|
|
|
|
struct PartitionObjectInformationBlock
|
|
{
|
|
PERF_OBJECT_TYPE object_type;
|
|
PERF_COUNTER_DEFINITION definition[num_perf_counters];
|
|
};
|
|
|
|
struct PartitionInstanceInformationBlock
|
|
{
|
|
PERF_INSTANCE_DEFINITION instance_def;
|
|
_TCHAR instance_name[partition_name_length];
|
|
PartitionData partition_data;
|
|
};
|
|
|
|
struct TotalInstanceInformationBlock
|
|
{
|
|
PERF_INSTANCE_DEFINITION instance_def;
|
|
_TCHAR instance_name[total_name_length];
|
|
PartitionData partition_data;
|
|
};
|
|
|
|
#pragma pack ()
|
|
|
|
#endif /* _INC_GROVPERF */
|