Main Page | Data Structures | Directories | File List | Data Fields | Globals | Related Pages

wdm/PortEnum.c File Reference

Functions for communicating with the parallel port driver. More...

#include <initguid.h>
#include <wdm.h>
#include "cbm_driver.h"

Go to the source code of this file.

Defines

#define PENUMERATE_DEFINED
 Make sure the PENUMERATE is correctly defined.

Typedefs

typedef ENUMERATE_WDMPENUMERATE
typedef ENUMERATE_WDM ENUMERATE

Functions

NTSTATUS ParPortEnumerateOpen (PENUMERATE *EnumStruct)
 Start enumeration of the parallel port drivers.
NTSTATUS ParPortEnumerate (PENUMERATE EnumStruct, PCWSTR *DriverName)
 Get next enumerated parallel port driver.
VOID ParPortEnumerateClose (PENUMERATE EnumStruct)
 Stop enumeration of the parallel port drivers.
NTSTATUS CbmOpenDeviceRegistryKey (IN PDEVICE_OBJECT a, IN ULONG b, IN ACCESS_MASK c, OUT PHANDLE d)
 Stub for a function.


Detailed Description

Functions for communicating with the parallel port driver.

**************************************************************

Author:
Spiro Trikaliotis
Version:
Id
PortEnum.c,v 1.15 2006/02/24 12:01:26 trikalio Exp


Definition in file wdm/PortEnum.c.


Typedef Documentation

typedef struct ENUMERATE_WDM ENUMERATE
 

This struct is used as internal storage for the ParPortEnumerateOpen()/ParPortEnumerate()/ParPortEnumerateClose() functions

typedef struct ENUMERATE_WDM * PENUMERATE
 

This struct is used as internal storage for the ParPortEnumerateOpen()/ParPortEnumerate()/ParPortEnumerateClose() functions

Definition at line 24 of file wdm/PortEnum.c.


Function Documentation

NTSTATUS CbmOpenDeviceRegistryKey IN PDEVICE_OBJECT  a,
IN ULONG  b,
IN ACCESS_MASK  c,
OUT PHANDLE  d
 

Stub for a function.

This function is not available on NT4, and it is not needed there, but it is needed for WDM. Because of this, we define it here for cbm4wdm.sys, so that the driver works in either case.

Definition at line 214 of file wdm/PortEnum.c.

References FUNC_ENTER.

Referenced by cbm_registry_open_hardwarekey().

NTSTATUS ParPortEnumerate PENUMERATE  EnumStruct,
PCWSTR *  DriverName
 

Get next enumerated parallel port driver.

This function starts the enumeration process of the parallel port drivers

Parameters:
EnumStruct Pointer to a ENUMERATE structure. This is internal storage for these functions.
DriverName; Pointer to a storage area which will contain the next driver implementing this interface.
Returns:
If the routine succeeds, it returns STATUS_SUCCESS. Otherwise, it returns one of the error status values.
For enumerating, a caller has to do the following:

Definition at line 144 of file wdm/PortEnum.c.

References DBG_ASSERT, and FUNC_ENTER.

Referenced by DriverEntry().

VOID ParPortEnumerateClose PENUMERATE  EnumStruct  ) 
 

Stop enumeration of the parallel port drivers.

This function stops the enumeration process of the parallel port drivers

Parameters:
EnumStruct Pointer to a ENUMERATE structure, which contains the last enumerated driver
For enumerating, a caller has to do the following:

Definition at line 189 of file wdm/PortEnum.c.

References DBG_ASSERT, DBGDO, FUNC_ENTER, and FUNC_LEAVE.

Referenced by DriverEntry(), and ParPortEnumerateOpen().

NTSTATUS ParPortEnumerateOpen PENUMERATE EnumStruct  ) 
 

Start enumeration of the parallel port drivers.

This function starts the enumeration process of the parallel port drivers

Parameters:
EnumStruct Pointer to a pointer to hold an ENUMERATE structure. This is internal storage for these functions, and it is allocated by this function.
Returns:
If the routine succeeds, it returns STATUS_SUCCESS. Otherwise, it returns one of the error status values.
For enumerating, a caller has to do the following:

Definition at line 65 of file wdm/PortEnum.c.

References FUNC_ENTER, and MTAG_SENUMERATE.

Referenced by DriverEntry().


Generated on Sun Apr 30 18:46:14 2006 for opencbm by  doxygen 1.4.2