// KomCoreIoctl.h
//
// Generated by C DriverWizard 3.2.0 (Build 2485)
// Requires DDK Only
// File created on 11/15/2007
//

// GUID definition are required to be outside of header inclusion pragma to avoid
// error during precompiled headers.
//

#ifndef __INTRFACE_H__
#define __INTRFACE_H__

#define FILE_DEVICE_KOMCORE  0x8000

// Define Interface reference/dereference routines for
// Interfaces exported by IRP_MN_QUERY_INTERFACE

#define KOMCORE_IOCTL(index) \
    CTL_CODE(FILE_DEVICE_KOMCORE, index, METHOD_BUFFERED, FILE_READ_DATA)

#define IOCTL_KOMCORE_GET_INFO \
    CTL_CODE(FILE_DEVICE_KOMCORE, 0x800, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define IOCTL_KOMCORE_GET_TEMP \
    CTL_CODE(FILE_DEVICE_KOMCORE, 0x801, METHOD_BUFFERED, FILE_ANY_ACCESS)


#define TEMP_INVALID 0xffffffff

/* Structure definitions */

typedef struct _KomCoreInfo		//returned by IOCTL_KOMCORE_GET_INFO
{
	UCHAR maxCores;		//maximum number of cores per physical processor in the system
	UCHAR maxLPC;		//maximum number of logical processors (hyperthreaded) per core
	UCHAR currCoreId;	//current core ID - unique in the system
	UCHAR currCoreTempResol;	//current core temperature sensor resolution in C degrees
}KomCoreInfo;


#endif // __INTRFACE_H__
