21 #ifndef __JackRequest__
22 #define __JackRequest__
24 #include "JackConstants.h"
25 #include "JackError.h"
26 #include "JackPlatformPlug.h"
27 #include "JackChannel.h"
38 #define CheckRes(exp) { if ((exp) < 0) { jack_error("CheckRes error"); return -1; } }
39 #define CheckSize() { CheckRes(trans->Read(&fSize, sizeof(int))); if (fSize != Size()) { jack_error("CheckSize error size = %d Size() = %d", fSize, Size()); return -1; } }
45 enum JackSessionReply {
47 kImmediateSessionReply = 1,
48 kPendingSessionReply = 2
64 kSetTimeBaseClient = 5,
66 kDeactivateClient = 7,
68 kSetClientCapabilities = 9,
69 kGetPortConnections = 10,
70 kGetPortNConnections = 11,
71 kReleaseTimebase = 12,
72 kSetTimebaseCallback = 13,
78 kConnectNamePorts = 25,
79 kDisconnectNamePorts = 26,
80 kGetInternalClientName = 27,
81 kInternalClientHandle = 28,
82 kInternalClientLoad = 29,
83 kInternalClientUnload = 30,
88 kGetClientByUUID = 35,
89 kReserveClientName = 36,
90 kGetUUIDByClient = 37,
91 kClientHasSessionCallback = 38,
92 kComputeTotalLatencies = 39
101 JackRequest(RequestType type): fType(type), fSize(0)
109 return trans->Read(&fType,
sizeof(RequestType));
117 CheckRes(trans->Write(&fType,
sizeof(RequestType)));
118 return trans->Write(&fSize,
sizeof(
int));
121 virtual int Size() {
return 0; }
143 return trans->Read(&fResult,
sizeof(
int));
148 return trans->Write(&fResult,
sizeof(
int));
160 char fName[JACK_CLIENT_NAME_SIZE + 1];
169 :
JackRequest(JackRequest::kClientCheck), fProtocol(protocol), fOptions(options), fUUID(uuid), fOpen(open)
171 snprintf(fName,
sizeof(fName),
"%s", name);
177 CheckRes(trans->Read(&fName,
sizeof(fName)));
178 CheckRes(trans->Read(&fProtocol,
sizeof(
int)));
179 CheckRes(trans->Read(&fOptions,
sizeof(
int)));
180 CheckRes(trans->Read(&fUUID,
sizeof(
int)));
181 return trans->Read(&fOpen,
sizeof(
int));
186 CheckRes(JackRequest::Write(trans, Size()));
187 CheckRes(trans->Write(&fName,
sizeof(fName)));
188 CheckRes(trans->Write(&fProtocol,
sizeof(
int)));
189 CheckRes(trans->Write(&fOptions,
sizeof(
int)));
190 CheckRes(trans->Write(&fUUID,
sizeof(
int)));
191 return trans->Write(&fOpen,
sizeof(
int));
194 int Size() {
return sizeof(fName) + 4 *
sizeof(
int); }
205 char fName[JACK_CLIENT_NAME_SIZE + 1];
213 snprintf(fName,
sizeof(fName),
"%s", name);
218 CheckRes(JackResult::Read(trans));
219 CheckRes(trans->Read(&fName,
sizeof(fName)));
220 CheckRes(trans->Read(&fStatus,
sizeof(
int)));
226 CheckRes(JackResult::Write(trans));
227 CheckRes(trans->Write(&fName,
sizeof(fName)));
228 CheckRes(trans->Write(&fStatus,
sizeof(
int)));
243 char fName[JACK_CLIENT_NAME_SIZE + 1];
249 snprintf(fName,
sizeof(fName),
"%s", name);
257 CheckRes(trans->Read(&fPID,
sizeof(
int)));
258 CheckRes(trans->Read(&fUUID,
sizeof(
int)));
259 return trans->Read(&fName,
sizeof(fName));
264 CheckRes(JackRequest::Write(trans, Size()));
265 CheckRes(trans->Write(&fPID,
sizeof(
int)));
266 CheckRes(trans->Write(&fUUID,
sizeof(
int)));
267 return trans->Write(&fName,
sizeof(fName));
270 int Size() {
return 2 *
sizeof(int) +
sizeof(fName); }
286 :
JackResult(), fSharedEngine(-1), fSharedClient(-1), fSharedGraph(-1)
289 :
JackResult(result), fSharedEngine(index1), fSharedClient(index2), fSharedGraph(index3)
294 CheckRes(JackResult::Read(trans));
295 CheckRes(trans->Read(&fSharedEngine,
sizeof(
int)));
296 CheckRes(trans->Read(&fSharedClient,
sizeof(
int)));
297 CheckRes(trans->Read(&fSharedGraph,
sizeof(
int)));
303 CheckRes(JackResult::Write(trans));
304 CheckRes(trans->Write(&fSharedEngine,
sizeof(
int)));
305 CheckRes(trans->Write(&fSharedClient,
sizeof(
int)));
306 CheckRes(trans->Write(&fSharedGraph,
sizeof(
int)));
329 return trans->Read(&fRefNum,
sizeof(
int));
334 CheckRes(JackRequest::Write(trans, Size()));
335 return trans->Write(&fRefNum,
sizeof(
int));
338 int Size() {
return sizeof(int); }
354 :
JackRequest(JackRequest::kActivateClient), fRefNum(refnum), fIsRealTime(is_real_time)
360 CheckRes(trans->Read(&fRefNum,
sizeof(
int)));
361 return trans->Read(&fIsRealTime,
sizeof(
int));
366 CheckRes(JackRequest::Write(trans, Size()));
367 CheckRes(trans->Write(&fRefNum,
sizeof(
int)));
368 return trans->Write(&fIsRealTime,
sizeof(
int));
371 int Size() {
return 2 *
sizeof(int); }
391 return trans->Read(&fRefNum,
sizeof(
int));
396 CheckRes(JackRequest::Write(trans, Size()));
397 return trans->Write(&fRefNum,
sizeof(
int));
400 int Size() {
return sizeof(int); }
411 char fName[JACK_PORT_NAME_SIZE + 1];
412 char fPortType[JACK_PORT_TYPE_SIZE + 1];
414 unsigned int fBufferSize;
418 JackPortRegisterRequest(
int refnum,
const char* name,
const char* port_type,
unsigned int flags,
unsigned int buffer_size)
419 :
JackRequest(JackRequest::kRegisterPort), fRefNum(refnum), fFlags(flags), fBufferSize(buffer_size)
422 strcpy(fPortType, port_type);
428 CheckRes(trans->Read(&fRefNum,
sizeof(
int)));
429 CheckRes(trans->Read(&fName,
sizeof(fName)));
430 CheckRes(trans->Read(&fPortType,
sizeof(fPortType)));
431 CheckRes(trans->Read(&fFlags,
sizeof(
unsigned int)));
432 CheckRes(trans->Read(&fBufferSize,
sizeof(
unsigned int)));
438 CheckRes(JackRequest::Write(trans, Size()));
439 CheckRes(trans->Write(&fRefNum,
sizeof(
int)));
440 CheckRes(trans->Write(&fName,
sizeof(fName)));
441 CheckRes(trans->Write(&fPortType,
sizeof(fPortType)));
442 CheckRes(trans->Write(&fFlags,
sizeof(
unsigned int)));
443 CheckRes(trans->Write(&fBufferSize,
sizeof(
unsigned int)));
447 int Size() {
return sizeof(int) +
sizeof(fName) +
sizeof(fPortType) + 2 *
sizeof(
unsigned int); }
458 jack_port_id_t fPortIndex;
465 CheckRes(JackResult::Read(trans));
466 return trans->Read(&fPortIndex,
sizeof(jack_port_id_t));
471 CheckRes(JackResult::Write(trans));
472 return trans->Write(&fPortIndex,
sizeof(jack_port_id_t));
485 jack_port_id_t fPortIndex;
490 :
JackRequest(JackRequest::kUnRegisterPort), fRefNum(refnum), fPortIndex(index)
496 CheckRes(trans->Read(&fRefNum,
sizeof(
int)));
497 CheckRes(trans->Read(&fPortIndex,
sizeof(jack_port_id_t)));
503 CheckRes(JackRequest::Write(trans, Size()));
504 CheckRes(trans->Write(&fRefNum,
sizeof(
int)));
505 CheckRes(trans->Write(&fPortIndex,
sizeof(jack_port_id_t)));
509 int Size() {
return sizeof(int) +
sizeof(jack_port_id_t); }
520 char fSrc[JACK_PORT_NAME_SIZE + 1];
521 char fDst[JACK_PORT_NAME_SIZE + 1];
526 :
JackRequest(JackRequest::kConnectNamePorts), fRefNum(refnum)
528 strcpy(fSrc, src_name);
529 strcpy(fDst, dst_name);
535 CheckRes(trans->Read(&fRefNum,
sizeof(
int)));
536 CheckRes(trans->Read(&fSrc,
sizeof(fSrc)));
537 CheckRes(trans->Read(&fDst,
sizeof(fDst)));
543 CheckRes(JackRequest::Write(trans, Size()));
544 CheckRes(trans->Write(&fRefNum,
sizeof(
int)));
545 CheckRes(trans->Write(&fSrc,
sizeof(fSrc)));
546 CheckRes(trans->Write(&fDst,
sizeof(fDst)));
550 int Size() {
return sizeof(int) +
sizeof(fSrc) +
sizeof(fDst); }
562 char fSrc[JACK_PORT_NAME_SIZE + 1];
563 char fDst[JACK_PORT_NAME_SIZE + 1];
568 :
JackRequest(JackRequest::kDisconnectNamePorts), fRefNum(refnum)
570 strcpy(fSrc, src_name);
571 strcpy(fDst, dst_name);
577 CheckRes(trans->Read(&fRefNum,
sizeof(
int)));
578 CheckRes(trans->Read(&fSrc,
sizeof(fSrc)));
579 CheckRes(trans->Read(&fDst,
sizeof(fDst)));
585 CheckRes(JackRequest::Write(trans, Size()));
586 CheckRes(trans->Write(&fRefNum,
sizeof(
int)));
587 CheckRes(trans->Write(&fSrc,
sizeof(fSrc)));
588 CheckRes(trans->Write(&fDst,
sizeof(fDst)));
592 int Size() {
return sizeof(int) +
sizeof(fSrc) +
sizeof(fDst); }
610 :
JackRequest(JackRequest::kConnectPorts), fRefNum(refnum), fSrc(src), fDst(dst)
616 CheckRes(trans->Read(&fRefNum,
sizeof(
int)));
617 CheckRes(trans->Read(&fSrc,
sizeof(jack_port_id_t)));
618 CheckRes(trans->Read(&fDst,
sizeof(jack_port_id_t)));
624 CheckRes(JackRequest::Write(trans, Size()));
625 CheckRes(trans->Write(&fRefNum,
sizeof(
int)));
626 CheckRes(trans->Write(&fSrc,
sizeof(jack_port_id_t)));
627 CheckRes(trans->Write(&fDst,
sizeof(jack_port_id_t)));
631 int Size() {
return sizeof(int) +
sizeof(jack_port_id_t) +
sizeof(jack_port_id_t); }
648 :
JackRequest(JackRequest::kDisconnectPorts), fRefNum(refnum), fSrc(src), fDst(dst)
654 CheckRes(trans->Read(&fRefNum,
sizeof(
int)));
655 CheckRes(trans->Read(&fSrc,
sizeof(jack_port_id_t)));
656 CheckRes(trans->Read(&fDst,
sizeof(jack_port_id_t)));
662 CheckRes(JackRequest::Write(trans, Size()));
663 CheckRes(trans->Write(&fRefNum,
sizeof(
int)));
664 CheckRes(trans->Write(&fSrc,
sizeof(jack_port_id_t)));
665 CheckRes(trans->Write(&fDst,
sizeof(jack_port_id_t)));
669 int Size() {
return sizeof(int) +
sizeof(jack_port_id_t) +
sizeof(jack_port_id_t); }
680 jack_port_id_t fPort;
681 char fName[JACK_PORT_NAME_SIZE + 1];
686 :
JackRequest(JackRequest::kPortRename), fRefNum(refnum), fPort(port)
694 CheckRes(trans->Read(&fRefNum,
sizeof(
int)));
695 CheckRes(trans->Read(&fPort,
sizeof(jack_port_id_t)));
696 CheckRes(trans->Read(&fName,
sizeof(fName)));
702 CheckRes(JackRequest::Write(trans, Size()));
703 CheckRes(trans->Write(&fRefNum,
sizeof(
int)));
704 CheckRes(trans->Write(&fPort,
sizeof(jack_port_id_t)));
705 CheckRes(trans->Write(&fName,
sizeof(fName)));
709 int Size() {
return sizeof(int) +
sizeof(jack_port_id_t) +
sizeof(fName); }
720 jack_nframes_t fBufferSize;
725 :
JackRequest(JackRequest::kSetBufferSize), fBufferSize(buffer_size)
731 return trans->Read(&fBufferSize,
sizeof(jack_nframes_t));
736 CheckRes(JackRequest::Write(trans, Size()));
737 return trans->Write(&fBufferSize,
sizeof(jack_nframes_t));
740 int Size() {
return sizeof(jack_nframes_t); }
755 :
JackRequest(JackRequest::kSetFreeWheel), fOnOff(onoff)
761 return trans->Read(&fOnOff,
sizeof(
int));
766 CheckRes(JackRequest::Write(trans, Size()));
767 return trans->Write(&fOnOff,
sizeof(
int));
770 int Size() {
return sizeof(int); }
793 CheckRes(JackRequest::Write(trans, Size()));
797 int Size() {
return 0; }
812 :
JackRequest(JackRequest::kReleaseTimebase), fRefNum(refnum)
818 return trans->Read(&fRefNum,
sizeof(
int));
823 CheckRes(JackRequest::Write(trans, Size()));
824 return trans->Write(&fRefNum,
sizeof(
int));
827 int Size() {
return sizeof(int); }
844 :
JackRequest(JackRequest::kSetTimebaseCallback), fRefNum(refnum), fConditionnal(conditional)
850 CheckRes(trans->Read(&fRefNum,
sizeof(
int)));
851 return trans->Read(&fConditionnal,
sizeof(
int));
856 CheckRes(JackRequest::Write(trans, Size()));
857 CheckRes(trans->Write(&fRefNum,
sizeof(
int)));
858 return trans->Write(&fConditionnal,
sizeof(
int));
861 int Size() {
return sizeof(int) +
sizeof(
int); }
877 :
JackRequest(JackRequest::kGetInternalClientName), fRefNum(refnum), fIntRefNum(int_ref)
883 CheckRes(trans->Read(&fRefNum,
sizeof(
int)));
884 return trans->Read(&fIntRefNum,
sizeof(
int));
889 CheckRes(JackRequest::Write(trans, Size()));
890 CheckRes(trans->Write(&fRefNum,
sizeof(
int)));
891 return trans->Write(&fIntRefNum,
sizeof(
int));
894 int Size() {
return sizeof(int) +
sizeof(
int); }
904 char fName[JACK_CLIENT_NAME_SIZE + 1];
911 snprintf(fName,
sizeof(fName),
"%s", name);
916 CheckRes(JackResult::Read(trans));
917 CheckRes(trans->Read(&fName,
sizeof(fName)));
923 CheckRes(JackResult::Write(trans));
924 CheckRes(trans->Write(&fName,
sizeof(fName)));
928 int Size() {
return sizeof(fName); }
939 char fName[JACK_CLIENT_NAME_SIZE + 1];
944 :
JackRequest(JackRequest::kInternalClientHandle), fRefNum(refnum)
946 snprintf(fName,
sizeof(fName),
"%s", client_name);
952 CheckRes(trans->Read(&fRefNum,
sizeof(
int)));
953 return trans->Read(&fName,
sizeof(fName));
958 CheckRes(JackRequest::Write(trans, Size()));
959 CheckRes(trans->Write(&fRefNum,
sizeof(
int)));
960 return trans->Write(&fName,
sizeof(fName));
963 int Size() {
return sizeof(int) +
sizeof(fName); }
979 :
JackResult(result), fStatus(status), fIntRefNum(int_ref)
984 CheckRes(JackResult::Read(trans));
985 CheckRes(trans->Read(&fStatus,
sizeof(
int)));
986 CheckRes(trans->Read(&fIntRefNum,
sizeof(
int)));
992 CheckRes(JackResult::Write(trans));
993 CheckRes(trans->Write(&fStatus,
sizeof(
int)));
994 CheckRes(trans->Write(&fIntRefNum,
sizeof(
int)));
998 int Size() {
return sizeof(int) +
sizeof(
int); }
1009 #define MAX_PATH 256
1013 char fName[JACK_CLIENT_NAME_SIZE + 1];
1014 char fDllName[MAX_PATH + 1];
1015 char fLoadInitName[JACK_LOAD_INIT_LIMIT + 1];
1022 :
JackRequest(JackRequest::kInternalClientLoad), fRefNum(refnum), fOptions(options), fUUID(uuid)
1024 snprintf(fName,
sizeof(fName),
"%s", client_name);
1025 snprintf(fDllName,
sizeof(fDllName),
"%s", so_name);
1026 snprintf(fLoadInitName,
sizeof(fLoadInitName),
"%s", objet_data);
1027 snprintf(fLoadInitName,
sizeof(fLoadInitName),
"%s", objet_data);
1033 CheckRes(trans->Read(&fRefNum,
sizeof(
int)));
1034 CheckRes(trans->Read(&fName,
sizeof(fName)));
1035 CheckRes(trans->Read(&fDllName,
sizeof(fDllName)));
1036 CheckRes(trans->Read(&fLoadInitName,
sizeof(fLoadInitName)));
1037 CheckRes(trans->Read(&fUUID,
sizeof(
int)));
1038 return trans->Read(&fOptions,
sizeof(
int));
1043 CheckRes(JackRequest::Write(trans, Size()));
1044 CheckRes(trans->Write(&fRefNum,
sizeof(
int)));
1045 CheckRes(trans->Write(&fName,
sizeof(fName)));
1046 CheckRes(trans->Write(&fDllName,
sizeof(fDllName)));
1047 CheckRes(trans->Write(&fLoadInitName,
sizeof(fLoadInitName)));
1048 CheckRes(trans->Write(&fUUID,
sizeof(
int)));
1049 return trans->Write(&fOptions,
sizeof(
int));
1052 int Size() {
return sizeof(int) +
sizeof(fName) +
sizeof(fDllName) +
sizeof(fLoadInitName) + 2 *
sizeof(int); }
1068 :
JackResult(result), fStatus(status), fIntRefNum(int_ref)
1073 CheckRes(JackResult::Read(trans));
1074 CheckRes(trans->Read(&fStatus,
sizeof(
int)));
1075 CheckRes(trans->Read(&fIntRefNum,
sizeof(
int)));
1081 CheckRes(JackResult::Write(trans));
1082 CheckRes(trans->Write(&fStatus,
sizeof(
int)));
1083 CheckRes(trans->Write(&fIntRefNum,
sizeof(
int)));
1087 int Size() {
return sizeof(int) +
sizeof(
int); }
1103 :
JackRequest(JackRequest::kInternalClientUnload), fRefNum(refnum), fIntRefNum(int_ref)
1109 CheckRes(trans->Read(&fRefNum,
sizeof(
int)));
1110 return trans->Read(&fIntRefNum,
sizeof(
int));
1115 CheckRes(JackRequest::Write(trans, Size()));
1116 CheckRes(trans->Write(&fRefNum,
sizeof(
int)));
1117 return trans->Write(&fIntRefNum,
sizeof(
int));
1120 int Size() {
return sizeof(int) +
sizeof(
int); }
1140 CheckRes(JackResult::Read(trans));
1141 CheckRes(trans->Read(&fStatus,
sizeof(
int)));
1147 CheckRes(JackResult::Write(trans));
1148 CheckRes(trans->Write(&fStatus,
sizeof(
int)));
1152 int Size() {
return sizeof(int); }
1169 :
JackRequest(JackRequest::kNotification), fRefNum(refnum), fNotify(notify), fValue(value)
1175 CheckRes(trans->Read(&fRefNum,
sizeof(
int)));
1176 CheckRes(trans->Read(&fNotify,
sizeof(
int)));
1177 CheckRes(trans->Read(&fValue,
sizeof(
int)));
1183 CheckRes(JackRequest::Write(trans, Size()));
1184 CheckRes(trans->Write(&fRefNum,
sizeof(
int)));
1185 CheckRes(trans->Write(&fNotify,
sizeof(
int)));
1186 CheckRes(trans->Write(&fValue,
sizeof(
int)));
1190 int Size() {
return 3 *
sizeof(int); }
1196 char fUUID[JACK_UUID_SIZE];
1197 char fClientName[JACK_CLIENT_NAME_SIZE+1];
1198 char fCommand[JACK_SESSION_COMMAND_SIZE];
1199 jack_session_flags_t fFlags;
1204 JackSessionCommand(
const char *uuid,
const char *clientname,
const char *command, jack_session_flags_t flags)
1206 strncpy(fUUID, uuid,
sizeof(fUUID));
1207 strncpy(fClientName, clientname,
sizeof(fClientName));
1208 strncpy(fCommand, command,
sizeof(fCommand));
1216 std::list<JackSessionCommand> fCommandList;
1232 CheckRes(JackResult::Read(trans));
1236 CheckRes(trans->Read(buffer.fUUID,
sizeof(buffer.fUUID)));
1237 if (buffer.fUUID[0] ==
'\0')
1240 CheckRes(trans->Read(buffer.fClientName,
sizeof(buffer.fClientName)));
1241 CheckRes(trans->Read(buffer.fCommand,
sizeof(buffer.fCommand)));
1242 CheckRes(trans->Read(&(buffer.fFlags),
sizeof(buffer.fFlags)));
1244 fCommandList.push_back(buffer);
1260 char terminator[JACK_UUID_SIZE];
1261 terminator[0] =
'\0';
1263 CheckRes(JackResult::Write(trans));
1264 for (std::list<JackSessionCommand>::iterator i = fCommandList.begin(); i != fCommandList.end(); i++) {
1265 CheckRes(trans->Write(i->fUUID,
sizeof(i->fUUID)));
1266 CheckRes(trans->Write(i->fClientName,
sizeof(i->fClientName)));
1267 CheckRes(trans->Write(i->fCommand,
sizeof(i->fCommand)));
1268 CheckRes(trans->Write(&(i->fFlags),
sizeof(i->fFlags)));
1270 CheckRes(trans->Write(terminator,
sizeof(terminator)));
1285 for (std::list<JackSessionCommand>::iterator ci = fCommandList.begin(); ci != fCommandList.end(); ci++) {
1286 session_command[i].uuid = strdup(ci->fUUID);
1287 session_command[i].client_name = strdup(ci->fClientName);
1288 session_command[i].command = strdup(ci->fCommand);
1289 session_command[i].flags = ci->fFlags;
1293 session_command[i].uuid = NULL;
1294 session_command[i].client_name = NULL;
1295 session_command[i].command = NULL;
1298 return session_command;
1308 char fPath[JACK_MESSAGE_SIZE + 1];
1309 char fDst[JACK_CLIENT_NAME_SIZE + 1];
1310 jack_session_event_type_t fEventType;
1316 :
JackRequest(JackRequest::kSessionNotify), fEventType(type), fRefNum(refnum)
1318 snprintf(fPath,
sizeof(fPath),
"%s", path);
1320 snprintf(fDst,
sizeof(fDst),
"%s", dst);
1329 CheckRes(trans->Read(&fRefNum,
sizeof(fRefNum)));
1330 CheckRes(trans->Read(&fPath,
sizeof(fPath)));
1331 CheckRes(trans->Read(&fDst,
sizeof(fDst)));
1332 CheckRes(trans->Read(&fEventType,
sizeof(fEventType)));
1338 CheckRes(JackRequest::Write(trans, Size()));
1339 CheckRes(trans->Write(&fRefNum,
sizeof(fRefNum)));
1340 CheckRes(trans->Write(&fPath,
sizeof(fPath)));
1341 CheckRes(trans->Write(&fDst,
sizeof(fDst)));
1342 CheckRes(trans->Write(&fEventType,
sizeof(fEventType)));
1346 int Size() {
return sizeof(fRefNum) +
sizeof(fPath) +
sizeof(fDst) +
sizeof(fEventType); }
1357 :
JackRequest(JackRequest::kSessionReply), fRefNum(refnum)
1363 CheckRes(trans->Read(&fRefNum,
sizeof(
int)));
1369 CheckRes(JackRequest::Write(trans, Size()));
1370 CheckRes(trans->Write(&fRefNum,
sizeof(
int)));
1374 int Size() {
return sizeof(int); }
1380 char fName[JACK_CLIENT_NAME_SIZE + 1];
1387 snprintf(fName,
sizeof(fName),
"%s", name);
1392 CheckRes(JackResult::Read(trans));
1393 CheckRes(trans->Read(&fName,
sizeof(fName)));
1399 CheckRes(JackResult::Write(trans));
1400 CheckRes(trans->Write(&fName,
sizeof(fName)));
1408 char fUUID[JACK_UUID_SIZE];
1415 snprintf(fUUID,
sizeof(fUUID),
"%s", uuid);
1420 CheckRes(JackResult::Read(trans));
1421 CheckRes(trans->Read(&fUUID,
sizeof(fUUID)));
1427 CheckRes(JackResult::Write(trans));
1428 CheckRes(trans->Write(&fUUID,
sizeof(fUUID)));
1436 char fName[JACK_CLIENT_NAME_SIZE + 1];
1444 strncpy(fName, client_name,
sizeof(fName));
1450 CheckRes(trans->Read(&fName,
sizeof(fName)));
1456 CheckRes(JackRequest::Write(trans, Size()));
1457 CheckRes(trans->Write(&fName,
sizeof(fName)));
1461 int Size() {
return sizeof(fName); }
1467 char fUUID[JACK_UUID_SIZE];
1475 strncpy(fUUID, uuid,
sizeof(fUUID));
1481 CheckRes(trans->Read(&fUUID,
sizeof(fUUID)));
1487 CheckRes(JackRequest::Write(trans, Size()));
1488 CheckRes(trans->Write(&fUUID,
sizeof(fUUID)));
1492 int Size() {
return sizeof(fUUID); }
1499 char fName[JACK_CLIENT_NAME_SIZE + 1];
1500 char fUUID[JACK_UUID_SIZE];
1506 :
JackRequest(JackRequest::kReserveClientName), fRefNum(refnum)
1508 strncpy(fName, name,
sizeof(fName));
1509 strncpy(fUUID, uuid,
sizeof(fUUID));
1515 CheckRes(trans->Read(&fUUID,
sizeof(fUUID)));
1516 CheckRes(trans->Read(&fName,
sizeof(fName)));
1517 CheckRes(trans->Read(&fRefNum,
sizeof(fRefNum)));
1523 CheckRes(JackRequest::Write(trans, Size()));
1524 CheckRes(trans->Write(&fUUID,
sizeof(fUUID)));
1525 CheckRes(trans->Write(&fName,
sizeof(fName)));
1526 CheckRes(trans->Write(&fRefNum,
sizeof(fRefNum)));
1530 int Size() {
return sizeof(fUUID) +
sizeof(fName) +
sizeof(fRefNum); }
1536 char fName[JACK_CLIENT_NAME_SIZE + 1];
1542 :
JackRequest(JackRequest::kClientHasSessionCallback)
1544 strncpy(fName, name,
sizeof(fName));
1550 CheckRes(trans->Read(&fName,
sizeof(fName)));
1556 CheckRes(JackRequest::Write(trans, Size()));
1557 CheckRes(trans->Write(&fName,
sizeof(fName)));
1561 int Size() {
return sizeof(fName); }
1572 char fName[JACK_CLIENT_NAME_SIZE + 1];
1578 char fMessage[JACK_MESSAGE_SIZE + 1];
1582 JackClientNotification(
const char* name,
int refnum,
int notify,
int sync,
const char* message,
int value1,
int value2)
1583 : fRefNum(refnum), fNotify(notify), fValue1(value1), fValue2(value2), fSync(sync)
1585 snprintf(fName,
sizeof(fName),
"%s", name);
1586 snprintf(fMessage,
sizeof(fMessage),
"%s", message);
1593 CheckRes(trans->Read(&fName,
sizeof(fName)));
1594 CheckRes(trans->Read(&fRefNum,
sizeof(
int)));
1595 CheckRes(trans->Read(&fNotify,
sizeof(
int)));
1596 CheckRes(trans->Read(&fValue1,
sizeof(
int)));
1597 CheckRes(trans->Read(&fValue2,
sizeof(
int)));
1598 CheckRes(trans->Read(&fSync,
sizeof(
int)));
1599 CheckRes(trans->Read(&fMessage,
sizeof(fMessage)));
1605 CheckRes(trans->Write(&fSize,
sizeof(
int)));
1606 CheckRes(trans->Write(&fName,
sizeof(fName)));
1607 CheckRes(trans->Write(&fRefNum,
sizeof(
int)));
1608 CheckRes(trans->Write(&fNotify,
sizeof(
int)));
1609 CheckRes(trans->Write(&fValue1,
sizeof(
int)));
1610 CheckRes(trans->Write(&fValue2,
sizeof(
int)));
1611 CheckRes(trans->Write(&fSync,
sizeof(
int)));
1612 CheckRes(trans->Write(&fMessage,
sizeof(fMessage)));
1616 int Size() {
return sizeof(int) +
sizeof(fName) + 5 *
sizeof(int) +
sizeof(fMessage); }
InternalClientHandle result.
SetTimebaseCallback request.
InternalClientLoad result.
Request from client to server.
ClientNotification request.
GetInternalClientName request.
GetInternalClient result.
ComputeTotalLatencies request.
enum JackSessionFlags jack_session_flags_t
InternalClientUnload request.
InternalClientLoad request.
InternalClientLoad result.
PortDisconnectName request.
InternalClientHandle request.