Loading...
Searching...
No Matches
gx_jack::GxJack Class Reference

`#include <gx_jack.h>`

Inheritance diagram for gx_jack::GxJack:

## Public Member Functions

jack_nframes_t | get_jack_sr ()
jack_nframes_t | get_jack_bs ()
float | get_jcpu_load ()
bool | get_is_rt ()
jack_nframes_t | get_time_is ()
| GxJack (gx_engine::GxEngine &engine_)
| ~GxJack ()
void | set_jack_down (bool v)
void | set_jack_exit (bool v)
void | set_jack_insert (bool v)
bool | gx_jack_connection (bool connect, bool startserver, int wait_after_connect, const gx_system::CmdlineOptions &opt)
float | get_last_xrun ()
void * | get_midi_buffer (jack_nframes_t nframes)
bool | send_midi_cc (int cc_num, int pgm_num, int bgn, int num)
void | read_connections (gx_system::JsonParser &jp)
void | write_connections (gx_system::JsonWriter &w)
const string & | get_instancename ()
bool | is_jack_down ()
bool | is_jack_exit ()
sigc::signal< void > & | signal_client_change ()
sigc::signal< void, string, string, bool > & | signal_connection_changed ()
Glib::Dispatcher & | signal_portchange ()
Glib::Dispatcher & | signal_buffersize_change ()
void | send_connection_changes (bool v)
gx_engine::GxEngine & | get_engine ()

## Static Public Member Functions

static string | get_default_instancename ()
static void | rt_watchdog_set_limit (int limit)

## Public Attributes

JackPorts | ports
jack_client_t * | client
jack_client_t * | client_insert
jack_position_t | current
jack_transport_state_t | transport_state
jack_transport_state_t | old_transport_state
string | client_name
string | client_insert_name
Glib::Dispatcher | session
Glib::Dispatcher | session_ins
Glib::Dispatcher | shutdown
Glib::Dispatcher | connection
bool | single_client

## Private Member Functions

void | gx_jack_shutdown_callback ()
void | cleanup_slot (bool otherthread)
void | fetch_connection_data ()
void | report_xrun_clear ()
void | report_xrun ()
void | write_jack_port_connections (gx_system::JsonWriter &w, const char *key, const PortConnection &pc, bool replace=false)
std::string | make_clientvar (const std::string &s)
std::string | replace_clientvar (const std::string &s)
int | is_power_of_two (unsigned int x)
bool | gx_jack_init (bool startserver, int wait_after_connect, const gx_system::CmdlineOptions &opt)
void | gx_jack_init_port_connection (const gx_system::CmdlineOptions &opt)
void | gx_jack_callbacks ()
void | gx_jack_cleanup ()
void | check_overload ()
void | process_midi_cc (void *buf, jack_nframes_t nframes)

## Static Private Member Functions

static int | gx_jack_srate_callback (jack_nframes_t, void *arg)
static int | gx_jack_xrun_callback (void *arg)
static int | gx_jack_buffersize_callback (jack_nframes_t, void *arg)
static int | gx_jack_process (jack_nframes_t, void *arg)
static int | gx_jack_insert_process (jack_nframes_t, void *arg)
static void | shutdown_callback_client (void *arg)
static void | shutdown_callback_client_insert (void *arg)
static void | gx_jack_portreg_callback (jack_port_id_t, int, void *arg)
static void | gx_jack_portconn_callback (jack_port_id_t a, jack_port_id_t b, int connect, void *arg)

## Private Attributes

GxRtCheck | rtc
bool | IS_RT
gx_engine::GxEngine & | engine
bool | jack_is_down
bool | jack_is_exit
bool | bypass_insert
MidiCC | mmessage
PortConnRing | connection_queue
sigc::signal< void, string, string, bool > | connection_changed
Glib::Dispatcher | buffersize_change
Glib::Dispatcher | client_change_rt
sigc::signal< void > | client_change
string | client_instance
jack_nframes_t | jack_sr
jack_nframes_t | jack_bs
float * | insert_buffer
Glib::Dispatcher | xrun
float | last_xrun
bool | xrun_msg_blocked

## Detailed Description

Definition at line 168 of file gx_jack.h.

