1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-10-18 16:41:14 +02:00

Update portmidi to SVN r227.

This commit is contained in:
lllucius
2013-10-31 07:33:41 +00:00
parent a30f9e913b
commit bb63fa0d07
118 changed files with 15017 additions and 12291 deletions

View File

@@ -0,0 +1,53 @@
// pm_managed.h
#pragma once
#include "portmidi.h"
using namespace System;
namespace pm_managed {
public ref class MpmDeviceInfo
{
public:
int structVersion;
System::String^ interf; /* underlying MIDI API, e.g. MMSystem or DirectX */
System::String^ name; /* device name, e.g. USB MidiSport 1x1 */
bool input; /* true iff input is available */
bool output; /* true iff output is available */
int opened; /* used by generic PortMidi code to do error checking on arguments */
MpmDeviceInfo(const PmDeviceInfo* info)
{
structVersion = info->structVersion;
input = (info->input != 0);
output = (info->output != 0);
opened = info->opened;
interf = gcnew System::String(info->interf);
name = gcnew System::String(info->name);
}
};
public ref class ManagedPortMIDI
{
public:
int Pm_Initialize()
{
::Pm_Initialize();
return 0;
}
int Pm_CountDevices()
{
return ::Pm_CountDevices();
}
MpmDeviceInfo^ Pm_GetDeviceInfo(int id)
{
return gcnew MpmDeviceInfo(::Pm_GetDeviceInfo(id));
}
};
}