21 #include "JackExternalClient.h"    22 #include "JackClientControl.h"    23 #include "JackGlobals.h"    24 #include "JackChannel.h"    25 #include "JackError.h"    33 JackExternalClient::~JackExternalClient()
    36 int JackExternalClient::ClientNotify(
int refnum, 
const char* name, 
int notify, 
int sync, 
const char* message, 
int value1, 
int value2)
    39     jack_log(
"JackExternalClient::ClientNotify ref = %ld client = %s name = %s notify = %ld", refnum, fClientControl->fName, name, notify);
    40     fChannel.ClientNotify(refnum, name, notify, sync, message, value1, value2, &result);
    44 int JackExternalClient::Open(
const char* name, 
int pid, 
int refnum, 
int uuid, 
int* shared_client)
    48         if (fChannel.Open(name) < 0) {
    49             jack_error(
"Cannot connect to client name = %s\n", name);
    58         if (!fClientControl) {
    59             jack_error(
"Cannot allocate client shared memory segment");
    63         *shared_client = shared_mem->GetShmIndex();
    64         jack_log(
"JackExternalClient::Open name = %s index = %ld base = %x", name, shared_mem->GetShmIndex(), shared_mem->GetShmAddress());
    67     } 
catch (std::exception e) {
    72 int JackExternalClient::Close()
    74     jack_log(
"JackExternalClient::Close");
    77         fClientControl->~JackClientControl();
    78         JackShmMem::operator 
delete(fClientControl);
    85     return fClientControl;
 
SERVER_EXPORT void jack_error(const char *fmt,...)
A class which objects possibly want to be allocated in shared memory derives from this class...
SERVER_EXPORT void jack_log(const char *fmt,...)
Client control possibly in shared memory.