Browse Source

Cleanup backend class structure.

tags/v1.9.10
Stephane Letz 11 years ago
parent
commit
f60fde8a2d
9 changed files with 21 additions and 144 deletions
  1. +1
    -21
      common/JackAudioDriver.cpp
  2. +0
    -10
      common/JackAudioDriver.h
  3. +7
    -65
      common/JackDriver.cpp
  4. +0
    -21
      common/JackDriver.h
  5. +1
    -1
      common/JackLoopbackDriver.cpp
  6. +1
    -1
      common/JackMidiDriver.cpp
  7. +10
    -11
      common/JackNetTool.cpp
  8. +0
    -13
      common/JackThreadedDriver.h
  9. +1
    -1
      macosx/coremidi/JackCoreMidiDriver.cpp

+ 1
- 21
common/JackAudioDriver.cpp View File

@@ -85,26 +85,6 @@ int JackAudioDriver::Open(jack_nframes_t buffer_size,
monitor, capture_driver_name, playback_driver_name, capture_latency, playback_latency);
}

int JackAudioDriver::Open(bool capturing,
bool playing,
int inchannels,
int outchannels,
bool monitor,
const char* capture_driver_name,
const char* playback_driver_name,
jack_nframes_t capture_latency,
jack_nframes_t playback_latency)
{
fCaptureChannels = inchannels;
fPlaybackChannels = outchannels;
fWithMonitorPorts = monitor;
memset(fCapturePortList, 0, sizeof(jack_port_id_t) * DRIVER_PORT_NUM);
memset(fPlaybackPortList, 0, sizeof(jack_port_id_t) * DRIVER_PORT_NUM);
memset(fMonitorPortList, 0, sizeof(jack_port_id_t) * DRIVER_PORT_NUM);
return JackDriver::Open(capturing, playing, inchannels, outchannels,
monitor, capture_driver_name, playback_driver_name, capture_latency, playback_latency);
}

void JackAudioDriver::UpdateLatencies()
{
jack_latency_range_t input_range;
@@ -174,7 +154,7 @@ int JackAudioDriver::Attach()
jack_error("Cannot register monitor port for %s", name);
return -1;
} else {
fMonitorPortList[i] = port_index;
fMonitorPortList[i] = port_index;
}
}
}


+ 0
- 10
common/JackAudioDriver.h View File

@@ -69,16 +69,6 @@ class SERVER_EXPORT JackAudioDriver : public JackDriver
jack_nframes_t capture_latency,
jack_nframes_t playback_latency);

virtual int Open(bool capturing,
bool playing,
int inchannels,
int outchannels,
bool monitor,
const char* capture_driver_name,
const char* playback_driver_name,
jack_nframes_t capture_latency,
jack_nframes_t playback_latency);

virtual int Process();

virtual int Attach();


+ 7
- 65
common/JackDriver.cpp View File

