2021-03-16 18:36:12 +00:00
|
|
|
#ifndef FORTDEV_H
|
|
|
|
#define FORTDEV_H
|
|
|
|
|
|
|
|
#include "fortdrv.h"
|
|
|
|
|
|
|
|
#include "fortbuf.h"
|
|
|
|
#include "fortcnf.h"
|
|
|
|
#include "fortpkt.h"
|
2022-01-07 09:12:12 +00:00
|
|
|
#include "fortps.h"
|
2021-03-16 18:36:12 +00:00
|
|
|
#include "fortstat.h"
|
|
|
|
#include "forttmr.h"
|
|
|
|
#include "fortwrk.h"
|
|
|
|
|
|
|
|
typedef struct fort_device
|
|
|
|
{
|
2023-04-12 11:56:10 +00:00
|
|
|
PDEVICE_OBJECT device;
|
2022-05-29 09:19:13 +00:00
|
|
|
|
2021-03-16 18:36:12 +00:00
|
|
|
PCALLBACK_OBJECT power_cb_obj;
|
|
|
|
PVOID power_cb_reg;
|
|
|
|
|
|
|
|
PCALLBACK_OBJECT systime_cb_obj;
|
|
|
|
PVOID systime_cb_reg;
|
|
|
|
|
|
|
|
FORT_DEVICE_CONF conf;
|
|
|
|
FORT_BUFFER buffer;
|
|
|
|
FORT_STAT stat;
|
2023-04-06 10:29:11 +00:00
|
|
|
FORT_PENDING pending;
|
2023-01-04 15:16:23 +00:00
|
|
|
FORT_SHAPER shaper;
|
2022-01-07 09:12:12 +00:00
|
|
|
FORT_PSTREE ps_tree;
|
2021-03-16 18:36:12 +00:00
|
|
|
FORT_TIMER log_timer;
|
|
|
|
FORT_TIMER app_timer;
|
|
|
|
FORT_WORKER worker;
|
|
|
|
} FORT_DEVICE, *PFORT_DEVICE;
|
|
|
|
|
|
|
|
#if defined(__cplusplus)
|
|
|
|
extern "C" {
|
|
|
|
#endif
|
|
|
|
|
2023-03-30 12:31:48 +00:00
|
|
|
FORT_API PFORT_DEVICE fort_device(void);
|
2021-03-16 18:36:12 +00:00
|
|
|
|
2023-04-13 11:11:43 +00:00
|
|
|
FORT_API void fort_device_set(PFORT_DEVICE device);
|
|
|
|
|
2023-04-01 15:51:06 +00:00
|
|
|
FORT_API void fort_device_on_system_time(void);
|
2021-03-16 18:36:12 +00:00
|
|
|
|
|
|
|
FORT_API NTSTATUS fort_device_create(PDEVICE_OBJECT device, PIRP irp);
|
|
|
|
|
|
|
|
FORT_API NTSTATUS fort_device_close(PDEVICE_OBJECT device, PIRP irp);
|
|
|
|
|
|
|
|
FORT_API NTSTATUS fort_device_cleanup(PDEVICE_OBJECT device, PIRP irp);
|
|
|
|
|
|
|
|
FORT_API NTSTATUS fort_device_control(PDEVICE_OBJECT device, PIRP irp);
|
|
|
|
|
2023-03-22 13:05:53 +00:00
|
|
|
FORT_API NTSTATUS fort_device_shutdown(PDEVICE_OBJECT device, PIRP irp);
|
|
|
|
|
2023-04-13 11:11:43 +00:00
|
|
|
FORT_API NTSTATUS fort_device_load(void);
|
2021-03-17 13:12:18 +00:00
|
|
|
|
2023-03-30 12:31:48 +00:00
|
|
|
FORT_API void fort_device_unload(void);
|
2021-03-17 13:12:18 +00:00
|
|
|
|
2021-03-16 18:36:12 +00:00
|
|
|
#ifdef __cplusplus
|
|
|
|
} // extern "C"
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#endif // FORTDEV_H
|