Source code of Windows XP (NT5)
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.
 
 
 
 
 
 

93 lines
2.2 KiB

//
// Module: clock.h
//
// Description:
//
//
//@@BEGIN_MSINTERNAL
// Development Team:
// Mike McLaughlin
//
// History: Date Author Comment
//
//@@END_MSINTERNAL
//---------------------------------------------------------------------------
//
// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY
// KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
// IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR
// PURPOSE.
//
// Copyright (c) 1996-1999 Microsoft Corporation. All Rights Reserved.
//
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
// Constants and Macros
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
// Classes
//---------------------------------------------------------------------------
typedef class CClockInstance : public CInstance
{
public:
CClockInstance(
IN PPARENT_INSTANCE pParentInstance
);
static NTSTATUS
ClockDispatchCreate(
IN PDEVICE_OBJECT pDeviceObject,
IN PIRP pIrp
);
static NTSTATUS
ClockDispatchCreateKP(
PCLOCK_INSTANCE pClockInstance,
PKSCLOCK_CREATE pClockCreate
);
static NTSTATUS
ClockDispatchIoControl(
IN PDEVICE_OBJECT pDeviceObject,
IN PIRP pIrp
);
static NTSTATUS
ClockGetFunctionTable(
IN PIRP pIrp,
IN PKSPROPERTY pProperty,
IN OUT PKSCLOCK_FUNCTIONTABLE pFunctionTable
);
static LONGLONG FASTCALL
ClockGetTime(
IN PFILE_OBJECT FileObject
);
static LONGLONG FASTCALL
ClockGetPhysicalTime(
IN PFILE_OBJECT FileObject
);
static LONGLONG FASTCALL
ClockGetCorrelatedTime(
IN PFILE_OBJECT FileObject,
OUT PLONGLONG Time
);
static LONGLONG FASTCALL
ClockGetCorrelatedPhysicalTime(
IN PFILE_OBJECT FileObject,
OUT PLONGLONG Time
);
private:
KSCLOCK_FUNCTIONTABLE FunctionTable;
DefineSignature(0x494b4c43); // CLKI
} CLOCK_INSTANCE, *PCLOCK_INSTANCE;
//---------------------------------------------------------------------------