## Constructor & Destructor Documentation

## GxJack()

gx_jack::GxJack::GxJack | ( | gx_engine::GxEngine & | engine_ | ) |

## ~GxJack()

gx_jack::GxJack::~GxJack | ( |  | ) |

## Member Function Documentation

## check_overload()

void gx_jack::GxJack::check_overload | ( |  | ) |

inline private

## cleanup_slot()

void gx_jack::GxJack::cleanup_slot | ( | bool | otherthread | ) |

private

## fetch_connection_data()

void gx_jack::GxJack::fetch_connection_data | ( |  | ) |

private

## get_default_instancename()

string gx_jack::GxJack::get_default_instancename | ( |  | ) |

static

## get_engine()

gx_engine::GxEngine & gx_jack::GxJack::get_engine | ( |  | ) |

inline

Definition at line 276 of file gx_jack.h.

## get_instancename()

const string & gx_jack::GxJack::get_instancename | ( |  | ) |

inline

Definition at line 261 of file gx_jack.h.

## get_is_rt()

bool gx_jack::GxJack::get_is_rt | ( |  | ) |

inline

Definition at line 241 of file gx_jack.h.

## get_jack_bs()

jack_nframes_t gx_jack::GxJack::get_jack_bs | ( |  | ) |

inline

Definition at line 239 of file gx_jack.h.

## get_jack_sr()

jack_nframes_t gx_jack::GxJack::get_jack_sr | ( |  | ) |

inline

Definition at line 238 of file gx_jack.h.

## get_jcpu_load()

float gx_jack::GxJack::get_jcpu_load | ( |  | ) |

inline

Definition at line 240 of file gx_jack.h.

## get_last_xrun()

float gx_jack::GxJack::get_last_xrun | ( |  | ) |

inline

Definition at line 254 of file gx_jack.h.

## get_midi_buffer()

void * gx_jack::GxJack::get_midi_buffer | ( | jack_nframes_t | nframes | ) |

## get_time_is()

jack_nframes_t gx_jack::GxJack::get_time_is | ( |  | ) |

inline

Definition at line 242 of file gx_jack.h.

## gx_jack_buffersize_callback()

int gx_jack::GxJack::gx_jack_buffersize_callback | ( | jack_nframes_t | ,
|  | void * | arg )

static private

## gx_jack_callbacks()

void gx_jack::GxJack::gx_jack_callbacks | ( |  | ) |

private

## gx_jack_cleanup()

void gx_jack::GxJack::gx_jack_cleanup | ( |  | ) |

private

## gx_jack_connection()

bool gx_jack::GxJack::gx_jack_connection | ( | bool | connect,
|  | bool | startserver,
|  | int | wait_after_connect,
|  | const gx_system::CmdlineOptions & | opt )

## gx_jack_init()

bool gx_jack::GxJack::gx_jack_init | ( | bool | startserver,
|  | int | wait_after_connect,
|  | const gx_system::CmdlineOptions & | opt )

private

## gx_jack_init_port_connection()

void gx_jack::GxJack::gx_jack_init_port_connection | ( | const gx_system::CmdlineOptions & | opt | ) |

private

## gx_jack_insert_process()

int gx_jack::GxJack::gx_jack_insert_process | ( | jack_nframes_t | ,
|  | void * | arg )

static private

## gx_jack_portconn_callback()

void gx_jack::GxJack::gx_jack_portconn_callback | ( | jack_port_id_t | a,
|  | jack_port_id_t | b,
|  | int | connect,
|  | void * | arg )

static private

## gx_jack_portreg_callback()

void gx_jack::GxJack::gx_jack_portreg_callback | ( | jack_port_id_t | ,
|  | int | ,
|  | void * | arg )

static private

## gx_jack_process()

int gx_jack::GxJack::gx_jack_process | ( | jack_nframes_t | ,
|  | void * | arg )

static private

## gx_jack_shutdown_callback()

void gx_jack::GxJack::gx_jack_shutdown_callback | ( |  | ) |

private

## gx_jack_srate_callback()

int gx_jack::GxJack::gx_jack_srate_callback | ( | jack_nframes_t | ,
|  | void * | arg )

static private

