OpenNet
Adapter_WDF.h
Aller à la documentation de ce fichier.
1 
2 // Product OpenNet
3 
8 
9 #pragma once
10 
11 // Includes
13 
14 // ===== Includes/OpenNetK ==================================================
15 #include <OpenNetK/OSDep.h>
16 #include <OpenNetK/SpinLock.h>
17 
18 namespace OpenNetK
19 {
20  class Adapter ;
21  class Hardware_WDF;
22 
23  // Class
25 
37  {
38 
39  public:
40 
53  void Init(Adapter * aAdapter, WDFDEVICE aDevice, Hardware_WDF * aHardware_WDF);
54 
63  void FileCleanup(WDFFILEOBJECT aFileObject);
64 
81  void IoDeviceControl(WDFREQUEST aRequest, size_t aOutSize_byte, size_t aInSize_byte, ULONG aCode);
82 
91  void IoInCallerContext(WDFREQUEST aRequest);
92 
93  // internal:
94 
95  void Event_Process();
96 
97  void SharedMemory_Release();
98 
99  private:
100 
101  NTSTATUS Connect(void * aIn);
102 
103  void ProcessIoCtlResult(int aIoCtlResult, WDFREQUEST aRequest);
104 
105  NTSTATUS SharedMemory_ProbeAndLock();
106  NTSTATUS SharedMemory_Translate (void ** aSharedMemory);
107 
108  NTSTATUS ResultToStatus(WDFREQUEST aRequest, int aIoCtlResult);
109 
110  Adapter * mAdapter ;
111  WDFDEVICE mDevice ;
112  Hardware_WDF * mHardware_WDF ;
113  OpenNetK_OSDep mOSDep ;
114  MDL * mSharedMemory_MDL;
115  WDFQUEUE mWaiting ;
116 
117  // ===== Zone 0 =====================================================
118  SpinLock mZone0;
119 
120  };
121 
122 }
Cette structure contient des pointeurs vers les fonctions qui dependes du systeme d'exploitation...
Definition: OSDep.h:178
void Init(Adapter *aAdapter, WDFDEVICE aDevice, Hardware_WDF *aHardware_WDF)
Initialiser l'instance.
La class Hardware_WDF (DDK, Windows seulement)
Definition: Hardware_WDF.h:35
OpenNetK_OSDep.
void IoInCallerContext(WDFREQUEST aRequest)
Traiter la requête dans le context de l'appelant.
OpenNetK::SpinLock.
Interface d'un spinlock.
Definition: SpinLock.h:36
void IoDeviceControl(WDFREQUEST aRequest, size_t aOutSize_byte, size_t aInSize_byte, ULONG aCode)
Traite une commande IoCtl.
Definition: Adapter.h:26
void FileCleanup(WDFFILEOBJECT aFileObject)
Nettoyer un fichier.
Cette classe maintien les informations concernant un adaptateur sur le réseau interne OpenNet...
Definition: Adapter.h:51
La classe Adapter_WDF (DDK, Windows seulement)
Definition: Adapter_WDF.h:36