reactos/sdk/lib/drivers/wdf/shared/inc/private/common/fxcxdeviceinit.hpp

96 lines
1.5 KiB
C++
Raw Normal View History

/*++
Copyright (c) Microsoft Corporation
Module Name:
FxCxDeviceInit.hpp
Abstract:
Author:
Environment:
kernel mode only
Revision History:
--*/
#ifndef __FXCXDEVICEINIT_HPP__
#define __FXCXDEVICEINIT_HPP__
//
// Holds class extension file object configuration.
//
struct CxFileObjectInit {
WDF_FILEOBJECT_CLASS Class;
WDF_OBJECT_ATTRIBUTES Attributes;
WDFCX_FILEOBJECT_CONFIG Callbacks;
WDF_TRI_STATE AutoForwardCleanupClose;
BOOLEAN Set;
};
//
// The typedef for a pointer to this structure is exposed in wdfdevice.h
//
struct WDFCXDEVICE_INIT : public FxStump {
public:
WDFCXDEVICE_INIT();
~WDFCXDEVICE_INIT();
static
_Must_inspect_result_
PWDFCXDEVICE_INIT
_AllocateCxDeviceInit(
__in PWDFDEVICE_INIT DeviceInit
);
public:
//
// Class extension init list entry.
//
LIST_ENTRY ListEntry;
//
// Client and Cx's globals.
//
PFX_DRIVER_GLOBALS ClientDriverGlobals;
PFX_DRIVER_GLOBALS CxDriverGlobals;
//
// Pre-proc info.
//
FxIrpPreprocessInfo* PreprocessInfo;
//
// In caller context info.
//
PFN_WDF_IO_IN_CALLER_CONTEXT IoInCallerContextCallback;
//
// Request attributes info.
//
WDF_OBJECT_ATTRIBUTES RequestAttributes;
//
// File object info.
//
CxFileObjectInit FileObject;
//
// Set during the device create.
//
FxCxDeviceInfo* CxDeviceInfo;
};
#endif // __FXCXDEVICEINIT_HPP__