7 #ifndef PORTCLS_PRIVATE_H
8 #define PORTCLS_PRIVATE_H
18 #include "interfaces.h"
25 #define TAG(A, B, C, D) (ULONG)(((A)<<0) + ((B)<<8) + ((C)<<16) + ((D)<<24))
26 #define TAG_PORTCLASS TAG('P', 'C', 'L', 'S')
36 IN PDEVICE_OBJECT DeviceObject
,
42 IN PDEVICE_OBJECT DeviceObject
,
48 IN PDEVICE_OBJECT DeviceObject
,
54 IN PDEVICE_OBJECT DeviceObject
,
57 NTSTATUS
NewMiniportDMusUART(
58 OUT PMINIPORT
* OutMiniport
,
61 NTSTATUS
NewMiniportFmSynth(
62 OUT PMINIPORT
* OutMiniport
,
71 NTSTATUS
NewPortTopology(
74 NTSTATUS
NewPortWaveCyclic(
77 NTSTATUS
NewPortWavePci(
81 OUT PDRMPORT2
*OutPort
);
83 NTSTATUS
NewPortClsVersion(
84 OUT PPORTCLSVERSION
* OutVersion
);
86 NTSTATUS
NewPortFilterWaveCyclic(
87 OUT IPortFilterWaveCyclic
** OutFilter
);
89 PVOID
AllocateItem(IN POOL_TYPE PoolType
, IN SIZE_T NumberOfBytes
, IN ULONG Tag
);
96 NTSTATUS
StringFromCLSID(
104 KSOBJECT_HEADER ObjectHeader
;
110 ISubdevice
* FromSubDevice
;
111 LPWSTR FromUnicodeString
;
113 ISubdevice
* ToSubDevice
;
114 LPWSTR ToUnicodeString
;
116 }PHYSICAL_CONNECTION
;
121 PDEVICE_OBJECT PhysicalDeviceObject
;
122 PDEVICE_OBJECT PrevDeviceObject
;
123 PCPFNSTARTDEVICE StartDevice
;
124 KSDEVICE_HEADER KsDeviceHeader
;
125 IAdapterPowerManagement
* AdapterPowerManagement
;
127 KSOBJECT_CREATE_ITEM
* CreateItems
;
130 IResourceList
* resources
;
131 LIST_ENTRY SubDeviceList
;
132 LIST_ENTRY PhysicalConnectionList
;
139 PcDmaMasterDescription(
140 IN PRESOURCELIST ResourceList OPTIONAL
,
141 IN BOOLEAN ScatterGather
,
142 IN BOOLEAN Dma32BitAddresses
,
143 IN BOOLEAN IgnoreCount
,
144 IN BOOLEAN Dma64BitAddresses
,
145 IN DMA_WIDTH DmaWidth
,
146 IN DMA_SPEED DmaSpeed
,
147 IN ULONG MaximumLength
,
149 OUT PDEVICE_DESCRIPTION DeviceDescription
);
153 PcDmaSlaveDescription(
154 IN PRESOURCELIST ResourceList OPTIONAL
,
157 IN ULONG AutoInitialize
,
158 IN DMA_SPEED DmaSpeed
,
159 IN ULONG MaximumLength
,
161 OUT PDEVICE_DESCRIPTION DeviceDescription
);
165 PcCreateSubdeviceDescriptor(
166 OUT SUBDEVICE_DESCRIPTOR
** OutSubdeviceDescriptor
,
167 IN ULONG InterfaceCount
,
168 IN GUID
* InterfaceGuids
,
169 IN ULONG IdentifierCount
,
170 IN KSIDENTIFIER
*Identifier
,
171 IN ULONG FilterPropertiesCount
,
172 IN KSPROPERTY_SET
* FilterProperties
,
175 IN ULONG PinPropertiesCount
,
176 IN KSPROPERTY_SET
* PinProperties
,
177 IN ULONG EventSetCount
,
178 IN KSEVENT_SET
* EventSet
,
179 IN PPCFILTER_DESCRIPTOR FilterDescription
);