dxd - dynax driver framework 3.0.0d222
cross platform open source driver development framework
Loading...
Searching...
No Matches
dx::midi::services Namespace Reference

Windows MIDI Services: the MIDI service of Windows 11 (midisrv), its endpoints spoken to in Universal MIDI Packets through the App SDK (Windows.Devices.Midi2). More...

Classes

class  _device
 Windows MIDI Services client device: one UMP endpoint. More...
class  device
 Windows MIDI Services client device. More...
class  driver
 Windows MIDI Services client driver interface class. More...
class  stream
 a stream of a Windows MIDI Services endpoint: Universal MIDI Packets through the device's connection, an ump::circular ring on this side More...
struct  target
 a stream of an endpoint: the direction, the index in the device More...

Typedefs

typedef dx::stream::desc< target, 2, 1 > desc
typedef std::map< std::string, std::string > dictionary
 matching dictionary: verb -> case-insensitive substring; id -> the endpoint device id, name -> the endpoint's name, vendor -> the manufacturer, transport -> the transport code (KS, KSA, LOOP, VIRT, NET, BLE, DIAG), vid/pid -> the USB ids in hex. A driver's match is a vector of them: any dictionary whose entries all match takes the endpoint, an empty vector takes every endpoint

Functions

int32_t __stdcall activation (void *id, const ::winrt::guid &iid, void **factory) noexcept
 the registration free activation: what Windows registers is taken from it, the SDK's own classes from its DLL beside the binary or in System32
bool available () noexcept try
 whether the SDK stands on this machine: its MidiApi resolves
dx::stream::bus::bus bus (const std::string &transport) noexcept
 the dx::stream::bus an endpoint's transport stands for
 catch (...)
void install () noexcept
 installs the activation once, ahead of the first WinRT call

Detailed Description

Windows MIDI Services: the MIDI service of Windows 11 (midisrv), its endpoints spoken to in Universal MIDI Packets through the App SDK (Windows.Devices.Midi2).

The SDK is a WinRT component whose DLL ships beside the binary: activation is registration free - activation() answers what Windows registers, and loads Windows.Devices.Midi2.dll for the classes it does not - so a binary carrying the driver loads on a machine without the service and the driver says it is not installed there (available()).

Typedef Documentation

◆ desc

◆ dictionary

typedef std::map<std::string, std::string> dx::midi::services::dictionary

matching dictionary: verb -> case-insensitive substring; id -> the endpoint device id, name -> the endpoint's name, vendor -> the manufacturer, transport -> the transport code (KS, KSA, LOOP, VIRT, NET, BLE, DIAG), vid/pid -> the USB ids in hex. A driver's match is a vector of them: any dictionary whose entries all match takes the endpoint, an empty vector takes every endpoint

Function Documentation

◆ activation()

int32_t __stdcall dx::midi::services::activation ( void * id,
const ::winrt::guid & iid,
void ** factory )
inlinenoexcept

the registration free activation: what Windows registers is taken from it, the SDK's own classes from its DLL beside the binary or in System32

Here is the call graph for this function:
Here is the caller graph for this function:

◆ available()

bool dx::midi::services::available ( )
inlinenoexcept

whether the SDK stands on this machine: its MidiApi resolves

Here is the call graph for this function:
Here is the caller graph for this function:

◆ bus()

dx::stream::bus::bus dx::midi::services::bus ( const std::string & transport)
inlinenoexcept

the dx::stream::bus an endpoint's transport stands for

Here is the caller graph for this function:

◆ catch()

dx::midi::services::catch ( ...)

◆ install()

void dx::midi::services::install ( )
inlinenoexcept

installs the activation once, ahead of the first WinRT call

Here is the call graph for this function:
Here is the caller graph for this function:

(c) copyright 2009 dynamic acoustics e.U. generated on

a closed source license may be obtained by requesting a written permission from dynamic acoustics e.U.
however - governmental use generally and military use especially is strictly prohibited though.