ReactOS 0.4.15-dev-7842-g558ab78
dmksctrl.h File Reference
#include <pshpack8.h>
#include <objbase.h>
#include <poppack.h>
Include dependency graph for dmksctrl.h:

Go to the source code of this file.

Classes

struct  KSIDENTIFIER
 

Macros

#define _KS_
 
#define KSMETHOD_TYPE_NONE   0x00000000
 
#define KSMETHOD_TYPE_READ   0x00000001
 
#define KSMETHOD_TYPE_WRITE   0x00000002
 
#define KSMETHOD_TYPE_MODIFY   0x00000003
 
#define KSMETHOD_TYPE_SOURCE   0x00000004
 
#define KSMETHOD_TYPE_SEND   0x00000001
 
#define KSMETHOD_TYPE_SETSUPPORT   0x00000100
 
#define KSMETHOD_TYPE_BASICSUPPORT   0x00000200
 
#define KSPROPERTY_TYPE_GET   0x00000001
 
#define KSPROPERTY_TYPE_SET   0x00000002
 
#define KSPROPERTY_TYPE_SETSUPPORT   0x00000100
 
#define KSPROPERTY_TYPE_BASICSUPPORT   0x00000200
 
#define KSPROPERTY_TYPE_RELATIONS   0x00000400
 
#define KSPROPERTY_TYPE_SERIALIZESET   0x00000800
 
#define KSPROPERTY_TYPE_UNSERIALIZESET   0x00001000
 
#define KSPROPERTY_TYPE_SERIALIZERAW   0x00002000
 
#define KSPROPERTY_TYPE_UNSERIALIZERAW   0x00004000
 
#define KSPROPERTY_TYPE_SERIALIZESIZE   0x00008000
 
#define KSPROPERTY_TYPE_DEFAULTVALUES   0x00010000
 
#define KSPROPERTY_TYPE_TOPOLOGY   0x10000000
 
#define INTERFACE   IKsControl
 
#define IKsControl_QueryInterface(p, a, b)   (p)->lpVtbl->QueryInterface(p,a,b)
 
#define IKsControl_AddRef(p)   (p)->lpVtbl->AddRef(p)
 
#define IKsControl_Release(p)   (p)->lpVtbl->Release(p)
 
#define IKsControl_KsProperty(p, a, b, c, d, e)   (p)->lpVtbl->KsProperty(p,a,b,c,d,e)
 
#define IKsControl_KsMethod(p, a, b, c, d, e)   (p)->lpVtbl->KsMethod(p,a,b,c,d,e)
 
#define IKsControl_KsEvent(p, a, b, c, d, e)   (p)->lpVtbl->KsEvent(p,a,b,c,d,e)
 

Typedefs

typedef struct KSIDENTIFIERPKSIDENTIFIER
 
typedef KSIDENTIFIER KSPROPERTY
 
typedef KSIDENTIFIERPKSPROPERTY
 
typedef KSIDENTIFIER KSMETHOD
 
typedef KSIDENTIFIERPKSMETHOD
 
typedef KSIDENTIFIER KSEVENT
 
typedef KSIDENTIFIERPKSEVENT
 

Functions

 DECLARE_INTERFACE_ (IKsControl, IUnknown)
 
 DEFINE_GUID (IID_IKsControl, 0x28f54685, 0x06fd, 0x11d2, 0xb2, 0x7a, 0x00, 0xa0, 0xc9, 0x22, 0x31, 0x96)
 
 DEFINE_GUID (KSDATAFORMAT_SUBTYPE_MIDI, 0x1d262760, 0xe957, 0x11cf, 0xa5, 0xd6, 0x28, 0xdb, 0x04, 0xc1, 0x00, 0x00)
 
 DEFINE_GUID (KSDATAFORMAT_SUBTYPE_DIRECTMUSIC, 0x1a82f8bc, 0x3f8b, 0x11d2, 0xb7, 0x74, 0x00, 0x60, 0x08, 0x33, 0x16, 0xc1)
 

Macro Definition Documentation

◆ _KS_

#define _KS_

Definition at line 29 of file dmksctrl.h.

◆ IKsControl_AddRef

#define IKsControl_AddRef (   p)    (p)->lpVtbl->AddRef(p)

Definition at line 88 of file dmksctrl.h.

◆ IKsControl_KsEvent