## gx_jack_xrun_callback()

int gx_jack::GxJack::gx_jack_xrun_callback | ( | void * | arg | ) |

static private

## is_jack_down()

bool gx_jack::GxJack::is_jack_down | ( |  | ) |

inline

Definition at line 267 of file gx_jack.h.

## is_jack_exit()

bool gx_jack::GxJack::is_jack_exit | ( |  | ) |

inline

Definition at line 269 of file gx_jack.h.

## is_power_of_two()

int gx_jack::GxJack::is_power_of_two | ( | unsigned int | x | ) |

private

## make_clientvar()

std::string gx_jack::GxJack::make_clientvar | ( | const std::string & | s | ) |

private

## process_midi_cc()

void gx_jack::GxJack::process_midi_cc | ( | void * | buf,
|  | jack_nframes_t | nframes )

private

## read_connections()

void gx_jack::GxJack::read_connections | ( | gx_system::JsonParser & | jp | ) |

## replace_clientvar()

std::string gx_jack::GxJack::replace_clientvar | ( | const std::string & | s | ) |

private

## report_xrun()

void gx_jack::GxJack::report_xrun | ( |  | ) |

private

## report_xrun_clear()

void gx_jack::GxJack::report_xrun_clear | ( |  | ) |

private

## rt_watchdog_set_limit()

void gx_jack::GxJack::rt_watchdog_set_limit | ( | int | limit | ) |

static

## send_connection_changes()

void gx_jack::GxJack::send_connection_changes | ( | bool | v | ) |

inline

Definition at line 274 of file gx_jack.h.

## send_midi_cc()

bool gx_jack::GxJack::send_midi_cc | ( | int | cc_num,
|  | int | pgm_num,
|  | int | bgn,
|  | int | num )

inline

Definition at line 291 of file gx_jack.h.

## set_jack_down()

void gx_jack::GxJack::set_jack_down | ( | bool | v | ) |

inline

Definition at line 248 of file gx_jack.h.

## set_jack_exit()

void gx_jack::GxJack::set_jack_exit | ( | bool | v | ) |

inline

Definition at line 249 of file gx_jack.h.

## set_jack_insert()

void gx_jack::GxJack::set_jack_insert | ( | bool | v | ) |

inline

Definition at line 251 of file gx_jack.h.

## shutdown_callback_client()

void gx_jack::GxJack::shutdown_callback_client | ( | void * | arg | ) |

static private

## shutdown_callback_client_insert()

void gx_jack::GxJack::shutdown_callback_client_insert | ( | void * | arg | ) |

static private

## signal_buffersize_change()

Glib::Dispatcher & gx_jack::GxJack::signal_buffersize_change | ( |  | ) |

inline

Definition at line 273 of file gx_jack.h.

## signal_client_change()

sigc::signal< void > & gx_jack::GxJack::signal_client_change | ( |  | ) |

inline

Definition at line 270 of file gx_jack.h.

## signal_connection_changed()

sigc::signal< void, string, string, bool > & gx_jack::GxJack::signal_connection_changed | ( |  | ) |

inline

Definition at line 271 of file gx_jack.h.

## signal_portchange()

Glib::Dispatcher & gx_jack::GxJack::signal_portchange | ( |  | ) |

inline

Definition at line 272 of file gx_jack.h.

## write_connections()

void gx_jack::GxJack::write_connections | ( | gx_system::JsonWriter & | w | ) |

## write_jack_port_connections()

void gx_jack::GxJack::write_jack_port_connections | ( | gx_system::JsonWriter & | w,
|  | const char * | key,
|  | const PortConnection & | pc,
|  | bool | replace = false )

private

## Member Data Documentation

## buffersize_change

Glib::Dispatcher gx_jack::GxJack::buffersize_change

private

Definition at line 202 of file gx_jack.h.

Referenced by signal_buffersize_change().

## bypass_insert

bool gx_jack::GxJack::bypass_insert

private

Definition at line 175 of file gx_jack.h.

Referenced by set_jack_insert().

## client

jack_client_t* gx_jack::GxJack::client

Definition at line 231 of file gx_jack.h.

Referenced by get_is_rt(), get_jcpu_load(), get_time_is(), and send_midi_cc().

