IMXF Interfaces
Todo o transporte MIDI na porta DirectMusic e no driver de miniporto é realizado usando a mesma interface: IMXF.
IMXF é a interface COM para um filtro de transformação MIDI DirectMusic. O driver de miniporto, o sequenciador e outras entidades no driver de porta que lidam com dados MIDI usam IMXF como interface COM comum. Quando o driver de miniporto implementa essa interface, ele pode participar do transporte MIDI. IPortDMus, que reside em PortCls, gerencia o IMXF. A interface do dispositivo de captura para capturar o coletor também é uma interface IMXF .
Os dados MIDI são transportados entre o modo de usuário e o modo kernel em buffers de dados com carimbo de data/hora empacotados. O driver de porta do kernel divide esses buffers em eventos individuais (consulte DMUS_KERNEL_EVENT). O sequenciador MIDI de alta resolução passa esses eventos para o driver de miniporto quando o tempo de gatilho ocorre.
No lado de entrada, o driver da porta do kernel extrai mensagens de entrada individuais do driver de miniport e cria buffers empacotados para passar para o modo de usuário. Assim, o modelo de transporte de dados para drivers de miniport directmusic consiste em IMXF::P utMessage e IAllocatorMXF::GetMessage.
A interface IMXF dá suporte aos seguintes métodos:
A interface IAllocatorMXF estende o IMXF adicionando os seguintes métodos:
Para obter mais informações sobre o uso dessas interfaces, consulte Allocator.