#define IKsControl_KsEvent (   p,
  a,
  b,
  c,
  d,
  e 
)    (p)->lpVtbl->KsEvent(p,a,b,c,d,e)

Definition at line 93 of file dmksctrl.h.

◆ IKsControl_KsMethod

#define IKsControl_KsMethod (   p,
  a,
  b,
  c,
  d,
  e 
)    (p)->lpVtbl->KsMethod(p,a,b,c,d,e)

Definition at line 92 of file dmksctrl.h.

◆ IKsControl_KsProperty

#define IKsControl_KsProperty (   p,
  a,
  b,
  c,
  d,
  e 
)    (p)->lpVtbl->KsProperty(p,a,b,c,d,e)

Definition at line 91 of file dmksctrl.h.

◆ IKsControl_QueryInterface

#define IKsControl_QueryInterface (   p,
  a,
  b 
)    (p)->lpVtbl->QueryInterface(p,a,b)

Definition at line 87 of file dmksctrl.h.

◆ IKsControl_Release

#define IKsControl_Release (   p)    (p)->lpVtbl->Release(p)

Definition at line 89 of file dmksctrl.h.

◆ INTERFACE

Definition at line 68 of file dmksctrl.h.

◆ KSMETHOD_TYPE_BASICSUPPORT

#define KSMETHOD_TYPE_BASICSUPPORT   0x00000200

Definition at line 52 of file dmksctrl.h.

◆ KSMETHOD_TYPE_MODIFY

#define KSMETHOD_TYPE_MODIFY   0x00000003

Definition at line 47 of file dmksctrl.h.

◆ KSMETHOD_TYPE_NONE

#define KSMETHOD_TYPE_NONE   0x00000000

Definition at line 44 of file dmksctrl.h.

◆ KSMETHOD_TYPE_READ

#define KSMETHOD_TYPE_READ   0x00000001

Definition at line 45 of file dmksctrl.h.

◆ KSMETHOD_TYPE_SEND

#define KSMETHOD_TYPE_SEND   0x00000001

Definition at line 50 of file dmksctrl.h.

◆ KSMETHOD_TYPE_SETSUPPORT

#define KSMETHOD_TYPE_SETSUPPORT   0x00000100

Definition at line 51 of file dmksctrl.h.

◆ KSMETHOD_TYPE_SOURCE

#define KSMETHOD_TYPE_SOURCE   0x00000004

Definition at line 48 of file dmksctrl.h.

◆ KSMETHOD_TYPE_WRITE

#define KSMETHOD_TYPE_WRITE   0x00000002

Definition at line 46 of file dmksctrl.h.

◆ KSPROPERTY_TYPE_BASICSUPPORT

#define KSPROPERTY_TYPE_BASICSUPPORT   0x00000200

Definition at line 57 of file dmksctrl.h.

◆ KSPROPERTY_TYPE_DEFAULTVALUES

#define KSPROPERTY_TYPE_DEFAULTVALUES   0x00010000

Definition at line 64 of file dmksctrl.h.

◆ KSPROPERTY_TYPE_GET

#define KSPROPERTY_TYPE_GET   0x00000001

Definition at line 54 of file dmksctrl.h.

◆ KSPROPERTY_TYPE_RELATIONS

#define KSPROPERTY_TYPE_RELATIONS   0x00000400

Definition at line 58 of file dmksctrl.h.

◆ KSPROPERTY_TYPE_SERIALIZERAW

#define KSPROPERTY_TYPE_SERIALIZERAW   0x00002000

Definition at line 61 of file dmksctrl.h.

◆ KSPROPERTY_TYPE_SERIALIZESET

#define KSPROPERTY_TYPE_SERIALIZESET   0x00000800

Definition at line 59 of file dmksctrl.h.

◆ KSPROPERTY_TYPE_SERIALIZESIZE

#define KSPROPERTY_TYPE_SERIALIZESIZE   0x00008000

Definition at line 63 of file dmksctrl.h.

◆ KSPROPERTY_TYPE_SET

#define KSPROPERTY_TYPE_SET   0x00000002

Definition at line 55 of file dmksctrl.h.

◆ KSPROPERTY_TYPE_SETSUPPORT

#define KSPROPERTY_TYPE_SETSUPPORT   0x00000100

Definition at line 56 of file dmksctrl.h.

◆ KSPROPERTY_TYPE_TOPOLOGY

#define KSPROPERTY_TYPE_TOPOLOGY   0x10000000

Definition at line 66 of file dmksctrl.h.

