ReactOS  0.4.13-dev-443-g10f00f8
CPortWaveRT Class Reference
Inheritance diagram for CPortWaveRT:
Collaboration diagram for CPortWaveRT:

Public Member Functions

STDMETHODIMP QueryInterface (REFIID InterfaceId, PVOID *Interface)
 
 STDMETHODIMP_ (ULONG) AddRef()
 
 STDMETHODIMP_ (ULONG) Release()
 
 CPortWaveRT (IUnknown *OuterUnknown)
 
virtual ~CPortWaveRT ()
 

Public Attributes

 IMP_IPortWaveRT
 
 IMP_ISubdevice
 
 IMP_IPortEvents
 

Protected Attributes

BOOL m_bInitialized
 
PDEVICE_OBJECT m_pDeviceObject
 
PMINIPORTWAVERT m_pMiniport
 
PRESOURCELIST m_pResourceList
 
PPINCOUNT m_pPinCount
 
PPOWERNOTIFY m_pPowerNotify
 
PPCFILTER_DESCRIPTOR m_pDescriptor
 
PSUBDEVICE_DESCRIPTOR m_SubDeviceDescriptor
 
IPortFilterWaveRT * m_Filter
 
LONG m_Ref
 

Friends

PMINIPORTWAVERT GetWaveRTMiniport (IN IPortWaveRT *iface)
 
PDEVICE_OBJECT GetDeviceObjectFromPortWaveRT (PPORTWAVERT iface)
 

Detailed Description

Definition at line 17 of file port_wavert.cpp.

Constructor & Destructor Documentation

◆ CPortWaveRT()

CPortWaveRT::CPortWaveRT ( IUnknown OuterUnknown)
inline

Definition at line 43 of file port_wavert.cpp.

43 {}

◆ ~CPortWaveRT()

virtual CPortWaveRT::~CPortWaveRT ( )
inlinevirtual

Definition at line 44 of file port_wavert.cpp.

44 {}

Member Function Documentation

◆ QueryInterface()

NTSTATUS NTAPI CPortWaveRT::QueryInterface ( REFIID  InterfaceId,
PVOID Interface 
)

Definition at line 138 of file port_wavert.cpp.

