Browse Source

Correct JackEngine inheritance graph.

git-svn-id: http://subversion.jackaudio.org/jack/jack2/trunk/jackmp@2311 0c269be4-1314-0410-8aa9-9f06e86f4224
tags/1.90
sletz 17 years ago
parent
commit
db408b7caa
24 changed files with 87 additions and 30 deletions
  1. +1
    -1
      common/JackAudioDriver.cpp
  2. +1
    -1
      common/JackAudioDriver.h
  3. +1
    -1
      common/JackDriver.cpp
  4. +3
    -3
      common/JackDriver.h
  5. +2
    -2
      common/JackDriverLoader.h
  6. +1
    -1
      common/JackDummyDriver.cpp
  7. +1
    -1
      common/JackDummyDriver.h
  8. +1
    -0
      common/JackEngine.cpp
  9. +57
    -1
      common/JackEngine.h
  10. +1
    -1
      common/JackFreewheelDriver.h
  11. +1
    -1
      common/JackInternalClientChannel.h
  12. +1
    -1
      common/JackLockedEngine.h
  13. +1
    -1
      common/JackLoopbackDriver.h
  14. +1
    -1
      common/JackServer.cpp
  15. +3
    -3
      common/JackServer.h
  16. +1
    -1
      linux/alsa/JackAlsaDriver.cpp
  17. +1
    -1
      linux/firewire/JackFFADODriver.cpp
  18. +1
    -1
      linux/freebob/JackFreebobDriver.cpp
  19. +2
    -2
      macosx/JackCoreAudioDriver.cpp
  20. +1
    -1
      macosx/JackCoreAudioDriver.h
  21. +1
    -1
      macosx/JackMachServerChannel.cpp
  22. +2
    -2
      macosx/JackMachServerChannel.h
  23. +1
    -1
      windows/JackPortAudioDriver.cpp
  24. +1
    -1
      windows/JackPortAudioDriver.h

+ 1
- 1
common/JackAudioDriver.cpp View File

