Home | Info | Community | Development | myReactOS | Contact Us
ReactOS Development > Doxygenstrmini.h
Go to the documentation of this file.
00001 #ifndef _STREAM_H 00002 #define _STREAM_H 00003 00004 #include <ntddk.h> 00005 #include <windef.h> 00006 #include <ks.h> 00007 00008 #define STREAMAPI __stdcall 00009 #define STREAM_SYSTEM_TIME_MASK ((STREAM_SYSTEM_TIME)0x00000001FFFFFFFF) 00010 00011 typedef enum { 00012 DebugLevelFatal = 0, 00013 DebugLevelError, 00014 DebugLevelWarning, 00015 DebugLevelInfo, 00016 DebugLevelTrace, 00017 DebugLevelVerbose, 00018 DebugLevelMaximum 00019 } STREAM_DEBUG_LEVEL; 00020 00021 #if DBG 00022 00023 #define DebugPrint(x) StreamClassDebugPrint x 00024 #define DEBUG_BREAKPOINT() DbgBreakPoint() 00025 #define DEBUG_ASSERT(exp) \ 00026 if ( !(exp) ) { \ 00027 StreamClassDebugAssert( __FILE__, __LINE__, #exp, exp); \ 00028 } 00029 #else 00030 00031 #define DebugPrint(x) 00032 #define DEBUG_BREAKPOINT() 00033 #define DEBUG_ASSERT(exp) 00034 00035 #endif 00036 00037 typedef PHYSICAL_ADDRESS STREAM_PHYSICAL_ADDRESS, *PSTREAM_PHYSICAL_ADDRESS; 00038 __GNU_EXTENSION typedef unsigned __int64 STREAM_SYSTEM_TIME, *PSTREAM_SYSTEM_TIME; 00039 __GNU_EXTENSION typedef unsigned __int64 STREAM_TIMESTAMP, *PSTREAM_TIMESTAMP; 00040 00041 typedef enum { 00042 TIME_GET_STREAM_TIME, 00043 TIME_READ_ONBOARD_CLOCK, 00044 TIME_SET_ONBOARD_CLOCK 00045 } TIME_FUNCTION; 00046 00047 typedef struct _HW_TIME_CONTEXT { 00048 struct _HW_DEVICE_EXTENSION *HwDeviceExtension; 00049 struct _HW_STREAM_OBJECT *HwStreamObject; 00050 TIME_FUNCTION Function; 00051 ULONGLONG Time; 00052 ULONGLONG SystemTime; 00053 } HW_TIME_CONTEXT, *PHW_TIME_CONTEXT; 00054 00055 typedef struct _HW_EVENT_DESCRIPTOR { 00056 BOOLEAN Enable; 00057 PKSEVENT_ENTRY EventEntry; 00058 PKSEVENTDATA EventData; 00059 __GNU_EXTENSION union { 00060 struct _HW_STREAM_OBJECT * StreamObject; 00061 struct _HW_DEVICE_EXTENSION *DeviceExtension; 00062 }; 00063 ULONG EnableEventSetIndex; 00064 PVOID HwInstanceExtension; 00065 ULONG Reserved; 00066 } HW_EVENT_DESCRIPTOR, *PHW_EVENT_DESCRIPTOR; 00067 00068 struct _HW_STREAM_REQUEST_BLOCK; 00069 00070 typedef VOID (STREAMAPI *PHW_RECEIVE_STREAM_DATA_SRB) (IN struct _HW_STREAM_REQUEST_BLOCK *SRB); 00071 typedef VOID (STREAMAPI *PHW_RECEIVE_STREAM_CONTROL_SRB) (IN struct _HW_STREAM_REQUEST_BLOCK *SRB); 00072 typedef NTSTATUS (STREAMAPI *PHW_EVENT_ROUTINE) (IN PHW_EVENT_DESCRIPTOR EventDescriptor); 00073 typedef VOID (STREAMAPI *PHW_CLOCK_FUNCTION) (IN PHW_TIME_CONTEXT HwTimeContext); 00074 00075 typedef struct _HW_CLOCK_OBJECT { 00076 PHW_CLOCK_FUNCTION HwClockFunction; 00077 ULONG ClockSupportFlags; 00078 ULONG Reserved[2]; 00079 } HW_CLOCK_OBJECT, *PHW_CLOCK_OBJECT; 00080 00081 #define CLOCK_SUPPORT_CAN_SET_ONBOARD_CLOCK 0x1 00082 #define CLOCK_SUPPORT_CAN_READ_ONBOARD_CLOCK 0x2 00083 #define CLOCK_SUPPORT_CAN_RETURN_STREAM_TIME 0x4 00084 00085 typedef struct _HW_STREAM_OBJECT { 00086 ULONG SizeOfThisPacket; 00087 ULONG StreamNumber; 00088 PVOID HwStreamExtension; 00089 PHW_RECEIVE_STREAM_DATA_SRB ReceiveDataPacket; 00090 PHW_RECEIVE_STREAM_CONTROL_SRB ReceiveControlPacket; 00091 HW_CLOCK_OBJECT HwClockObject; 00092 BOOLEAN Dma; 00093 BOOLEAN Pio; 00094 PVOID HwDeviceExtension; 00095 ULONG StreamHeaderMediaSpecific; 00096 ULONG StreamHeaderWorkspace; 00097 BOOLEAN Allocator; 00098 PHW_EVENT_ROUTINE HwEventRoutine; 00099 ULONG Reserved[2]; 00100 } HW_STREAM_OBJECT, *PHW_STREAM_OBJECT; 00101 00102 typedef struct _HW_STREAM_HEADER { 00103 ULONG NumberOfStreams; 00104 ULONG SizeOfHwStreamInformation; 00105 ULONG NumDevPropArrayEntries; 00106 PKSPROPERTY_SET DevicePropertiesArray; 00107 ULONG NumDevEventArrayEntries; 00108 PKSEVENT_SET DeviceEventsArray; 00109 PKSTOPOLOGY Topology; 00110 PHW_EVENT_ROUTINE DeviceEventRoutine; 00111 LONG NumDevMethodArrayEntries; 00112 PKSMETHOD_SET DeviceMethodsArray; 00113 } HW_STREAM_HEADER, *PHW_STREAM_HEADER; 00114 00115 typedef struct _HW_STREAM_INFORMATION { 00116 ULONG NumberOfPossibleInstances; 00117 KSPIN_DATAFLOW DataFlow; 00118 BOOLEAN DataAccessible; 00119 ULONG NumberOfFormatArrayEntries; 00120 PKSDATAFORMAT* StreamFormatsArray; 00121 PVOID ClassReserved[4]; 00122 ULONG NumStreamPropArrayEntries; 00123 PKSPROPERTY_SET StreamPropertiesArray; 00124 ULONG NumStreamEventArrayEntries; 00125 PKSEVENT_SET StreamEventsArray; 00126 GUID* Category; 00127 GUID* Name; 00128 ULONG MediumsCount; 00129 const KSPIN_MEDIUM* Mediums; 00130 BOOLEAN BridgeStream; 00131 ULONG Reserved[2]; 00132 } HW_STREAM_INFORMATION, *PHW_STREAM_INFORMATION; 00133 00134 typedef struct _HW_STREAM_DESCRIPTOR { 00135 HW_STREAM_HEADER StreamHeader; 00136 HW_STREAM_INFORMATION StreamInfo; 00137 } HW_STREAM_DESCRIPTOR, *PHW_STREAM_DESCRIPTOR; 00138 00139 typedef struct _STREAM_TIME_REFERENCE { 00140 STREAM_TIMESTAMP CurrentOnboardClockValue; 00141 LARGE_INTEGER OnboardClockFrequency; 00142 LARGE_INTEGER CurrentSystemTime; 00143 ULONG Reserved[2]; 00144 } STREAM_TIME_REFERENCE, *PSTREAM_TIME_REFERENCE; 00145 00146 typedef struct _STREAM_DATA_INTERSECT_INFO { 00147 ULONG StreamNumber; 00148 PKSDATARANGE DataRange; 00149 PVOID DataFormatBuffer; 00150 ULONG SizeOfDataFormatBuffer; 00151 } STREAM_DATA_INTERSECT_INFO, *PSTREAM_DATA_INTERSECT_INFO; 00152 00153 typedef struct _STREAM_PROPERTY_DESCRIPTOR { 00154 PKSPROPERTY Property; 00155 ULONG PropertySetID; 00156 PVOID PropertyInfo; 00157 ULONG PropertyInputSize; 00158 ULONG PropertyOutputSize; 00159 } STREAM_PROPERTY_DESCRIPTOR, *PSTREAM_PROPERTY_DESCRIPTOR; 00160 00161 typedef struct _STREAM_METHOD_DESCRIPTOR { 00162 ULONG MethodSetID; 00163 PKSMETHOD Method; 00164 PVOID MethodInfo; 00165 LONG MethodInputSize; 00166 LONG MethodOutputSize; 00167 } STREAM_METHOD_DESCRIPTOR, *PSTREAM_METHOD_DESCRIPTOR; 00168 00169 #define STREAM_REQUEST_BLOCK_SIZE sizeof(STREAM_REQUEST_BLOCK) 00170 00171 typedef enum _SRB_COMMAND { 00172 SRB_READ_DATA, 00173 SRB_WRITE_DATA, 00174 SRB_GET_STREAM_STATE, 00175 SRB_SET_STREAM_STATE, 00176 SRB_SET_STREAM_PROPERTY, 00177 SRB_GET_STREAM_PROPERTY, 00178 SRB_OPEN_MASTER_CLOCK, 00179 00180 SRB_INDICATE_MASTER_CLOCK, 00181 SRB_UNKNOWN_STREAM_COMMAND, 00182 SRB_SET_STREAM_RATE, 00183 SRB_PROPOSE_DATA_FORMAT, 00184 SRB_CLOSE_MASTER_CLOCK, 00185 SRB_PROPOSE_STREAM_RATE, 00186 SRB_SET_DATA_FORMAT, 00187 SRB_GET_DATA_FORMAT, 00188 SRB_BEGIN_FLUSH, 00189 SRB_END_FLUSH, 00190 00191 SRB_GET_STREAM_INFO = 0x100, 00192 SRB_OPEN_STREAM, 00193 SRB_CLOSE_STREAM, 00194 SRB_OPEN_DEVICE_INSTANCE, 00195 SRB_CLOSE_DEVICE_INSTANCE, 00196 SRB_GET_DEVICE_PROPERTY, 00197 SRB_SET_DEVICE_PROPERTY, 00198 SRB_INITIALIZE_DEVICE, 00199 SRB_CHANGE_POWER_STATE, 00200 SRB_UNINITIALIZE_DEVICE, 00201 SRB_UNKNOWN_DEVICE_COMMAND, 00202 SRB_PAGING_OUT_DRIVER, 00203 SRB_GET_DATA_INTERSECTION, 00204 SRB_INITIALIZATION_COMPLETE, 00205 SRB_SURPRISE_REMOVAL 00206 00207 #if (NTDDI_VERSION >= NTDDI_WINXP) 00208 ,SRB_DEVICE_METHOD 00209 ,SRB_STREAM_METHOD 00210 #if ( (NTDDI_VERSION >= NTDDI_WINXPSP2) && (NTDDI_VERSION < NTDDI_WS03) ) || (NTDDI_VERSION >= NTDDI_WS03SP1) 00211 ,SRB_NOTIFY_IDLE_STATE 00212 #endif 00213 #endif 00214 } SRB_COMMAND; 00215 00216 typedef struct { 00217 PHYSICAL_ADDRESS PhysicalAddress; 00218 ULONG Length; 00219 } KSSCATTER_GATHER, *PKSSCATTER_GATHER; 00220 00221 00222 typedef struct _HW_STREAM_REQUEST_BLOCK { 00223 ULONG SizeOfThisPacket; 00224 SRB_COMMAND Command; 00225 NTSTATUS Status; 00226 PHW_STREAM_OBJECT StreamObject; 00227 PVOID HwDeviceExtension; 00228 PVOID SRBExtension; 00229 00230 union _CommandData { 00231 PKSSTREAM_HEADER DataBufferArray; 00232 PHW_STREAM_DESCRIPTOR StreamBuffer; 00233 KSSTATE StreamState; 00234 PSTREAM_TIME_REFERENCE TimeReference; 00235 PSTREAM_PROPERTY_DESCRIPTOR PropertyInfo; 00236 PKSDATAFORMAT OpenFormat; 00237 struct _PORT_CONFIGURATION_INFORMATION *ConfigInfo; 00238 HANDLE MasterClockHandle; 00239 DEVICE_POWER_STATE DeviceState; 00240 PSTREAM_DATA_INTERSECT_INFO IntersectInfo; 00241 00242 #if (NTDDI_VERSION >= NTDDI_WINXP) 00243 PVOID MethodInfo; 00244 LONG FilterTypeIndex; 00245 #if ( (NTDDI_VERSION >= NTDDI_WINXPSP2) && (NTDDI_VERSION < NTDDI_WS03) ) || (NTDDI_VERSION >= NTDDI_WS03SP1) 00246 BOOLEAN Idle; 00247 #endif 00248 #endif 00249 } CommandData; 00250 00251 ULONG NumberOfBuffers; 00252 ULONG TimeoutCounter; 00253 ULONG TimeoutOriginal; 00254 struct _HW_STREAM_REQUEST_BLOCK *NextSRB; 00255 00256 PIRP Irp; 00257 ULONG Flags; 00258 PVOID HwInstanceExtension; 00259 00260 __GNU_EXTENSION union { 00261 ULONG NumberOfBytesToTransfer; 00262 ULONG ActualBytesTransferred; 00263 }; 00264 00265 PKSSCATTER_GATHER ScatterGatherBuffer; 00266 ULONG NumberOfPhysicalPages; 00267 ULONG NumberOfScatterGatherElements; 00268 ULONG Reserved[1]; 00269 } HW_STREAM_REQUEST_BLOCK, *PHW_STREAM_REQUEST_BLOCK; 00270 00271 #define SRB_HW_FLAGS_DATA_TRANSFER 0x01 00272 #define SRB_HW_FLAGS_STREAM_REQUEST 0x2 00273 00274 typedef enum { 00275 PerRequestExtension, 00276 DmaBuffer, 00277 SRBDataBuffer 00278 } STREAM_BUFFER_TYPE; 00279 00280 typedef struct _ACCESS_RANGE { 00281 STREAM_PHYSICAL_ADDRESS RangeStart; 00282 ULONG RangeLength; 00283 BOOLEAN RangeInMemory; 00284 ULONG Reserved; 00285 } ACCESS_RANGE, *PACCESS_RANGE; 00286 00287 typedef struct _PORT_CONFIGURATION_INFORMATION { 00288 ULONG SizeOfThisPacket; 00289 PVOID HwDeviceExtension; 00290 PDEVICE_OBJECT ClassDeviceObject; 00291 PDEVICE_OBJECT PhysicalDeviceObject; 00292 ULONG SystemIoBusNumber; 00293 INTERFACE_TYPE AdapterInterfaceType; 00294 ULONG BusInterruptLevel; 00295 ULONG BusInterruptVector; 00296 KINTERRUPT_MODE InterruptMode; 00297 ULONG DmaChannel; 00298 ULONG NumberOfAccessRanges; 00299 PACCESS_RANGE AccessRanges; 00300 ULONG StreamDescriptorSize; 00301 PIRP Irp; 00302 PKINTERRUPT InterruptObject; 00303 PADAPTER_OBJECT DmaAdapterObject; 00304 PDEVICE_OBJECT RealPhysicalDeviceObject; 00305 ULONG Reserved[1]; 00306 } PORT_CONFIGURATION_INFORMATION, *PPORT_CONFIGURATION_INFORMATION; 00307 00308 typedef VOID (STREAMAPI *PHW_RECEIVE_DEVICE_SRB) (IN PHW_STREAM_REQUEST_BLOCK SRB); 00309 typedef VOID (STREAMAPI *PHW_CANCEL_SRB) (IN PHW_STREAM_REQUEST_BLOCK SRB); 00310 typedef VOID (STREAMAPI *PHW_REQUEST_TIMEOUT_HANDLER) (IN PHW_STREAM_REQUEST_BLOCK SRB); 00311 typedef BOOLEAN (STREAMAPI *PHW_INTERRUPT) (IN PVOID DeviceExtension); 00312 typedef VOID (STREAMAPI *PHW_TIMER_ROUTINE) (IN PVOID Context); 00313 typedef VOID (STREAMAPI *PHW_PRIORITY_ROUTINE) (IN PVOID Context); 00314 typedef VOID (STREAMAPI *PHW_QUERY_CLOCK_ROUTINE) (IN PHW_TIME_CONTEXT TimeContext); 00315 typedef BOOLEAN (STREAMAPI *PHW_RESET_ADAPTER) (IN PVOID DeviceExtension); 00316 00317 typedef enum _STREAM_MINIDRIVER_STREAM_NOTIFICATION_TYPE { 00318 ReadyForNextStreamDataRequest, 00319 ReadyForNextStreamControlRequest, 00320 HardwareStarved, 00321 StreamRequestComplete, 00322 SignalMultipleStreamEvents, 00323 SignalStreamEvent, 00324 DeleteStreamEvent, 00325 StreamNotificationMaximum 00326 } STREAM_MINIDRIVER_STREAM_NOTIFICATION_TYPE, *PSTREAM_MINIDRIVER_STREAM_NOTIFICATION_TYPE; 00327 00328 typedef enum _STREAM_MINIDRIVER_DEVICE_NOTIFICATION_TYPE { 00329 ReadyForNextDeviceRequest, 00330 DeviceRequestComplete, 00331 SignalMultipleDeviceEvents, 00332 SignalDeviceEvent, 00333 DeleteDeviceEvent, 00334 #if (NTDDI_VERSION >= NTDDI_WINXP) 00335 SignalMultipleDeviceInstanceEvents, 00336 #endif 00337 DeviceNotificationMaximum 00338 } STREAM_MINIDRIVER_DEVICE_NOTIFICATION_TYPE, *PSTREAM_MINIDRIVER_DEVICE_NOTIFICATION_TYPE; 00339 00340 #define STREAM_CLASS_VERSION_20 0x0200 00341 00342 typedef struct _HW_INITIALIZATION_DATA { 00343 #if (NTDDI_VERSION >= NTDDI_WINXP) 00344 __GNU_EXTENSION union { 00345 ULONG HwInitializationDataSize; 00346 __GNU_EXTENSION struct { 00347 USHORT SizeOfThisPacket; 00348 USHORT StreamClassVersion; 00349 }; 00350 }; 00351 #else 00352 ULONG HwInitializationDataSize; 00353 #endif /* NTDDI_VERSION >= NTDDI_WINXP */ 00354 00355 PHW_INTERRUPT HwInterrupt; 00356 PHW_RECEIVE_DEVICE_SRB HwReceivePacket; 00357 PHW_CANCEL_SRB HwCancelPacket; 00358 PHW_REQUEST_TIMEOUT_HANDLER HwRequestTimeoutHandler; 00359 ULONG DeviceExtensionSize; 00360 ULONG PerRequestExtensionSize; 00361 ULONG PerStreamExtensionSize; 00362 ULONG FilterInstanceExtensionSize; 00363 BOOLEAN BusMasterDMA; 00364 BOOLEAN Dma24BitAddresses; 00365 ULONG BufferAlignment; 00366 BOOLEAN TurnOffSynchronization; 00367 ULONG DmaBufferSize; 00368 00369 #if (NTDDI_VERSION >= NTDDI_WINXP) 00370 ULONG NumNameExtensions; 00371 PWCHAR *NameExtensionArray; 00372 #else 00373 ULONG Reserved[2]; 00374 #endif 00375 } HW_INITIALIZATION_DATA, *PHW_INITIALIZATION_DATA; 00376 00377 typedef enum _STREAM_PRIORITY { 00378 High, 00379 Dispatch, 00380 Low, 00381 LowToHigh 00382 } STREAM_PRIORITY, *PSTREAM_PRIORITY; 00383 00384 00385 VOID 00386 StreamClassAbortOutstandingRequests( 00387 IN PVOID HwDeviceExtension, 00388 IN PHW_STREAM_OBJECT HwStreamObject, 00389 IN NTSTATUS Status); 00390 00391 VOID 00392 STREAMAPI 00393 StreamClassCallAtNewPriority( 00394 IN PHW_STREAM_OBJECT StreamObject, 00395 IN PVOID HwDeviceExtension, 00396 IN STREAM_PRIORITY Priority, 00397 IN PHW_PRIORITY_ROUTINE PriorityRoutine, 00398 IN PVOID Context); 00399 00400 VOID 00401 STREAMAPI 00402 StreamClassCompleteRequestAndMarkQueueReady( 00403 IN PHW_STREAM_REQUEST_BLOCK Srb); 00404 00405 VOID 00406 STREAMAPI 00407 StreamClassDebugAssert( 00408 IN PCHAR File, 00409 IN ULONG Line, 00410 IN PCHAR AssertText, 00411 IN ULONG AssertValue); 00412 00413 VOID 00414 __cdecl 00415 StreamClassDebugPrint( 00416 IN STREAM_DEBUG_LEVEL DebugPrintLevel, 00417 IN PCCHAR DebugMessage, 00418 ...); 00419 00420 VOID 00421 __cdecl 00422 StreamClassDeviceNotification( 00423 IN STREAM_MINIDRIVER_DEVICE_NOTIFICATION_TYPE NotificationType, 00424 IN PVOID HwDeviceExtension, 00425 IN PHW_STREAM_REQUEST_BLOCK pSrb, 00426 IN PKSEVENT_ENTRY EventEntry, 00427 IN GUID *EventSet, 00428 IN ULONG EventId); 00429 00430 VOID 00431 STREAMAPI 00432 StreamClassFilterReenumerateStreams( 00433 IN PVOID HwInstanceExtension, 00434 IN ULONG StreamDescriptorSize); 00435 00436 PVOID 00437 STREAMAPI 00438 StreamClassGetDmaBuffer( 00439 IN PVOID HwDeviceExtension); 00440 00441 00442 PKSEVENT_ENTRY 00443 StreamClassGetNextEvent( 00444 IN PVOID HwInstanceExtension_OR_HwDeviceExtension, 00445 IN PHW_STREAM_OBJECT HwStreamObject, 00446 IN GUID * EventGuid, 00447 IN ULONG EventItem, 00448 IN PKSEVENT_ENTRY CurrentEvent); 00449 00450 STREAM_PHYSICAL_ADDRESS 00451 STREAMAPI 00452 StreamClassGetPhysicalAddress( 00453 IN PVOID HwDeviceExtension, 00454 IN PHW_STREAM_REQUEST_BLOCK HwSRB, 00455 IN PVOID VirtualAddress, 00456 IN STREAM_BUFFER_TYPE Type, 00457 IN ULONG *Length); 00458 00459 VOID 00460 StreamClassQueryMasterClock( 00461 IN PHW_STREAM_OBJECT HwStreamObject, 00462 IN HANDLE MasterClockHandle, 00463 IN TIME_FUNCTION TimeFunction, 00464 IN PHW_QUERY_CLOCK_ROUTINE ClockCallbackRoutine); 00465 00466 VOID 00467 STREAMAPI 00468 StreamClassQueryMasterClockSync( 00469 IN HANDLE MasterClockHandle, 00470 IN PHW_TIME_CONTEXT TimeContext); 00471 00472 BOOLEAN 00473 STREAMAPI 00474 StreamClassReadWriteConfig( 00475 IN PVOID HwDeviceExtension, 00476 IN BOOLEAN Read, 00477 IN PVOID Buffer, 00478 IN ULONG Offset, 00479 IN ULONG Length); 00480 00481 VOID 00482 STREAMAPI 00483 StreamClassReenumerateStreams( 00484 IN PVOID HwDeviceExtension, 00485 IN ULONG StreamDescriptorSize); 00486 00487 NTSTATUS 00488 STREAMAPI 00489 StreamClassRegisterAdapter( 00490 IN PVOID Argument1, 00491 IN PVOID Argument2, 00492 IN PHW_INITIALIZATION_DATA HwInitializationData); 00493 00494 #define StreamClassRegisterMinidriver StreamClassRegisterAdapter 00495 00496 NTSTATUS 00497 StreamClassRegisterFilterWithNoKSPins( 00498 IN PDEVICE_OBJECT DeviceObject, 00499 IN const GUID *InterfaceClassGUID, 00500 IN ULONG PinCount, 00501 IN BOOLEAN *PinDirection, 00502 IN KSPIN_MEDIUM *MediumList, 00503 IN GUID *CategoryList); 00504 00505 VOID 00506 STREAMAPI 00507 StreamClassScheduleTimer( 00508 IN PHW_STREAM_OBJECT StreamObject, 00509 IN PVOID HwDeviceExtension, 00510 IN ULONG NumberOfMicroseconds, 00511 IN PHW_TIMER_ROUTINE TimerRoutine, 00512 IN PVOID Context); 00513 00514 VOID 00515 __cdecl 00516 StreamClassStreamNotification( 00517 IN STREAM_MINIDRIVER_STREAM_NOTIFICATION_TYPE NotificationType, 00518 IN PHW_STREAM_OBJECT StreamObject, 00519 IN ...); 00520 00521 #endif /* _STREAM_H */ Generated on Mon May 28 2012 04:30:08 for ReactOS by
1.7.6.1
|