KSALLOCATOR_FRAMING structure

The KSALLOCATOR_FRAMING structure is used to query framing requirements and submit allocator creation requests.

Syntax

typedef struct {
  union {
    ULONG OptionsFlags;
    ULONG RequirementsFlags;
  };
#if ...
  POOL_TYPE PoolType;
#else
  ULONG     PoolType;
#endif
  ULONG     Frames;
  ULONG     FrameSize;
  union {
    ULONG FileAlignment;
    LONG  FramePitch;
  };
  ULONG     Reserved;
} KSALLOCATOR_FRAMING, *PKSALLOCATOR_FRAMING;

Members

__unnamed_union_0e16_76

__unnamed_union_0e16_76.OptionsFlags

__unnamed_union_0e16_76.RequirementsFlags

PoolType.#1163973294

PoolType.#491078748

Frames

Specifies the total number of allowable outstanding frames. Zero indicates that the filter has no requirement for this member.

FrameSize

Specifies the total size of the frame, including prefix and postfix. Zero indicates that the filter has no requirement for this member.

__unnamed_union_0e16_77

__unnamed_union_0e16_77.FileAlignment

__unnamed_union_0e16_77.FramePitch

Reserved

Reserved for system use. Set to zero.

Remarks

Use KSALLOCATOR_FRAMING to submit an allocator creation request to a handle of a sink by using IRP_MJ_CREATE.

When you specify a value for the FileAlignment member, the smallest allocation alignment is 1 byte (FILE_BYTE_ALIGNMENT). Software that functions as an allocation should support 4-byte alignment (FILE_LONG_ALIGNMENT), if possible.

Requirements

   
Header ks.h (include Ks.h)

See Also

KsCreateAllocator