Gray C++ Libraries  0.0.2
A set of C++ libraries for MSVC, GNU on Windows, WinCE, Linux
GrayKernel::CKeDeviceExt Struct Reference

#include <cKernel.h>

Public Member Functions

void InitDeviceExt (USHORT uSize, PDEVICE_OBJECT pDeviceObj)
 
bool IsDeviceValid () const
 
bool IsDeviceValid (IN PDEVICE_OBJECT _pDeviceObject) const
 
void DeleteDevice ()
 
CKeDeviceObjectget_DeviceObject () const
 
CKeDeviceObjectAttachToDeviceStack (PDEVICE_OBJECT pDeviceObjectAttach)
 
void Flag_Init_Clear ()
 

Static Public Member Functions

static CKeDeviceExtGetDeviceExt (PDEVICE_OBJECT pDeviceObj)
 

Static Public Attributes

static const ULONG CKeDeviceExt_SIGNATURE = 0x1FE04322
 

Detailed Description

Common base for devices.

Note
oddly similar to _DEVOBJ_EXTENSION but DeviceObjectExtension is not the same as DeviceExtension!? MS has a class called CDeviceObject in MSJ ??

Member Function Documentation

◆ AttachToDeviceStack()

CKeDeviceObject* GrayKernel::CKeDeviceExt::AttachToDeviceStack ( PDEVICE_OBJECT  pDeviceObjectAttach)
inline
Note
IoAttachDeviceToDeviceStackSafe() would solve the theoretic race condition here. Must call IoDetachDevice() later

◆ DeleteDevice()

void GrayKernel::CKeDeviceExt::DeleteDevice ( )
inline

◆ Flag_Init_Clear()

void GrayKernel::CKeDeviceExt::Flag_Init_Clear ( )
inline

We are finished with the Init.

◆ get_DeviceObject()

CKeDeviceObject* GrayKernel::CKeDeviceExt::get_DeviceObject ( ) const
inline

◆ GetDeviceExt()

static CKeDeviceExt* GrayKernel::CKeDeviceExt::GetDeviceExt ( PDEVICE_OBJECT  pDeviceObj)
inlinestatic

◆ InitDeviceExt()

void GrayKernel::CKeDeviceExt::InitDeviceExt ( USHORT  uSize,
PDEVICE_OBJECT  pDeviceObj 
)
inline

◆ IsDeviceValid() [1/2]

bool GrayKernel::CKeDeviceExt::IsDeviceValid ( ) const
inline

◆ IsDeviceValid() [2/2]

bool GrayKernel::CKeDeviceExt::IsDeviceValid ( IN PDEVICE_OBJECT  _pDeviceObject) const
inline

Member Data Documentation

◆ CKeDeviceExt_SIGNATURE

const ULONG GrayKernel::CKeDeviceExt::CKeDeviceExt_SIGNATURE = 0x1FE04322
static

The documentation for this struct was generated from the following file: