22 #include "JackCoreMidiPort.h"
23 #include "JackCoreMidiUtil.h"
24 #include "JackError.h"
28 JackCoreMidiPort::JackCoreMidiPort(
double time_ratio)
31 this->time_ratio = time_ratio;
34 JackCoreMidiPort::~JackCoreMidiPort()
40 JackCoreMidiPort::GetAlias()
47 JackCoreMidiPort::GetEndpoint()
54 JackCoreMidiPort::GetName()
61 JackCoreMidiPort::Initialize(
const char *alias_name,
const char *client_name,
62 const char *driver_name,
int index,
63 MIDIEndpointRef endpoint,
bool is_output)
65 char endpoint_name[REAL_JACK_PORT_NAME_SIZE];
66 CFStringRef endpoint_name_ref;
69 OSStatus result = MIDIObjectGetStringProperty(endpoint, kMIDIPropertyName,
71 if (result != noErr) {
72 WriteMacOSError(
"JackCoreMidiPort::Initialize",
73 "MIDIObjectGetStringProperty", result);
76 res = CFStringGetCString(endpoint_name_ref, endpoint_name,
77 sizeof(endpoint_name), 0);
78 CFRelease(endpoint_name_ref);
80 jack_error(
"JackCoreMidiPort::Initialize - failed to allocate memory "
81 "for endpoint name.");
83 snprintf(alias,
sizeof(alias),
"%s:%s:%s%d", alias_name,
84 driver_name, is_output ?
"in" :
"out", num);
86 snprintf(alias,
sizeof(alias),
"%s:%s:%s%d", alias_name,
87 endpoint_name, is_output ?
"in" :
"out", num);
89 snprintf(name,
sizeof(name),
"%s:%s_%d", client_name,
90 is_output ?
"playback" :
"capture", num);
91 this->endpoint = endpoint;
SERVER_EXPORT void jack_error(const char *fmt,...)