7 #ifndef PORTCLS_PRIVATE_H
8 #define PORTCLS_PRIVATE_H
18 #include "interfaces.h"
22 #define TAG(A, B, C, D) (ULONG)(((A)<<0) + ((B)<<8) + ((C)<<16) + ((D)<<24))
23 #define TAG_PORTCLASS TAG('P', 'C', 'L', 'S')
33 IN PDEVICE_OBJECT DeviceObject
,
39 IN PDEVICE_OBJECT DeviceObject
,
45 IN PDEVICE_OBJECT DeviceObject
,
51 IN PDEVICE_OBJECT DeviceObject
,
54 NTSTATUS
NewMiniportDMusUART(
55 OUT PMINIPORT
* OutMiniport
,
58 NTSTATUS
NewMiniportFmSynth(
59 OUT PMINIPORT
* OutMiniport
,
68 NTSTATUS
NewPortTopology(
71 NTSTATUS
NewPortWaveCyclic(
74 NTSTATUS
NewPortWavePci(
78 OUT PDRMPORT2
*OutPort
);
80 NTSTATUS
NewPortClsVersion(
81 OUT PPORTCLSVERSION
* OutVersion
);
83 NTSTATUS
NewPortFilterWaveCyclic(
84 OUT IPortFilterWaveCyclic
** OutFilter
);
86 PVOID
AllocateItem(IN POOL_TYPE PoolType
, IN SIZE_T NumberOfBytes
, IN ULONG Tag
);
93 NTSTATUS
StringFromCLSID(
101 KSOBJECT_HEADER ObjectHeader
;
107 ISubdevice
* FromSubDevice
;
108 LPWSTR FromUnicodeString
;
110 ISubdevice
* ToSubDevice
;
111 LPWSTR ToUnicodeString
;
113 }PHYSICAL_CONNECTION
;
118 PDEVICE_OBJECT PhysicalDeviceObject
;
119 PDEVICE_OBJECT PrevDeviceObject
;
120 PCPFNSTARTDEVICE StartDevice
;
121 KSDEVICE_HEADER KsDeviceHeader
;
122 IAdapterPowerManagement
* AdapterPowerManagement
;
124 KSOBJECT_CREATE_ITEM
* CreateItems
;
127 IResourceList
* resources
;
128 LIST_ENTRY SubDeviceList
;
129 LIST_ENTRY PhysicalConnectionList
;
136 PcDmaMasterDescription(
137 IN PRESOURCELIST ResourceList OPTIONAL
,
138 IN BOOLEAN ScatterGather
,
139 IN BOOLEAN Dma32BitAddresses
,
140 IN BOOLEAN IgnoreCount
,
141 IN BOOLEAN Dma64BitAddresses
,
142 IN DMA_WIDTH DmaWidth
,
143 IN DMA_SPEED DmaSpeed
,
144 IN ULONG MaximumLength
,
146 OUT PDEVICE_DESCRIPTION DeviceDescription
);
150 PcDmaSlaveDescription(
151 IN PRESOURCELIST ResourceList OPTIONAL
,
154 IN ULONG AutoInitialize
,
155 IN DMA_SPEED DmaSpeed
,
156 IN ULONG MaximumLength
,
158 OUT PDEVICE_DESCRIPTION DeviceDescription
);
162 PcCreateSubdeviceDescriptor(
163 OUT SUBDEVICE_DESCRIPTOR
** OutSubdeviceDescriptor
,
164 IN ULONG InterfaceCount
,
165 IN GUID
* InterfaceGuids
,
166 IN ULONG IdentifierCount
,
167 IN KSIDENTIFIER
*Identifier
,
168 IN ULONG FilterPropertiesCount
,
169 IN KSPROPERTY_SET
* FilterProperties
,
172 IN ULONG PinPropertiesCount
,
173 IN KSPROPERTY_SET
* PinProperties
,
174 IN ULONG EventSetCount
,
175 IN KSEVENT_SET
* EventSet
,
176 IN PPCFILTER_DESCRIPTOR FilterDescription
);