141 {
143 
144  if (IsEqualGUIDAligned(refiid, IID_IPortWaveRT) ||
146  {
147  *Output = PVOID(PPORTWAVERT(this));
148  PUNKNOWN(*Output)->AddRef();
149  return STATUS_SUCCESS;
150  }
151  else if (IsEqualGUIDAligned(refiid, IID_IPortEvents))
152  {
153  *Output = PVOID(PPORTEVENTS(this));
154  PUNKNOWN(*Output)->AddRef();
155  return STATUS_SUCCESS;
156  }
157  else if (IsEqualGUIDAligned(refiid, IID_ISubdevice))
158  {
159  *Output = PVOID(PSUBDEVICE(this));
160  PUNKNOWN(*Output)->AddRef();
161  return STATUS_SUCCESS;
162  }
163  else if (IsEqualGUIDAligned(refiid, IID_IPortClsVersion))
164  {
166  }
167  else if (IsEqualGUIDAligned(refiid, IID_IDrmPort) ||
168  IsEqualGUIDAligned(refiid, IID_IDrmPort2))
169  {
170  return NewIDrmPort((PDRMPORT2*)Output);
171  }
172  else if (IsEqualGUIDAligned(refiid, IID_IUnregisterSubdevice))
173  {
175  }
176  else if (IsEqualGUIDAligned(refiid, IID_IUnregisterPhysicalConnection))
177  {
179  }
180 
182  {
183  DPRINT("IPortWaveRT_fnQueryInterface no interface!!! iface %S\n", GuidString.Buffer);
185  }
186 
187  return STATUS_UNSUCCESSFUL;
188 }
IPortEvents * PPORTEVENTS
Definition: portcls.h:2065
static PWSTR GuidString
Definition: apphelp.c:91
IPortWaveRT * PPORTWAVERT
Definition: interfaces.hpp:682
IUnknown * PUNKNOWN
Definition: com_apitest.h:45
IUnregisterSubdevice * PUNREGISTERSUBDEVICE
Definition: portcls.h:633
#define IsEqualGUIDAligned(guid1, guid2)
Definition: wdm.template.h:233
void DPRINT(...)
Definition: polytest.cpp:61
void * PVOID
Definition: retypes.h:9
IUnregisterPhysicalConnection * PUNREGISTERPHYSICALCONNECTION
Definition: portcls.h:675
IDrmPort2 * PDRMPORT2
Definition: portcls.h:2172
const GUID IID_IUnknown
NTSYSAPI VOID NTAPI RtlFreeUnicodeString(PUNICODE_STRING UnicodeString)
ULONG AddRef()
#define STATUS_UNSUCCESSFUL
Definition: udferr_usr.h:132
Definition: arc.h:85
NTSTATUS NTAPI NewIUnregisterSubdevice(OUT PUNREGISTERSUBDEVICE *OutDevice)
Definition: unregister.cpp:143
NTSYSAPI NTSTATUS WINAPI RtlStringFromGUID(REFGUID, PUNICODE_STRING)
ISubdevice * PSUBDEVICE
Definition: interfaces.hpp:305
NTSTATUS NewPortClsVersion(OUT PPORTCLSVERSION *OutVersion)
Definition: version.cpp:93
NTSTATUS NTAPI NewIUnregisterPhysicalConnection(OUT PUNREGISTERPHYSICALCONNECTION *OutConnection)
Definition: connection.cpp:148
NTSTATUS NewIDrmPort(OUT PDRMPORT2 *OutPort)
Definition: drm_port.cpp:145
return STATUS_SUCCESS
Definition: btrfs.c:2777
IPortClsVersion * PPORTCLSVERSION
Definition: portcls.h:2209

◆ STDMETHODIMP_() [1/2]

CPortWaveRT::STDMETHODIMP_ ( ULONG  )
inline

Definition at line 24 of file port_wavert.cpp.

25  {
27  return m_Ref;
28  }
#define InterlockedIncrement
Definition: armddk.h:53

◆ STDMETHODIMP_() [2/2]

CPortWaveRT::STDMETHODIMP_ ( ULONG  )
inline

Definition at line 29 of file port_wavert.cpp.

30  {
32 
33  if (!m_Ref)
34  {
35  delete this;
36  return 0;
37  }
38  return m_Ref;
39  }
#define InterlockedDecrement
Definition: armddk.h:52

Friends And Related Function Documentation

◆ GetDeviceObjectFromPortWaveRT

PDEVICE_OBJECT GetDeviceObjectFromPortWaveRT ( PPORTWAVERT  iface)
friend

Definition at line 471 of file port_wavert.cpp.

473 {
474  CPortWaveRT * This = (CPortWaveRT *)iface;
475  return This->m_pDeviceObject;
476 }

◆ GetWaveRTMiniport

PMINIPORTWAVERT GetWaveRTMiniport ( IN IPortWaveRT *  iface)
friend

Definition at line 463 of file port_wavert.cpp.

465 {
466  CPortWaveRT * This = (CPortWaveRT *)iface;
467  return This->m_pMiniport;
468 }

Member Data Documentation

◆ IMP_IPortEvents

CPortWaveRT::IMP_IPortEvents

Definition at line 42 of file port_wavert.cpp.

◆ IMP_IPortWaveRT

CPortWaveRT::IMP_IPortWaveRT

Definition at line 40 of file port_wavert.cpp.

◆ IMP_ISubdevice

CPortWaveRT::IMP_ISubdevice

Definition at line 41 of file port_wavert.cpp.

◆ m_bInitialized

BOOL CPortWaveRT::m_bInitialized
protected

Definition at line 48 of file port_wavert.cpp.

◆ m_Filter

IPortFilterWaveRT* CPortWaveRT::m_Filter
protected

Definition at line 56 of file port_wavert.cpp.

◆ m_pDescriptor

PPCFILTER_DESCRIPTOR CPortWaveRT::m_pDescriptor
protected

Definition at line 54 of file port_wavert.cpp.

◆ m_pDeviceObject

PDEVICE_OBJECT CPortWaveRT::m_pDeviceObject
protected

Definition at line 49 of file port_wavert.cpp.

◆ m_pMiniport

PMINIPORTWAVERT CPortWaveRT::m_pMiniport
protected

Definition at line 50 of file port_wavert.cpp.

◆ m_pPinCount

PPINCOUNT CPortWaveRT::m_pPinCount
protected

Definition at line 52 of file port_wavert.cpp.

◆ m_pPowerNotify

PPOWERNOTIFY CPortWaveRT::m_pPowerNotify
protected

Definition at line 53 of file port_wavert.cpp.

◆ m_pResourceList

PRESOURCELIST CPortWaveRT::m_pResourceList
protected

Definition at line 51 of file port_wavert.cpp.

◆ m_Ref

LONG CPortWaveRT::m_Ref
protected

Definition at line 61 of file port_wavert.cpp.

Referenced by STDMETHODIMP_().

◆ m_SubDeviceDescriptor

PSUBDEVICE_DESCRIPTOR CPortWaveRT::m_SubDeviceDescriptor
protected

Definition at line 55 of file port_wavert.cpp.


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