Author: akhaldi Date: Fri Aug 2 23:39:54 2013 New Revision: 59620
URL: http://svn.reactos.org/svn/reactos?rev=59620&view=rev Log: [DDK] * Annotate strmini.h.
Modified: trunk/reactos/include/ddk/strmini.h
Modified: trunk/reactos/include/ddk/strmini.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/include/ddk/strmini.h?rev=5... ============================================================================== --- trunk/reactos/include/ddk/strmini.h [iso-8859-1] (original) +++ trunk/reactos/include/ddk/strmini.h [iso-8859-1] Fri Aug 2 23:39:54 2013 @@ -117,16 +117,16 @@ KSPIN_DATAFLOW DataFlow; BOOLEAN DataAccessible; ULONG NumberOfFormatArrayEntries; - PKSDATAFORMAT* StreamFormatsArray; + _Field_size_(NumberOfFormatArrayEntries) PKSDATAFORMAT* StreamFormatsArray; PVOID ClassReserved[4]; ULONG NumStreamPropArrayEntries; - PKSPROPERTY_SET StreamPropertiesArray; + _Field_size_(NumStreamPropArrayEntries) PKSPROPERTY_SET StreamPropertiesArray; ULONG NumStreamEventArrayEntries; - PKSEVENT_SET StreamEventsArray; + _Field_size_(NumStreamEventArrayEntries) PKSEVENT_SET StreamEventsArray; GUID* Category; GUID* Name; ULONG MediumsCount; - const KSPIN_MEDIUM* Mediums; + _Field_size_(MediumsCount) const KSPIN_MEDIUM* Mediums; BOOLEAN BridgeStream; ULONG Reserved[2]; } HW_STREAM_INFORMATION, *PHW_STREAM_INFORMATION; @@ -146,7 +146,7 @@ typedef struct _STREAM_DATA_INTERSECT_INFO { ULONG StreamNumber; PKSDATARANGE DataRange; - PVOID DataFormatBuffer; + _Field_size_bytes_(SizeOfDataFormatBuffer) PVOID DataFormatBuffer; ULONG SizeOfDataFormatBuffer; } STREAM_DATA_INTERSECT_INFO, *PSTREAM_DATA_INTERSECT_INFO;
@@ -228,7 +228,7 @@ PVOID SRBExtension;
union _CommandData { - PKSSTREAM_HEADER DataBufferArray; + _Field_size_(_Inexpressible_(NumberOfBuffers)) PKSSTREAM_HEADER DataBufferArray; PHW_STREAM_DESCRIPTOR StreamBuffer; KSSTATE StreamState; PSTREAM_TIME_REFERENCE TimeReference; @@ -262,7 +262,7 @@ ULONG ActualBytesTransferred; };
- PKSSCATTER_GATHER ScatterGatherBuffer; + _Field_size_(NumberOfScatterGatherElements) PKSSCATTER_GATHER ScatterGatherBuffer; ULONG NumberOfPhysicalPages; ULONG NumberOfScatterGatherElements; ULONG Reserved[1]; @@ -278,7 +278,7 @@ } STREAM_BUFFER_TYPE;
typedef struct _ACCESS_RANGE { - STREAM_PHYSICAL_ADDRESS RangeStart; + _Field_size_bytes_(RangeLength) STREAM_PHYSICAL_ADDRESS RangeStart; ULONG RangeLength; BOOLEAN RangeInMemory; ULONG Reserved; @@ -296,7 +296,7 @@ KINTERRUPT_MODE InterruptMode; ULONG DmaChannel; ULONG NumberOfAccessRanges; - PACCESS_RANGE AccessRanges; + _Field_size_(NumberOfAccessRanges) PACCESS_RANGE AccessRanges; ULONG StreamDescriptorSize; PIRP Irp; PKINTERRUPT InterruptObject; @@ -368,7 +368,7 @@
#if (NTDDI_VERSION >= NTDDI_WINXP) ULONG NumNameExtensions; - PWCHAR *NameExtensionArray; + _Field_size_(NumNameExtensions) PWCHAR *NameExtensionArray; #else ULONG Reserved[2]; #endif @@ -384,37 +384,38 @@
VOID StreamClassAbortOutstandingRequests( - IN PVOID HwDeviceExtension, - IN PHW_STREAM_OBJECT HwStreamObject, - IN NTSTATUS Status); - -VOID -STREAMAPI + _In_ PVOID HwDeviceExtension, + _In_opt_ PHW_STREAM_OBJECT HwStreamObject, + _In_ NTSTATUS Status); + +VOID +STREAMAPI StreamClassCallAtNewPriority( - IN PHW_STREAM_OBJECT StreamObject, - IN PVOID HwDeviceExtension, - IN STREAM_PRIORITY Priority, - IN PHW_PRIORITY_ROUTINE PriorityRoutine, - IN PVOID Context); + _In_opt_ PHW_STREAM_OBJECT StreamObject, + _In_ PVOID HwDeviceExtension, + _In_ STREAM_PRIORITY Priority, + _In_ PHW_PRIORITY_ROUTINE PriorityRoutine, + _In_ PVOID Context);
VOID STREAMAPI StreamClassCompleteRequestAndMarkQueueReady( - IN PHW_STREAM_REQUEST_BLOCK Srb); - + _In_ PHW_STREAM_REQUEST_BLOCK Srb); + +__analysis_noreturn VOID STREAMAPI StreamClassDebugAssert( - IN PCHAR File, - IN ULONG Line, - IN PCHAR AssertText, - IN ULONG AssertValue); + _In_ PCHAR File, + _In_ ULONG Line, + _In_ PCHAR AssertText, + _In_ ULONG AssertValue);
VOID __cdecl StreamClassDebugPrint( - IN STREAM_DEBUG_LEVEL DebugPrintLevel, - IN PCCHAR DebugMessage, + _In_ STREAM_DEBUG_LEVEL DebugPrintLevel, + _In_ PCCHAR DebugMessage, ...);
VOID @@ -430,92 +431,96 @@ VOID STREAMAPI StreamClassFilterReenumerateStreams( - IN PVOID HwInstanceExtension, - IN ULONG StreamDescriptorSize); + _In_ PVOID HwInstanceExtension, + _In_ ULONG StreamDescriptorSize);
PVOID STREAMAPI StreamClassGetDmaBuffer( - IN PVOID HwDeviceExtension); + _In_ PVOID HwDeviceExtension);
PKSEVENT_ENTRY StreamClassGetNextEvent( - IN PVOID HwInstanceExtension_OR_HwDeviceExtension, - IN PHW_STREAM_OBJECT HwStreamObject, - IN GUID * EventGuid, - IN ULONG EventItem, - IN PKSEVENT_ENTRY CurrentEvent); + _In_opt_ PVOID HwInstanceExtension_OR_HwDeviceExtension, + _In_opt_ PHW_STREAM_OBJECT HwStreamObject, + _In_opt_ GUID *EventGuid, + _In_ ULONG EventItem, + _In_opt_ PKSEVENT_ENTRY CurrentEvent);
STREAM_PHYSICAL_ADDRESS STREAMAPI StreamClassGetPhysicalAddress( - IN PVOID HwDeviceExtension, - IN PHW_STREAM_REQUEST_BLOCK HwSRB, - IN PVOID VirtualAddress, - IN STREAM_BUFFER_TYPE Type, - IN ULONG *Length); + _In_ PVOID HwDeviceExtension, + _In_opt_ PHW_STREAM_REQUEST_BLOCK HwSRB, + _In_ PVOID VirtualAddress, + _In_ STREAM_BUFFER_TYPE Type, + _Out_ ULONG *Length);
VOID StreamClassQueryMasterClock( - IN PHW_STREAM_OBJECT HwStreamObject, - IN HANDLE MasterClockHandle, - IN TIME_FUNCTION TimeFunction, - IN PHW_QUERY_CLOCK_ROUTINE ClockCallbackRoutine); - + _In_ PHW_STREAM_OBJECT HwStreamObject, + _In_ HANDLE MasterClockHandle, + _In_ TIME_FUNCTION TimeFunction, + _In_ PHW_QUERY_CLOCK_ROUTINE ClockCallbackRoutine); + +_IRQL_requires_max_(DISPATCH_LEVEL) VOID STREAMAPI StreamClassQueryMasterClockSync( - IN HANDLE MasterClockHandle, - IN PHW_TIME_CONTEXT TimeContext); - + _In_ HANDLE MasterClockHandle, + _Inout_ PHW_TIME_CONTEXT TimeContext); + +_IRQL_requires_max_(PASSIVE_LEVEL) BOOLEAN STREAMAPI StreamClassReadWriteConfig( - IN PVOID HwDeviceExtension, - IN BOOLEAN Read, - IN PVOID Buffer, - IN ULONG Offset, - IN ULONG Length); + _In_ PVOID HwDeviceExtension, + _In_ BOOLEAN Read, + _Inout_updates_bytes_(Length) PVOID Buffer, + _In_ ULONG Offset, + _In_ ULONG Length);
VOID STREAMAPI StreamClassReenumerateStreams( - IN PVOID HwDeviceExtension, - IN ULONG StreamDescriptorSize); - + _In_ PVOID HwDeviceExtension, + _In_ ULONG StreamDescriptorSize); + +_IRQL_requires_max_(PASSIVE_LEVEL) NTSTATUS STREAMAPI StreamClassRegisterAdapter( - IN PVOID Argument1, - IN PVOID Argument2, - IN PHW_INITIALIZATION_DATA HwInitializationData); + _In_ PVOID Argument1, + _In_ PVOID Argument2, + _In_ PHW_INITIALIZATION_DATA HwInitializationData);
#define StreamClassRegisterMinidriver StreamClassRegisterAdapter
+_IRQL_requires_max_(APC_LEVEL) NTSTATUS StreamClassRegisterFilterWithNoKSPins( - IN PDEVICE_OBJECT DeviceObject, - IN const GUID *InterfaceClassGUID, - IN ULONG PinCount, - IN BOOLEAN *PinDirection, - IN KSPIN_MEDIUM *MediumList, - IN GUID *CategoryList); + _In_ PDEVICE_OBJECT DeviceObject, + _In_ const GUID *InterfaceClassGUID, + _In_ ULONG PinCount, + _In_reads_(PinCount) BOOL *PinDirection, + _In_reads_(PinCount) KSPIN_MEDIUM *MediumList, + _In_reads_opt_(PinCount) GUID *CategoryList);
VOID STREAMAPI StreamClassScheduleTimer( - IN PHW_STREAM_OBJECT StreamObject, - IN PVOID HwDeviceExtension, - IN ULONG NumberOfMicroseconds, - IN PHW_TIMER_ROUTINE TimerRoutine, - IN PVOID Context); + _In_opt_ PHW_STREAM_OBJECT StreamObject, + _In_ PVOID HwDeviceExtension, + _In_ ULONG NumberOfMicroseconds, + _In_ PHW_TIMER_ROUTINE TimerRoutine, + _In_ PVOID Context);
VOID __cdecl StreamClassStreamNotification( - IN STREAM_MINIDRIVER_STREAM_NOTIFICATION_TYPE NotificationType, - IN PHW_STREAM_OBJECT StreamObject, - IN ...); + _In_ STREAM_MINIDRIVER_STREAM_NOTIFICATION_TYPE NotificationType, + _In_ PHW_STREAM_OBJECT StreamObject, + ...);
#endif /* _STREAM_H */