共用方式為


IAllocatorMXF 介面 (dmusicks.h)

IAllocatorMXF 介面會管理 DirectMusic 數據流的緩衝區記憶體。 DMus 埠驅動程式會實作此介面,並將其公開至 DMus 迷你埠驅動程式。 DMus 埠驅動程式會建立 IAllocatorMXF 物件,並將指標傳遞至 DMus 迷你埠驅動程式的 IMiniportDMus::NewStream 方法。 IAllocatorMXF 繼承自 IMXF 介面。

IAllocatorMXF 是迷你埠驅動程式與埠驅動程序內部 配置器通訊的介面,該配置器會配置和管理 DMUS_KERNEL_EVENT 結構的集區重複使用。 每個結構都可以包含時間戳MIDI事件。

配置器也會擷取儲存大型事件所需的額外記憶體配置。 DMUS_KERNEL_EVENT的 uData 成員是指針大小的聯集:32 位系統上的四個字節,64 位系統上有 8 個字節。 如果數據小到足以容納該空間,則 uData 將包含實際的 MIDI 數據。 不過,如果該事件的數據大於 4 或 8 位元組指標,則 cbEvent 成員表示這個事實,而且 uData 包含緩衝區的指標,而不是實際的 MIDI 數據。 此緩衝區是由配置器管理,而且是任何埠驅動程序實作的常數大小。

遺產

IAllocatorMXF 介面繼承自 IUnknown 介面。 IAllocatorMXF 也有下列類型的成員:

方法

IAllocatorMXF 介面具有這些方法。

 
IAllocatorMXF::GetBuffer

GetBuffer 方法會配置長MIDI事件的緩衝區。
IAllocatorMXF::GetBufferSize

GetBufferSize 方法會從配置器取得緩衝區大小。
IAllocatorMXF::GetMessage

GetMessage 方法可作為任何 DirectMusic 核心模式元件的擷取點,該元件會利用埠驅動程式的配置器重複使用DMUS_KERNEL_EVENT結構。
IAllocatorMXF::P utBuffer

迷你埠驅動程式目前未使用這個方法。 PutBuffer 方法會將緩衝區傳遞至配置器,但無論如何呼叫 IMXF::P utMessage 時,就會自動發生此情況。

要求

要求 價值
目標平臺 窗戶
標頭 dmusicks.h