mirror of
https://github.com/reactos/reactos.git
synced 2025-01-05 22:12:46 +00:00
1f377076d7
Not all files are included, but these are necessary to compile cdrom driver. So far it can only be statically linked with drivers, a proper implementation requires wdfldr helper driver
214 lines
4.2 KiB
C++
214 lines
4.2 KiB
C++
/*++
|
|
|
|
Copyright (c) Microsoft Corporation. All rights reserved.
|
|
|
|
Module Name:
|
|
|
|
Fx.hpp
|
|
|
|
Abstract:
|
|
|
|
This is the main driver framework include file.
|
|
|
|
Author:
|
|
WDF team
|
|
|
|
Environment:
|
|
|
|
kernel mode only
|
|
|
|
Revision History:
|
|
|
|
--*/
|
|
|
|
#ifndef _FX_H
|
|
#define _FX_H
|
|
|
|
extern "C" {
|
|
#include "mx.h"
|
|
}
|
|
|
|
#include "fxmacros.hpp"
|
|
|
|
extern "C" {
|
|
#include "wdf.h"
|
|
// #include "wdmsec.h"
|
|
#include "wdmguid.h"
|
|
|
|
// #include "wdfdevicepri.h"
|
|
// #include "wdfiotargetpri.h"
|
|
#include "wdfcx.h"
|
|
#include "wdfldr.h"
|
|
|
|
#include <fxdynamicswrapper.h>
|
|
|
|
#include "wdf10.h"
|
|
#include "wdf11.h"
|
|
#include "wdf15.h"
|
|
#include "wdf17.h"
|
|
#include "wdf19.h"
|
|
#include "wdf111.h"
|
|
#include "wdf113.h"
|
|
#include "wdf115.h"
|
|
}
|
|
|
|
#define KMDF_ONLY_CODE_PATH_ASSERT()
|
|
|
|
// Integer overflow functions
|
|
#include "ntintsafe.h"
|
|
|
|
#include "fxforward.hpp"
|
|
|
|
//KMDF defines for shared type names
|
|
#include "fxtypedefskm.hpp"
|
|
|
|
// #include "fxwmicompat.h"
|
|
// #include "fxtrace.h"
|
|
#if defined(EVENT_TRACING)
|
|
#include "fxwmicompat.h"
|
|
#include "fxtrace.h"
|
|
#else
|
|
#include "dbgtrace.h"
|
|
#endif // EVENT_TRACING
|
|
#include "fxtypes.h"
|
|
#include "fxrequestcontexttypes.h"
|
|
#include "fxpool.h"
|
|
#include "fxglobalskm.h"
|
|
#include "fxpoolinlines.hpp"
|
|
#include "fxverifier.h"
|
|
#include "fxverifierkm.h"
|
|
#include "fxmdl.h"
|
|
#include "fxprobeandlock.h"
|
|
|
|
#include "fxperftracekm.hpp"
|
|
// #include "DriverFrameworks-KernelMode-KmEvents.h"
|
|
|
|
#include <ntstrsafe.h>
|
|
|
|
#include "fxstump.hpp"
|
|
|
|
#include "fxrequestbuffer.hpp"
|
|
|
|
#include "fxtagtracker.hpp"
|
|
|
|
// internal locks
|
|
#include "fxverifierlock.hpp"
|
|
#include "fxlock.hpp"
|
|
|
|
// base objects
|
|
#include "fxobject.hpp"
|
|
#include "fxpagedobject.hpp"
|
|
#include "fxnonpagedobject.hpp"
|
|
|
|
#include "fxhandle.h"
|
|
|
|
// external locks
|
|
#include "fxwaitlock.hpp"
|
|
#include "fxspinlock.hpp"
|
|
|
|
// utitilty classes and functions
|
|
#include "fxtransactionedlist.hpp"
|
|
#include "fxrelateddevicelist.hpp"
|
|
#include "fxdisposelist.hpp"
|
|
#include "fxcollection.hpp"
|
|
#include "stringutil.hpp"
|
|
|
|
// abstract classes
|
|
#include "ifxhascallbacks.hpp"
|
|
|
|
// callback delegation and locking
|
|
#include "fxsystemthread.hpp"
|
|
#include "fxsystemworkitem.hpp"
|
|
#include "fxcallbacklock.hpp"
|
|
#include "fxcallbackspinlock.hpp"
|
|
#include "fxcallbackmutexlock.hpp"
|
|
#include "fxcallback.hpp"
|
|
#include "fxsystemthread.hpp"
|
|
|
|
#include "ifxmemory.hpp"
|
|
#include "fxlookasidelist.hpp"
|
|
#include "fxnpagedlookasidelist.hpp"
|
|
#include "fxpagedlookasidelist.hpp"
|
|
#include "fxmemoryobject.hpp"
|
|
#include "fxmemorybuffer.hpp"
|
|
#include "fxmemorybufferfrompool.hpp"
|
|
#include "fxmemorybufferpreallocated.hpp"
|
|
#include "fxmemorybufferfromlookaside.hpp"
|
|
#include "fxrequestmemory.hpp"
|
|
#include "fxregkey.hpp"
|
|
#include "fxautoregistry.hpp"
|
|
#include "fxautostring.hpp"
|
|
#include "fxstring.hpp"
|
|
|
|
#include "fxvalidatefunctions.hpp"
|
|
#include "fxrequestvalidatefunctions.hpp"
|
|
|
|
#include "fxresource.hpp"
|
|
#include "fxrelateddevice.hpp"
|
|
#include "fxdeviceinterface.hpp"
|
|
#include "fxqueryinterface.hpp"
|
|
#include "fxdevicetext.hpp"
|
|
|
|
#include "fxirp.hpp"
|
|
#include "fxdriver.hpp"
|
|
|
|
// generic package interface
|
|
#include "fxpackage.hpp"
|
|
#include "fxpkggeneral.hpp"
|
|
#include "fxdefaultirphandler.hpp"
|
|
#include "fxpkgpnp.hpp"
|
|
#include "fxwatchdog.hpp"
|
|
|
|
// Device support
|
|
#include "fxchildlist.hpp"
|
|
#include "fxcxdeviceinfo.hpp"
|
|
#include "fxdevice.hpp"
|
|
|
|
#include "fxpkgio.hpp"
|
|
|
|
#include "fxdevicetomxinterface.hpp"
|
|
|
|
#include "fxirpqueue.hpp"
|
|
#include "fxrequestcontext.hpp"
|
|
#include "fxrequestcallbacks.hpp"
|
|
#include "fxrequestbase.hpp"
|
|
#include "fxrequest.hpp"
|
|
#include "fxsyncrequest.hpp"
|
|
|
|
// specialized irp handlers (ie packages)
|
|
#include "fxpkgfdo.hpp"
|
|
#include "fxpkgpdo.hpp"
|
|
#include "fxwmiirphandler.hpp"
|
|
#include "fxwmiprovider.hpp"
|
|
#include "fxwmiinstance.hpp"
|
|
|
|
// queus for read, write, (internal) IOCTL
|
|
#include "fxioqueue.hpp"
|
|
#include "fxfileobject.hpp"
|
|
#include "fxirppreprocessinfo.hpp"
|
|
#include "fxirpdynamicdispatchinfo.hpp"
|
|
|
|
#include "fxdpc.hpp"
|
|
#include "fxworkitem.hpp"
|
|
#include "fxtimer.hpp"
|
|
#include "fxinterruptkm.hpp"
|
|
|
|
// IO targets (device lower edge interface)
|
|
#include "fxiotarget.hpp"
|
|
#include "fxiotargetremote.hpp"
|
|
#include "fxiotargetself.hpp"
|
|
|
|
#include "fxusbdevice.hpp"
|
|
#include "fxusbinterface.hpp"
|
|
#include "fxusbpipe.hpp"
|
|
|
|
// DMA support
|
|
#include "fxdmaenabler.hpp"
|
|
#include "fxdmatransaction.hpp"
|
|
#include "fxcommonbuffer.hpp"
|
|
|
|
// Triage info.
|
|
// #include "wdftriage.h"
|
|
|
|
#include "fxtelemetry.hpp"
|
|
#endif // _FX_H
|