◆ KSPROPERTY_TYPE_UNSERIALIZERAW

#define KSPROPERTY_TYPE_UNSERIALIZERAW   0x00004000

Definition at line 62 of file dmksctrl.h.

◆ KSPROPERTY_TYPE_UNSERIALIZESET

#define KSPROPERTY_TYPE_UNSERIALIZESET   0x00001000

Definition at line 60 of file dmksctrl.h.

Typedef Documentation

◆ KSEVENT

Definition at line 42 of file dmksctrl.h.

◆ KSMETHOD

Definition at line 42 of file dmksctrl.h.

◆ KSPROPERTY

Definition at line 42 of file dmksctrl.h.

◆ PKSEVENT

Definition at line 42 of file dmksctrl.h.

◆ PKSIDENTIFIER

◆ PKSMETHOD

Definition at line 42 of file dmksctrl.h.

◆ PKSPROPERTY

Definition at line 42 of file dmksctrl.h.

Function Documentation

◆ DECLARE_INTERFACE_()

DECLARE_INTERFACE_ ( IKsControl  ,
IUnknown   
)

Definition at line 69 of file dmksctrl.h.

70{
71 /*** IUnknown methods ***/
75 /*** IKsControl methods ***/
76 STDMETHOD(KsProperty)(THIS_ PKSPROPERTY Property, ULONG PropertyLength, LPVOID PropertyData,
78 STDMETHOD(KsMethod)(THIS_ PKSMETHOD Method, ULONG MethodLength, LPVOID MethodData,
80 STDMETHOD(KsEvent)(THIS_ PKSEVENT Event, ULONG EventLength, LPVOID EventData,
82};
#define PURE
Definition: basetyps.h:64
#define THIS_
Definition: basetyps.h:65
#define THIS
Definition: basetyps.h:66
#define STDMETHOD_(t, m)
Definition: basetyps.h:63
#define STDMETHOD(m)
Definition: basetyps.h:62
_In_ BOOLEAN Release
Definition: cdrom.h:920
_In_ ULONG _In_opt_ WDFREQUEST _In_opt_ PVOID _In_ size_t _In_ PVOID _In_ size_t _Out_ size_t * DataLength
Definition: cdrom.h:1444
_In_ WDFDEVICE _In_ PWDF_DEVICE_INTERFACE_PROPERTY_DATA PropertyData
REFIID riid
Definition: atlbase.h:39
static HRESULT QueryInterface(REFIID, void **)
Definition: events.c:2587
static ULONG WINAPI AddRef(IStream *iface)
Definition: clist.c:90
#define REFIID
Definition: guiddef.h:118
uint32_t ULONG
Definition: typedefs.h:59
_Must_inspect_result_ _In_ WDFIOTARGET _In_opt_ WDFREQUEST _In_ ULONG _In_opt_ PWDF_MEMORY_DESCRIPTOR _In_opt_ PWDF_MEMORY_DESCRIPTOR _In_opt_ PWDF_REQUEST_SEND_OPTIONS _Out_opt_ PULONG_PTR BytesReturned
Definition: wdfiotarget.h:1052
_In_ void _In_ PCCERT_CONTEXT _In_opt_ LPFILETIME _In_ DWORD _In_ DWORD _Outptr_opt_ void ** ppvObject
Definition: wincrypt.h:6082

◆ DEFINE_GUID() [1/3]

DEFINE_GUID ( IID_IKsControl  ,
0x28f54685  ,
0x06fd  ,
0x11d2  ,
0xb2  ,
0x7a  ,
0x00  ,
0xa0  ,
0xc9  ,
0x22  ,
0x31  ,
0x96   
)

◆ DEFINE_GUID() [2/3]

DEFINE_GUID ( KSDATAFORMAT_SUBTYPE_DIRECTMUSIC  ,
0x1a82f8bc  ,
0x3f8b  ,
0x11d2  ,
0xb7  ,
0x74  ,
0x00  ,
0x60  ,
0x08  ,
0x33  ,
0x16  ,
0xc1   
)

◆ DEFINE_GUID() [3/3]

DEFINE_GUID ( KSDATAFORMAT_SUBTYPE_MIDI  ,
0x1d262760  ,
0xe957  ,
0x11cf  ,
0xa5  ,
0xd6  ,
0x28  ,
0xdb  ,
0x04  ,
0xc1  ,
0x00  ,
0x00   
)