@@ -36,7 +36,7 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
namespace Jack
{

JackAudioDriver::JackAudioDriver(const char* name, const char* alias, JackEngine* engine, JackSynchro** table)
JackAudioDriver::JackAudioDriver(const char* name, const char* alias, JackEngineInterface* engine, JackSynchro** table)
: JackDriver(name, alias, engine, table),
fCaptureChannels(0),
fPlaybackChannels(0),


+ 1
- 1
common/JackAudioDriver.h View File

@@ -57,7 +57,7 @@ class EXPORT JackAudioDriver : public JackDriver

public:

JackAudioDriver(const char* name, const char* alias, JackEngine* engine, JackSynchro** table);
JackAudioDriver(const char* name, const char* alias, JackEngineInterface* engine, JackSynchro** table);
virtual ~JackAudioDriver();

virtual int Process();


+ 1
- 1
common/JackDriver.cpp View File

@@ -39,7 +39,7 @@ using namespace std;
namespace Jack
{

JackDriver::JackDriver(const char* name, const char* alias, JackEngine* engine, JackSynchro** table)
JackDriver::JackDriver(const char* name, const char* alias, JackEngineInterface* engine, JackSynchro** table)
{
assert(strlen(name) < JACK_CLIENT_NAME_SIZE);
fSynchroTable = table;


+ 3
- 3
common/JackDriver.h View File

@@ -29,7 +29,7 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
namespace Jack
{

class JackEngine;
class JackEngineInterface;
class JackGraphManager;
class JackSynchro;
struct JackEngineControl;
@@ -150,7 +150,7 @@ class EXPORT JackDriver : public JackDriverClient
jack_nframes_t fPlaybackLatency;
jack_time_t fLastWaitUst;
float fDelayedUsecs;
JackEngine* fEngine;
JackEngineInterface* fEngine;
JackGraphManager* fGraphManager;
JackSynchro** fSynchroTable;
JackEngineControl* fEngineControl;
@@ -160,7 +160,7 @@ class EXPORT JackDriver : public JackDriverClient

public:

JackDriver(const char* name, const char* alias, JackEngine* engine, JackSynchro** table);
JackDriver(const char* name, const char* alias, JackEngineInterface* engine, JackSynchro** table);
JackDriver();
virtual ~JackDriver();



+ 2
- 2
common/JackDriverLoader.h View File

@@ -44,11 +44,11 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
#endif

typedef jack_driver_desc_t * (*JackDriverDescFunction) ();
typedef Jack::JackDriverClientInterface* (*initialize) (Jack::JackEngine*, Jack::JackSynchro**, const JSList *);
typedef Jack::JackDriverClientInterface* (*initialize) (Jack::JackEngineInterface*, Jack::JackSynchro**, const JSList *);

typedef struct _jack_driver_info
{
Jack::JackDriverClientInterface* (*initialize)(Jack::JackEngine*, Jack::JackSynchro**, const JSList *);
Jack::JackDriverClientInterface* (*initialize)(Jack::JackEngineInterface*, Jack::JackSynchro**, const JSList *);
DRIVER_HANDLE handle;
}
jack_driver_info_t;


+ 1
- 1
common/JackDummyDriver.cpp View File

@@ -134,7 +134,7 @@ extern "C"
return desc;
}

Jack::JackDriverClientInterface* driver_initialize(Jack::JackEngine* engine, Jack::JackSynchro** table, const JSList* params) {
Jack::JackDriverClientInterface* driver_initialize(Jack::JackEngineInterface* engine, Jack::JackSynchro** table, const JSList* params) {
jack_nframes_t sample_rate = 48000;
jack_nframes_t period_size = 1024;
unsigned int capture_ports = 2;


+ 1
- 1
common/JackDummyDriver.h View File

@@ -38,7 +38,7 @@ class JackDummyDriver : public JackAudioDriver

public:

JackDummyDriver(const char* name, const char* alias, JackEngine* engine, JackSynchro** table, unsigned long wait_time)
JackDummyDriver(const char* name, const char* alias, JackEngineInterface* engine, JackSynchro** table, unsigned long wait_time)
: JackAudioDriver(name, alias, engine, table), fWaitTime(wait_time)
{}
virtual ~JackDummyDriver()


+ 1
- 0
common/JackEngine.cpp View File

@@ -53,6 +53,7 @@ JackEngine::JackEngine(JackGraphManager* manager,

JackEngine::~JackEngine()
{
jack_log("JackEngine::~JackEngine");
delete fChannel;
delete fSignal;
}


+ 57
- 1
common/JackEngine.h View File

@@ -33,12 +33,68 @@ struct JackEngineControl;
class JackServerNotifyChannelInterface;
class JackExternalClient;
class JackSyncInterface;
class JackEngineInterface
{
public:
JackEngineInterface()
{}
JackEngineInterface(JackGraphManager* manager, JackSynchro** table, JackEngineControl* controler)
{}
virtual ~JackEngineInterface()
{}
virtual int Open() = 0;
virtual int Close() = 0;
// Client management
virtual int ClientCheck(const char* name, char* name_res, int protocol, int options, int* status) = 0;
virtual int ClientExternalOpen(const char* name, int pid, int* ref, int* shared_engine, int* shared_client, int* shared_graph_manager) = 0;
virtual int ClientInternalOpen(const char* name, int* ref, JackEngineControl** shared_engine, JackGraphManager** shared_manager, JackClientInterface* client, bool wait) = 0;
virtual int ClientExternalClose(int refnum) = 0;
virtual int ClientInternalClose(int refnum, bool wait) = 0;
virtual int ClientActivate(int refnum, bool state) = 0;
virtual int ClientDeactivate(int refnum) = 0;
virtual int GetClientPID(const char* name) = 0;
// Internal client management
virtual int GetInternalClientName(int int_ref, char* name_res) = 0;
virtual int InternalClientHandle(const char* client_name, int* status, int* int_ref) = 0;
virtual int InternalClientUnload(int refnum, int* status) = 0;
// Port management
virtual int PortRegister(int refnum, const char* name, const char *type, unsigned int flags, unsigned int buffer_size, unsigned int* port) = 0;
virtual int PortUnRegister(int refnum, jack_port_id_t port) = 0;
virtual int PortConnect(int refnum, const char* src, const char* dst) = 0;
virtual int PortDisconnect(int refnum, const char* src, const char* dst) = 0;
virtual int PortConnect(int refnum, jack_port_id_t src, jack_port_id_t dst) = 0;
virtual int PortDisconnect(int refnum, jack_port_id_t src, jack_port_id_t dst) = 0;
// Graph
virtual bool Process(jack_time_t callback_usecs) = 0;
// Notifications
virtual void NotifyXRun(jack_time_t callback_usecs, float delayed_usecs) = 0;
virtual void NotifyXRun(int refnum) = 0;
virtual void NotifyGraphReorder() = 0;
virtual void NotifyBufferSize(jack_nframes_t nframes) = 0;
virtual void NotifyFreewheel(bool onoff) = 0;
virtual void NotifyPortRegistation(jack_port_id_t port_index, bool onoff) = 0;
virtual void NotifyPortConnect(jack_port_id_t src, jack_port_id_t dst, bool onoff) = 0;
virtual void NotifyActivate(int refnum) = 0;
};

/*!
\brief Engine description.
*/

class JackEngine
class JackEngine : public JackEngineInterface
{
private:



+ 1
- 1
common/JackFreewheelDriver.h View File

@@ -35,7 +35,7 @@ class JackFreewheelDriver : public JackDriver

public:

JackFreewheelDriver(JackEngine* engine, JackSynchro** table): JackDriver("freewheel", "", engine, table)
JackFreewheelDriver(JackEngineInterface* engine, JackSynchro** table): JackDriver("freewheel", "", engine, table)
{}
virtual ~JackFreewheelDriver()
{}


+ 1
- 1
common/JackInternalClientChannel.h View File

@@ -35,7 +35,7 @@ class JackInternalClientChannel : public JackClientChannelInterface
private:

JackServer* fServer;
JackEngine* fEngine;
JackEngineInterface* fEngine;

public:



+ 1
- 1
common/JackLockedEngine.h View File

@@ -30,7 +30,7 @@ namespace Jack
\brief Locked Engine.
*/

class JackLockedEngine : public JackEngine, public JackLockAble
class JackLockedEngine : public JackEngineInterface, public JackLockAble
{
private:



+ 1
- 1
common/JackLoopbackDriver.h View File

@@ -35,7 +35,7 @@ class JackLoopbackDriver : public JackAudioDriver

public:

JackLoopbackDriver(JackEngine* engine, JackSynchro** table)
JackLoopbackDriver(JackEngineInterface* engine, JackSynchro** table)
: JackAudioDriver("loopback", "", engine, table)
{}
virtual ~JackLoopbackDriver()


+ 1
- 1
common/JackServer.cpp View File

@@ -284,7 +284,7 @@ int JackServer::SetTimebaseCallback(int refnum, int conditional)
return fEngineControl->fTransport.SetTimebase(refnum, conditional);
}

JackEngine* JackServer::GetEngine()
JackEngineInterface* JackServer::GetEngine()
{
return fEngine;
}


+ 3
- 3
common/JackServer.h View File

@@ -35,7 +35,7 @@ class JackDriverClientInterface;
class JackServerChannelInterface;
class JackSyncInterface;
struct JackEngineControl;
class JackEngine;
class JackEngineInterface;

/*!
\brief The Jack server.
@@ -50,7 +50,7 @@ class EXPORT JackServer
JackDriverClientInterface* fAudioDriver;
JackDriverClientInterface* fFreewheelDriver;
JackDriverClientInterface* fLoopbackDriver;
JackEngine* fEngine;
JackEngineInterface* fEngine;
JackEngineControl* fEngineControl;
JackGraphManager* fGraphManager;
JackServerChannelInterface* fChannel;
@@ -81,7 +81,7 @@ class EXPORT JackServer
int SetTimebaseCallback(int refnum, int conditional);

// Object access
JackEngine* GetEngine();
JackEngineInterface* GetEngine();
JackEngineControl* GetEngineControl();
JackSynchro** GetSynchroTable();
JackGraphManager* GetGraphManager();


+ 1
- 1
linux/alsa/JackAlsaDriver.cpp View File

@@ -2597,7 +2597,7 @@ extern "C"
return desc;
}

Jack::JackDriverClientInterface* driver_initialize(Jack::JackEngine* engine, Jack::JackSynchro** table, const JSList* params) {
Jack::JackDriverClientInterface* driver_initialize(Jack::JackEngineInterface* engine, Jack::JackSynchro** table, const JSList* params) {
jack_nframes_t srate = 48000;
jack_nframes_t frames_per_interrupt = 1024;
unsigned long user_nperiods = 2;


+ 1
- 1
linux/firewire/JackFFADODriver.cpp View File

@@ -915,7 +915,7 @@ extern "C"
return desc;
}

Jack::JackDriverClientInterface* driver_initialize(Jack::JackEngine* engine, Jack::JackSynchro** table, const JSList* params) {
Jack::JackDriverClientInterface* driver_initialize(Jack::JackEngineInterface* engine, Jack::JackSynchro** table, const JSList* params) {
const JSList * node;
const jack_driver_param_t * param;



+ 1
- 1
linux/freebob/JackFreebobDriver.cpp View File

@@ -1039,7 +1039,7 @@ extern "C"
return desc;
}

Jack::JackDriverClientInterface* driver_initialize(Jack::JackEngine* engine, Jack::JackSynchro** table, const JSList* params) {
Jack::JackDriverClientInterface* driver_initialize(Jack::JackEngineInterface* engine, Jack::JackSynchro** table, const JSList* params) {
unsigned int port = 0;
unsigned int node_id = -1;
int nbitems;


+ 2
- 2
macosx/JackCoreAudioDriver.cpp View File

@@ -419,7 +419,7 @@ OSStatus JackCoreAudioDriver::GetTotalChannels(AudioDeviceID device, int* channe
return err;
}

JackCoreAudioDriver::JackCoreAudioDriver(const char* name, const char* alias, JackEngine* engine, JackSynchro** table)
JackCoreAudioDriver::JackCoreAudioDriver(const char* name, const char* alias, JackEngineInterface* engine, JackSynchro** table)
: JackAudioDriver(name, alias, engine, table), fJackInputData(NULL), fDriverOutputData(NULL), fState(false), fIOUsage(1.f)
{}

@@ -1243,7 +1243,7 @@ extern "C"
return desc;
}

Jack::JackDriverClientInterface* driver_initialize(Jack::JackEngine* engine, Jack::JackSynchro** table, const JSList* params) {
Jack::JackDriverClientInterface* driver_initialize(Jack::JackEngineInterface* engine, Jack::JackSynchro** table, const JSList* params) {
jack_nframes_t srate = 44100;
jack_nframes_t frames_per_interrupt = 128;
int capture = FALSE;


+ 1
- 1
macosx/JackCoreAudioDriver.h View File

@@ -143,7 +143,7 @@ class JackCoreAudioDriver : public JackAudioDriver

public:

JackCoreAudioDriver(const char* name, const char* alias, JackEngine* engine, JackSynchro** table);
JackCoreAudioDriver(const char* name, const char* alias, JackEngineInterface* engine, JackSynchro** table);
virtual ~JackCoreAudioDriver();

int Open(jack_nframes_t frames_per_cycle,


+ 1
- 1
macosx/JackMachServerChannel.cpp View File

@@ -70,7 +70,7 @@ void JackMachServerChannel::Close()
fServerPort.DestroyPort();
}

JackEngine* JackMachServerChannel::GetEngine()
JackEngineInterface* JackMachServerChannel::GetEngine()
{
return fServer->GetEngine();
}


+ 2
- 2
macosx/JackMachServerChannel.h View File

@@ -29,7 +29,7 @@ namespace Jack
{

class JackServer;
class JackEngine;
class JackEngineInterface;

/*!
\brief JackServerChannel using Mach IPC.
@@ -55,7 +55,7 @@ class JackMachServerChannel : public JackServerChannelInterface, public JackRunn
int Open(const char* server_name, JackServer* server); // Open the Server/Client connection
void Close(); // Close the Server/Client connection

JackEngine* GetEngine();
JackEngineInterface* GetEngine();
JackServer* GetServer();

void ClientCheck(char* name, char* name_res, int protocol, int options, int* status, int* result);


+ 1
- 1
windows/JackPortAudioDriver.cpp View File

@@ -568,7 +568,7 @@ extern "C"
return desc;
}

EXPORT Jack::JackDriverClientInterface* driver_initialize(Jack::JackEngine* engine, Jack::JackSynchro** table, const JSList* params) {
EXPORT Jack::JackDriverClientInterface* driver_initialize(Jack::JackEngineInterface* engine, Jack::JackSynchro** table, const JSList* params) {
jack_nframes_t srate = 44100;
jack_nframes_t frames_per_interrupt = 512;
int capture = FALSE;


+ 1
- 1
windows/JackPortAudioDriver.h View File

@@ -53,7 +53,7 @@ class JackPortAudioDriver : public JackAudioDriver

public:

JackPortAudioDriver(const char* name, const char* alias, JackEngine* engine, JackSynchro** table)
JackPortAudioDriver(const char* name, const char* alias, JackEngineInterface* engine, JackSynchro** table)
: JackAudioDriver(name, alias, engine, table), fStream(NULL), fInputBuffer(NULL), fOutputBuffer(NULL),
fInputDevice(paNoDevice), fOutputDevice(paNoDevice)
{}


Loading…
Cancel
Save