dxd - dynax driver framework 2.7.0d222
cross platform open source driver development framework
Loading...
Searching...
No Matches
dxd::adapter::device Class Reference

per-FDO adapter device: miniport subdevices are created in start() More...

#include <dxd_port.h>

Inheritance diagram for dxd::adapter::device:
Collaboration diagram for dxd::adapter::device:

Public Member Functions

 device (const class adapter &adapter, ::DEVICE_OBJECT *wdm_device, ::DEVICE_OBJECT *wdm_pdo, ::DEVICE_OBJECT *wdm_bus)
virtual os_result ioctl (unsigned int ioctl, const void *, size_t size_in, void *out, size_t size_out, size_t &size)
 control I/O handler, reached through client::ioctl()
os_result start (::IResourceList *wdm_reslist)
virtual ~device ()

Public Attributes

unsigned int ports = 0
 miniport subdevices
os_result status = not_initialized

Protected Member Functions

virtual clientclient_create ()
 user client factory
virtual os_result create_miniport (const wchar_t *, ::IResourceList *, unsigned int)
 miniport factory
virtual os_result launch ()
 device start hook: set ports before miniports are created

Protected Attributes

const class adapter & adapter
::DEVICE_OBJECT * wdm_bus
::DEVICE_OBJECT * wdm_device
::DEVICE_OBJECT * wdm_pdo

Friends

class adapter

Detailed Description

per-FDO adapter device: miniport subdevices are created in start()

Constructor & Destructor Documentation

◆ device()

dxd::adapter::device::device ( const class adapter & adapter,
::DEVICE_OBJECT * wdm_device,
::DEVICE_OBJECT * wdm_pdo,
::DEVICE_OBJECT * wdm_bus )
inline
Here is the call graph for this function:

◆ ~device()

virtual dxd::adapter::device::~device ( )
inlinevirtual

Member Function Documentation

◆ client_create()

virtual client * dxd::adapter::device::client_create ( )
inlineprotectedvirtual

user client factory

◆ create_miniport()

virtual os_result dxd::adapter::device::create_miniport ( const wchar_t * ,
::IResourceList * ,
unsigned int  )
inlineprotectedvirtual

miniport factory

Here is the caller graph for this function:

◆ ioctl()

virtual os_result dxd::adapter::device::ioctl ( unsigned int ioctl,
const void * ,
size_t size_in,
void * out,
size_t size_out,
size_t & size )
inlinevirtual

control I/O handler, reached through client::ioctl()

Here is the call graph for this function:
Here is the caller graph for this function:

◆ launch()

virtual os_result dxd::adapter::device::launch ( )
inlineprotectedvirtual

device start hook: set ports before miniports are created

Here is the caller graph for this function:

◆ start()

os_result dxd::adapter::device::start ( ::IResourceList * wdm_reslist)
inline

endpoint icon: PKEY_DeviceClass_IconPath in the subdevice's KSCATEGORY_AUDIO interface key

Here is the call graph for this function:

◆ adapter

friend class adapter
friend

Member Data Documentation

◆ adapter

const class adapter& dxd::adapter::device::adapter
protected

◆ ports

unsigned int dxd::adapter::device::ports = 0

miniport subdevices

◆ status

os_result dxd::adapter::device::status = not_initialized

◆ wdm_bus

::DEVICE_OBJECT* dxd::adapter::device::wdm_bus
protected

◆ wdm_device

::DEVICE_OBJECT* dxd::adapter::device::wdm_device
protected

◆ wdm_pdo

::DEVICE_OBJECT* dxd::adapter::device::wdm_pdo
protected

The documentation for this class was generated from the following file:

(c) copyright 2009 dynamic acoustics e.U. generated on

a closed source license may be obtained by requesting a written permission from dynamic acoustics e.U.
however - governmental use generally and military use especially is strictly prohibited though.