|
|
/*++
Copyright (c) 1996 Microsoft Corporation All rights reserved.
Module Name:
LsplData.cxx
Abstract:
Specifies the indicies of the local spooler counters.
Author:
Albert Ting (AlbertT) 19-Dec-1996 Based on Gopher perf counter dll.
Revision History:
--*/
#include "precomp.hxx"
#pragma hdrstop
#include "lsplctr.h"
#include "lspldata.hxx"
#ifdef OFFSETOF
#undef OFFSETOF
#endif
#define OFFSETOF(type, id) ((DWORD)(ULONG_PTR)(&(((type*)0)->id)))
LSPL_DATA_DEFINITION LsplDataDefinition = { { sizeof( LSPL_DATA_DEFINITION ) + sizeof( LSPL_COUNTER_DATA ), sizeof( LSPL_DATA_DEFINITION ),
sizeof( PERF_OBJECT_TYPE ), LSPL_COUNTER_OBJECT, 0, LSPL_COUNTER_OBJECT, 0, PERF_DETAIL_NOVICE, NUMBER_OF_LSPL_COUNTERS, 3, // Default is # jobs in queue.
0, // Place holder for number of instances.
0, { 0, 0 }, { 0, 0 } }, { sizeof( PERF_COUNTER_DEFINITION ), LSPL_TOTAL_JOBS, 0, LSPL_TOTAL_JOBS, 0, -1, PERF_DETAIL_NOVICE, PERF_COUNTER_RAWCOUNT, sizeof( LARGE_INTEGER ), OFFSETOF( LSPL_COUNTER_DATA, liTotalJobs ), }, { sizeof( PERF_COUNTER_DEFINITION ), LSPL_TOTAL_BYTES, 0, LSPL_TOTAL_BYTES, 0, -5, PERF_DETAIL_ADVANCED, PERF_COUNTER_BULK_COUNT, sizeof( LARGE_INTEGER ), OFFSETOF( LSPL_COUNTER_DATA, liTotalBytes ), }, { sizeof( PERF_COUNTER_DEFINITION ), LSPL_TOTAL_PAGES_PRINTED, 0, LSPL_TOTAL_PAGES_PRINTED, 0, -1, PERF_DETAIL_NOVICE, PERF_COUNTER_RAWCOUNT, sizeof( LARGE_INTEGER ), OFFSETOF( LSPL_COUNTER_DATA, liTotalPagesPrinted ), }, { sizeof( PERF_COUNTER_DEFINITION ), LSPL_JOBS, 0, LSPL_JOBS, 0, 0, PERF_DETAIL_NOVICE, PERF_COUNTER_RAWCOUNT, sizeof( DWORD ), OFFSETOF( LSPL_COUNTER_DATA, dwJobs ), }, { sizeof( PERF_COUNTER_DEFINITION ), LSPL_REF, 0, LSPL_REF, 0, 0, PERF_DETAIL_EXPERT, PERF_COUNTER_RAWCOUNT, sizeof( DWORD ), OFFSETOF( LSPL_COUNTER_DATA, dwRef ), }, { sizeof( PERF_COUNTER_DEFINITION ), LSPL_MAX_REF, 0, LSPL_MAX_REF, 0, 0, PERF_DETAIL_EXPERT, PERF_COUNTER_RAWCOUNT, sizeof( DWORD ), OFFSETOF( LSPL_COUNTER_DATA, dwMaxRef ), }, { sizeof( PERF_COUNTER_DEFINITION ), LSPL_SPOOLING, 0, LSPL_SPOOLING, 0, 0, PERF_DETAIL_ADVANCED, PERF_COUNTER_RAWCOUNT, sizeof( DWORD ), OFFSETOF( LSPL_COUNTER_DATA, dwSpooling ), }, { sizeof( PERF_COUNTER_DEFINITION ), LSPL_MAX_SPOOLING, 0, LSPL_MAX_SPOOLING, 0, 0, PERF_DETAIL_ADVANCED, PERF_COUNTER_RAWCOUNT, sizeof( DWORD ), OFFSETOF( LSPL_COUNTER_DATA, dwMaxSpooling ), }, { sizeof( PERF_COUNTER_DEFINITION ), LSPL_ERROR_OUT_OF_PAPER, 0, LSPL_ERROR_OUT_OF_PAPER, 0, -1, PERF_DETAIL_ADVANCED, PERF_COUNTER_RAWCOUNT, sizeof( DWORD ), OFFSETOF( LSPL_COUNTER_DATA, dwErrorOutOfPaper ), }, { sizeof( PERF_COUNTER_DEFINITION ), LSPL_ERROR_NOT_READY, 0, LSPL_ERROR_NOT_READY, 0, -1, PERF_DETAIL_ADVANCED, PERF_COUNTER_RAWCOUNT, sizeof( DWORD ), OFFSETOF( LSPL_COUNTER_DATA, dwErrorNotReady ), }, { sizeof( PERF_COUNTER_DEFINITION ), LSPL_JOB_ERROR, 0, LSPL_JOB_ERROR, 0, -1, PERF_DETAIL_ADVANCED, PERF_COUNTER_RAWCOUNT, sizeof( DWORD ), OFFSETOF( LSPL_COUNTER_DATA, dwJobError ), }, { sizeof( PERF_COUNTER_DEFINITION ), LSPL_ENUMERATE_NETWORK_PRINTERS, 0, LSPL_ENUMERATE_NETWORK_PRINTERS, 0, -1, PERF_DETAIL_WIZARD, PERF_COUNTER_RAWCOUNT, sizeof( DWORD ), OFFSETOF( LSPL_COUNTER_DATA, dwEnumerateNetworkPrinters ), }, { sizeof( PERF_COUNTER_DEFINITION ), LSPL_ADD_NET_PRINTERS, 0, LSPL_ADD_NET_PRINTERS, 0, -1, PERF_DETAIL_WIZARD, PERF_COUNTER_RAWCOUNT, sizeof( DWORD ), OFFSETOF( LSPL_COUNTER_DATA, dwAddNetPrinters ), } };
|