Aruna
|
Functions | |
void | set_status (status_t status) |
set the comm status More... | |
err_t | transmit (transmitpackage_t transmitpackage) |
Transmit a package. More... | |
void * | transmissionQueueHandeler (void *) |
Tramsmission handeler. More... | |
Link * | getDriver () |
get the driver More... | |
std::tuple< Link *, err_t > | pickDriver () |
pick the best available driver More... | |
void | setDriver (Link &driver) |
set the driver More... | |
unsigned int | rateDriver (Link &driver) |
rate the driver on speed, errors, active connection, realtime, connection type etc. More... | |
void * | _selectDriverTask (void *) |
pick a new best driver, dont call directly will delete your process. More... | |
void | selectDriverTask () |
start a task to select a driver, does not block. More... | |
void * | receiveHandeler (void *) |
Task to handle incomming connections. More... | |
bool | register_log () |
Variables | |
static log::channel_t * | log |
pthread_t | transmissionQueueHandeler_thread_handeler |
pthread_t | receiveHandeler_thread_handeler |
pthread_cond_t | out_buffer_not_empty |
pthread_mutex_t | out_buffer_critical |
std::queue< transmitpackage_t > | out_buffer |
std::set< Link * > | driverCandidates |
std::set< channel_t *, channel_t::compare_refrence > | channels |
all endpoints More... | |
status_t | status = status_t::STOPPED |
stores the comm status More... | |
Link * | driver |
stores the driver. More... | |
void * aruna::comm::anonymous_namespace{comm.cpp}::_selectDriverTask | ( | void * | ) |
pick a new best driver, dont call directly will delete your process.
Definition at line 194 of file comm.cpp.
Link * aruna::comm::anonymous_namespace{comm.cpp}::getDriver | ( | ) |
get the driver
Definition at line 154 of file comm.cpp.
pick the best available driver
NO_DRIVER
if no driver can be found 1: OK
if all is well Definition at line 161 of file comm.cpp.
unsigned int aruna::comm::anonymous_namespace{comm.cpp}::rateDriver | ( | Link & | driver | ) |
rate the driver on speed, errors, active connection, realtime, connection type etc.
driver |
Definition at line 179 of file comm.cpp.
void * aruna::comm::anonymous_namespace{comm.cpp}::receiveHandeler | ( | void * | ) |
Task to handle incomming connections.
Definition at line 220 of file comm.cpp.
bool aruna::comm::anonymous_namespace{comm.cpp}::register_log | ( | ) |
void aruna::comm::anonymous_namespace{comm.cpp}::selectDriverTask | ( | ) |
start a task to select a driver, does not block.
Definition at line 207 of file comm.cpp.
void aruna::comm::anonymous_namespace{comm.cpp}::set_status | ( | status_t | status | ) |
set the comm status
status | new status |
Definition at line 116 of file comm.cpp.
void aruna::comm::anonymous_namespace{comm.cpp}::setDriver | ( | Link & | driver | ) |
set the driver
driver | to use. |
Definition at line 157 of file comm.cpp.
void * aruna::comm::anonymous_namespace{comm.cpp}::transmissionQueueHandeler | ( | void * | ) |
Tramsmission handeler.
Do not call directly, blocks CPU.
None |
Definition at line 133 of file comm.cpp.
err_t aruna::comm::anonymous_namespace{comm.cpp}::transmit | ( | transmitpackage_t | transmitpackage | ) |
Transmit a package.
transmitpackage | package to be transmitted |
Definition at line 120 of file comm.cpp.
std::set<channel_t*, channel_t::compare_refrence> aruna::comm::anonymous_namespace{comm.cpp}::channels |
Link* aruna::comm::anonymous_namespace{comm.cpp}::driver |
std::set<Link *> aruna::comm::anonymous_namespace{comm.cpp}::driverCandidates |
|
static |
std::queue<transmitpackage_t> aruna::comm::anonymous_namespace{comm.cpp}::out_buffer |
pthread_mutex_t aruna::comm::anonymous_namespace{comm.cpp}::out_buffer_critical |
pthread_cond_t aruna::comm::anonymous_namespace{comm.cpp}::out_buffer_not_empty |
pthread_t aruna::comm::anonymous_namespace{comm.cpp}::receiveHandeler_thread_handeler |
status_t aruna::comm::anonymous_namespace{comm.cpp}::status = status_t::STOPPED |