@@ -41,8 +41,7 @@ JackDriver::JackDriver(const char* name, const char* alias, JackLockedEngine* en
:fCaptureChannels(0),
fPlaybackChannels(0),
fClientControl(name),
fWithMonitorPorts(false)
{
fWithMonitorPorts(false){
assert(strlen(name) < JACK_CLIENT_NAME_SIZE);
fSynchroTable = table;
strcpy(fAliasName, alias);
@@ -52,20 +51,6 @@ JackDriver::JackDriver(const char* name, const char* alias, JackLockedEngine* en
fDelayedUsecs = 0.f;
fIsMaster = true;
fIsRunning = false;
}

JackDriver::JackDriver()
{
fSynchroTable = NULL;
fEngine = NULL;
fGraphManager = NULL;
fBeginDateUst = 0;
fDelayedUsecs = 0.f;
fIsMaster = true;
fIsRunning = false;
fCaptureChannels = 0;
fPlaybackChannels = 0;
fWithMonitorPorts = false;
}

JackDriver::~JackDriver()
@@ -90,53 +75,6 @@ int JackDriver::Open()
return 0;
}

int JackDriver::Open(bool capturing,
bool playing,
int inchannels,
int outchannels,
bool monitor,
const char* capture_driver_name,
const char* playback_driver_name,
jack_nframes_t capture_latency,
jack_nframes_t playback_latency)
{
jack_log("JackDriver::Open capture_driver_name = %s", capture_driver_name);
jack_log("JackDriver::Open playback_driver_name = %s", playback_driver_name);
int refnum = -1;
char name_res[JACK_CLIENT_NAME_SIZE + 1];
int status;

// Check name and possibly rename
if (fEngine->ClientCheck(fClientControl.fName, -1, name_res, JACK_PROTOCOL_VERSION, (int)JackNullOption, (int*)&status) < 0) {
jack_error("Client name = %s conflits with another running client", fClientControl.fName);
return -1;
}
strcpy(fClientControl.fName, name_res);

if (fEngine->ClientInternalOpen(fClientControl.fName, &refnum, &fEngineControl, &fGraphManager, this, false) != 0) {
jack_error("Cannot allocate internal client for driver");
return -1;
}

fClientControl.fRefNum = refnum;
fClientControl.fActive = true;
fEngineControl->fDriverNum++;
fCaptureLatency = capture_latency;
fPlaybackLatency = playback_latency;

assert(strlen(capture_driver_name) < JACK_CLIENT_NAME_SIZE);
assert(strlen(playback_driver_name) < JACK_CLIENT_NAME_SIZE);

strcpy(fCaptureDriverName, capture_driver_name);
strcpy(fPlaybackDriverName, playback_driver_name);

fEngineControl->UpdateTimeOut();

fGraphManager->DirectConnect(fClientControl.fRefNum, fClientControl.fRefNum); // Connect driver to itself for "sync" mode
SetupDriverSync(fClientControl.fRefNum, false);
return 0;
}

int JackDriver::Open(jack_nframes_t buffer_size,
jack_nframes_t samplerate,
bool capturing,
@@ -170,8 +108,12 @@ int JackDriver::Open(jack_nframes_t buffer_size,
fClientControl.fRefNum = refnum;
fClientControl.fActive = true;
fEngineControl->fDriverNum++;
fEngineControl->fBufferSize = buffer_size;
fEngineControl->fSampleRate = samplerate;
if (buffer_size > 0) {
fEngineControl->fBufferSize = buffer_size;
}
if (samplerate > 0) {
fEngineControl->fSampleRate = samplerate;
}
fCaptureLatency = capture_latency;
fPlaybackLatency = playback_latency;



+ 0
- 21
common/JackDriver.h View File

@@ -52,16 +52,6 @@ class SERVER_EXPORT JackDriverInterface

virtual int Open() = 0;

virtual int Open (bool capturing,
bool playing,
int inchannels,
int outchannels,
bool monitor,
const char* capture_driver_name,
const char* playback_driver_name,
jack_nframes_t capture_latency,
jack_nframes_t playback_latency) = 0;

virtual int Open(jack_nframes_t buffer_size,
jack_nframes_t samplerate,
bool capturing,
@@ -197,7 +187,6 @@ class SERVER_EXPORT JackDriver : public JackDriverClientInterface
public:

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

void SetMaster(bool onoff);
@@ -213,16 +202,6 @@ class SERVER_EXPORT JackDriver : public JackDriverClientInterface

virtual int Open();

virtual int Open(bool capturing,
bool playing,
int inchannels,
int outchannels,
bool monitor,
const char* capture_driver_name,
const char* playback_driver_name,
jack_nframes_t capture_latency,
jack_nframes_t playback_latency);

virtual int Open(jack_nframes_t buffer_size,
jack_nframes_t samplerate,
bool capturing,


+ 1
- 1
common/JackLoopbackDriver.cpp View File

@@ -122,7 +122,7 @@ extern "C"
}

Jack::JackDriverClientInterface* driver = new Jack::JackLoopbackDriver(engine, table);
if (driver->Open(1, 1, channels, channels, false, "loopback", "loopback", 0, 0) == 0) {
if (driver->Open(0, 0, 1, 1, channels, channels, false, "loopback", "loopback", 0, 0) == 0) {
return driver;
} else {
delete driver;


+ 1
- 1
common/JackMidiDriver.cpp View File

@@ -51,7 +51,7 @@ int JackMidiDriver::Open(bool capturing,
{
fCaptureChannels = inchannels;
fPlaybackChannels = outchannels;
return JackDriver::Open(capturing, playing, inchannels, outchannels, monitor, capture_driver_name, playback_driver_name, capture_latency, playback_latency);
return JackDriver::Open(0, 0, capturing, playing, inchannels, outchannels, monitor, capture_driver_name, playback_driver_name, capture_latency, playback_latency);
}

int JackMidiDriver::Attach()


+ 10
- 11
common/JackNetTool.cpp View File

@@ -363,7 +363,7 @@ namespace Jack
if (active_ports == 0) {
fSubPeriodSize = fPeriodSize;
} else {
jack_nframes_t period = (int) powf(2.f, (int)(log(float(fPacketSize) / (active_ports * sizeof(sample_t))) / log(2.)));
jack_nframes_t period = int(powf(2.f, int(log(float(fPacketSize) / (active_ports * sizeof(sample_t))) / log(2.))));
fSubPeriodSize = (period > fPeriodSize) ? fPeriodSize : period;
}

@@ -404,7 +404,6 @@ namespace Jack
return CheckPacket(cycle, sub_cycle);
}


int NetFloatAudioBuffer::RenderToNetwork(int sub_cycle, uint32_t port_num)
{
int active_ports = 0;
@@ -487,9 +486,9 @@ namespace Jack
NetCeltAudioBuffer::NetCeltAudioBuffer(session_params_t* params, uint32_t nports, char* net_buffer, int kbps)
:NetAudioBuffer(params, nports, net_buffer)
{
fCeltMode = new CELTMode *[fNPorts];
fCeltEncoder = new CELTEncoder *[fNPorts];
fCeltDecoder = new CELTDecoder *[fNPorts];
fCeltMode = new CELTMode*[fNPorts];
fCeltEncoder = new CELTEncoder*[fNPorts];
fCeltDecoder = new CELTDecoder*[fNPorts];

memset(fCeltMode, 0, fNPorts * sizeof(CELTMode*));
memset(fCeltEncoder, 0, fNPorts * sizeof(CELTEncoder*));
@@ -724,9 +723,9 @@ namespace Jack
NetOpusAudioBuffer::NetOpusAudioBuffer(session_params_t* params, uint32_t nports, char* net_buffer, int kbps)
:NetAudioBuffer(params, nports, net_buffer)
{
fOpusMode = new OpusCustomMode *[fNPorts];
fOpusEncoder = new OpusCustomEncoder *[fNPorts];
fOpusDecoder = new OpusCustomDecoder *[fNPorts];
fOpusMode = new OpusCustomMode*[fNPorts];
fOpusEncoder = new OpusCustomEncoder*[fNPorts];
fOpusDecoder = new OpusCustomDecoder*[fNPorts];
fCompressedSizesByte = new unsigned short [fNPorts];

memset(fOpusMode, 0, fNPorts * sizeof(OpusCustomMode*));
@@ -816,15 +815,15 @@ namespace Jack
for (int i = 0; i < fNPorts; i++) {
if (fOpusEncoder[i]) {
opus_custom_encoder_destroy(fOpusEncoder[i]);
fOpusEncoder[i]=0;
fOpusEncoder[i] = 0;
}
if (fOpusDecoder[i]) {
opus_custom_decoder_destroy(fOpusDecoder[i]);
fOpusDecoder[i]=0;
fOpusDecoder[i] = 0;
}
if (fOpusMode[i]) {
opus_custom_mode_destroy(fOpusMode[i]);
fOpusMode[i]=0;
fOpusMode[i] = 0;
}
}



+ 0
- 13
common/JackThreadedDriver.h View File

@@ -47,19 +47,6 @@ class SERVER_EXPORT JackThreadedDriver : public JackDriverClientInterface, publi
virtual ~JackThreadedDriver();

virtual int Open();

virtual int Open (bool capturing,
bool playing,
int inchannels,
int outchannels,
bool monitor,
const char* capture_driver_name,
const char* playback_driver_name,
jack_nframes_t capture_latency,
jack_nframes_t playback_latency)
{
return -1;
}
virtual int Open(jack_nframes_t buffer_size,
jack_nframes_t samplerate,
bool capturing,


+ 1
- 1
macosx/coremidi/JackCoreMidiDriver.cpp View File

@@ -848,7 +848,7 @@ extern "C" {
// singleton kind of driver
if (!driver) {
driver = new Jack::JackCoreMidiDriver("system_midi", "coremidi", engine, table);
if (driver->Open(1, 1, virtual_in, virtual_out, false, "in", "out", 0, 0) == 0) {
if (driver->Open(0, 0, 1, 1, virtual_in, virtual_out, false, "in", "out", 0, 0) == 0) {
return driver;
} else {
delete driver;


Loading…
Cancel
Save