## client_change

sigc::signal<void> gx_jack::GxJack::client_change

private

Definition at line 205 of file gx_jack.h.

Referenced by signal_client_change().

## client_change_rt

Glib::Dispatcher gx_jack::GxJack::client_change_rt

private

Definition at line 204 of file gx_jack.h.

## client_insert

jack_client_t* gx_jack::GxJack::client_insert

Definition at line 232 of file gx_jack.h.

## client_insert_name

string gx_jack::GxJack::client_insert_name

Definition at line 263 of file gx_jack.h.

## client_instance

string gx_jack::GxJack::client_instance

private

Definition at line 206 of file gx_jack.h.

Referenced by get_instancename().

## client_name

string gx_jack::GxJack::client_name

Definition at line 262 of file gx_jack.h.

## connection

Glib::Dispatcher gx_jack::GxJack::connection

Definition at line 268 of file gx_jack.h.

## connection_changed

sigc::signal<void,string,string,bool> gx_jack::GxJack::connection_changed

private

Definition at line 201 of file gx_jack.h.

Referenced by signal_connection_changed().

## connection_queue

PortConnRing gx_jack::GxJack::connection_queue

private

Definition at line 200 of file gx_jack.h.

Referenced by send_connection_changes(), and signal_portchange().

## current

jack_position_t gx_jack::GxJack::current

Definition at line 234 of file gx_jack.h.

## engine

gx_engine::GxEngine& gx_jack::GxJack::engine

private

Definition at line 172 of file gx_jack.h.

Referenced by get_engine().

## insert_buffer

float* gx_jack::GxJack::insert_buffer

private

Definition at line 209 of file gx_jack.h.

## IS_RT

bool gx_jack::GxJack::IS_RT

private

Definition at line 171 of file gx_jack.h.

Referenced by get_is_rt().

## jack_bs

jack_nframes_t gx_jack::GxJack::jack_bs

private

Definition at line 208 of file gx_jack.h.

Referenced by get_jack_bs().

## jack_is_down

bool gx_jack::GxJack::jack_is_down

private

Definition at line 173 of file gx_jack.h.

Referenced by is_jack_down(), and set_jack_down().

## jack_is_exit

bool gx_jack::GxJack::jack_is_exit

private

Definition at line 174 of file gx_jack.h.

Referenced by is_jack_exit(), and set_jack_exit().

## jack_sr

jack_nframes_t gx_jack::GxJack::jack_sr

private

Definition at line 207 of file gx_jack.h.

Referenced by get_jack_sr().

## last_xrun

float gx_jack::GxJack::last_xrun

private

Definition at line 211 of file gx_jack.h.

Referenced by get_last_xrun().

## mmessage

MidiCC gx_jack::GxJack::mmessage

private

Definition at line 176 of file gx_jack.h.

Referenced by send_midi_cc().

## old_transport_state

jack_transport_state_t gx_jack::GxJack::old_transport_state

Definition at line 236 of file gx_jack.h.

## ports

JackPorts gx_jack::GxJack::ports

Definition at line 229 of file gx_jack.h.

## rtc

GxRtCheck gx_jack::GxJack::rtc

private

Definition at line 170 of file gx_jack.h.

## session

Glib::Dispatcher gx_jack::GxJack::session

Definition at line 264 of file gx_jack.h.

## session_ins

Glib::Dispatcher gx_jack::GxJack::session_ins

Definition at line 265 of file gx_jack.h.

## shutdown

Glib::Dispatcher gx_jack::GxJack::shutdown

Definition at line 266 of file gx_jack.h.

## single_client

bool gx_jack::GxJack::single_client

Definition at line 277 of file gx_jack.h.

## transport_state

jack_transport_state_t gx_jack::GxJack::transport_state

Definition at line 235 of file gx_jack.h.

## xrun

Glib::Dispatcher gx_jack::GxJack::xrun

private

Definition at line 210 of file gx_jack.h.

## xrun_msg_blocked

bool gx_jack::GxJack::xrun_msg_blocked

private

Definition at line 212 of file gx_jack.h.

The documentation for this class was generated from the following file:

- src/headers/gx_jack.h