From 02acf3cebd9ec61193f63415590929ef40c504c1 Mon Sep 17 00:00:00 2001 From: blacky Date: Fri, 1 Jul 2011 12:53:35 +0200 Subject: update & cleanup --- .gitignore | 4 + AudioManagerDeamon/AudioManagerCore.cpp | 191 +++++++++------ AudioManagerDeamon/DBusCommandInterface.cpp | 43 ++-- AudioManagerDeamon/DBusCommandInterface.h | 28 +-- AudioManagerDeamon/DataBaseHandler.cpp | 333 +++++++++++++++++--------- AudioManagerDeamon/DataBaseHandler.h | 41 +++- AudioManagerDeamon/HookEngine.cpp | 341 ++++++++++++++++----------- AudioManagerDeamon/HookEngine.h | 262 ++++++++++++++------ AudioManagerDeamon/Router.cpp | 65 ++--- AudioManagerDeamon/Router.h | 36 +-- AudioManagerDeamon/RoutingReceive.cpp | 75 +++--- AudioManagerDeamon/RoutingReceive.h | 7 +- AudioManagerDeamon/dataTypes.h | 22 +- AudioManagerDeamon/main.cpp | 14 +- AudioManagerDeamon/mainpage.h | 1 - AudioManagerDeamon/routinginterface.h | 131 +++++----- PluginRoutingInterfaceDbus/DBusInterface.cpp | 59 +++-- PluginRoutingInterfaceDbus/DBusInterface.h | 17 +- PluginRoutingInterfaceDbus/RoutingSend.cpp | 51 ++-- PluginRoutingInterfaceDbus/RoutingSend.h | 15 +- PluginRoutingInterfaceJack/RoutingSend.cpp | 12 + README | 9 + 22 files changed, 1082 insertions(+), 675 deletions(-) diff --git a/.gitignore b/.gitignore index 47cde55..942f89a 100644 --- a/.gitignore +++ b/.gitignore @@ -6,3 +6,7 @@ beagleClient/ PluginRoutingInterfaceTCP/ pulseaudio-0.9.22/ dbusInterfaces/tcpMessages.h +.settings/ +*.cproject +*.project +.metadata/ diff --git a/AudioManagerDeamon/AudioManagerCore.cpp b/AudioManagerDeamon/AudioManagerCore.cpp index 8a548ce..9133006 100644 --- a/AudioManagerDeamon/AudioManagerCore.cpp +++ b/AudioManagerDeamon/AudioManagerCore.cpp @@ -35,7 +35,8 @@ Task::Task(AudioManagerCore* core) { m_core = core; } -TaskAsyncConnect::TaskAsyncConnect(AudioManagerCore* core, sink_t sink, source_t source) : +TaskAsyncConnect::TaskAsyncConnect(AudioManagerCore* core, sink_t sink, + source_t source) : Task(core), m_ParamSink(sink), m_ParamSource(source) { } @@ -43,11 +44,16 @@ TaskAsyncConnect::~TaskAsyncConnect() { } void TaskAsyncConnect::executeTask(Queue* queue) { - QObject::connect((const QObject*) this, SIGNAL(signal_nextTask()), (const QObject*) queue, SLOT(slot_nextTask())); - QObject::connect((const QObject*) m_core->returnReceiver(), SIGNAL(signal_ackConnect(genHandle_t , genError_t )), (const QObject*) this, SLOT(slot_connect_finished(genHandle_t , genError_t ))); + QObject::connect((const QObject*) this, SIGNAL(signal_nextTask()), + (const QObject*) queue, SLOT(slot_nextTask())); + QObject::connect((const QObject*) m_core->returnReceiver(), + SIGNAL(signal_ackConnect(genHandle_t, genError_t)), + (const QObject*) this, + SLOT(slot_connect_finished(genHandle_t, genError_t))); m_timer = new QTimer(); m_timer->setSingleShot(true); - QObject::connect(m_timer, SIGNAL(timeout()), (const QObject*) this, SLOT(slot_timeout())); + QObject::connect(m_timer, SIGNAL(timeout()), (const QObject*) this, + SLOT(slot_timeout())); DLT_LOG(AudioManager,DLT_LOG_INFO, DLT_STRING("Started Connect")); m_timer->start(CONNECT_TIMEOUT); m_core->connect(m_ParamSource, m_ParamSink, &m_handle); @@ -69,7 +75,8 @@ source_t TaskAsyncConnect::getSource() { return m_ParamSource; } -void TaskAsyncConnect::slot_connect_finished(genHandle_t handle, genError_t error) { +void TaskAsyncConnect::slot_connect_finished(genHandle_t handle, + genError_t error) { if (handle == m_handle && error == GEN_OK) { m_timer->stop(); delete m_timer; @@ -96,27 +103,30 @@ TaskConnect::~TaskConnect() { } void TaskConnect::executeTask(Queue* queue) { - QObject::connect((const QObject*) this, SIGNAL(signal_nextTask()), (const QObject*) queue, SLOT(slot_nextTask())); + QObject::connect((const QObject*) this, SIGNAL(signal_nextTask()), + (const QObject*) queue, SLOT(slot_nextTask())); DLT_LOG(AudioManager,DLT_LOG_INFO, DLT_STRING("Started Syncronous Connect")); m_core->connect(m_ParamSource, m_ParamSink); emit signal_nextTask(); } TaskDisconnect::TaskDisconnect(AudioManagerCore* core, connection_t ID) : - Task(core), m_ParamConnectionID(ID) { + Task(core), m_ParamConnectionID(ID) { } TaskDisconnect::~TaskDisconnect() { } void TaskDisconnect::executeTask(Queue* queue) { - QObject::connect((const QObject*) this, SIGNAL(signal_nextTask()), (const QObject*) queue, SLOT(slot_nextTask())); + QObject::connect((const QObject*) this, SIGNAL(signal_nextTask()), + (const QObject*) queue, SLOT(slot_nextTask())); m_core->disconnect(m_ParamConnectionID); emit signal_nextTask(); } -TaskInterruptWait::TaskInterruptWait(AudioManagerCore* core,genInt_t interruptID) : - Task(core), m_interruptID(interruptID) { +TaskInterruptWait::TaskInterruptWait(AudioManagerCore* core, + genInt_t interruptID) : + Task(core), m_interruptID(interruptID) { } TaskInterruptWait::~TaskInterruptWait() { @@ -124,17 +134,21 @@ TaskInterruptWait::~TaskInterruptWait() { } void TaskInterruptWait::executeTask(Queue* queue) { - QObject::connect((const QObject*) this, SIGNAL(signal_nextTask()), (const QObject*) queue, SLOT(slot_nextTask())); - QObject::connect((const QObject*) m_core->returnCommandInterface(), SIGNAL(signal_interruptResume(genInt_t)), (const QObject*) this, SLOT(slot_interrupt_ready(genInt_t))); + QObject::connect((const QObject*) this, SIGNAL(signal_nextTask()), + (const QObject*) queue, SLOT(slot_nextTask())); + QObject::connect((const QObject*) m_core->returnCommandInterface(), + SIGNAL(signal_interruptResume(genInt_t)), (const QObject*) this, + SLOT(slot_interrupt_ready(genInt_t))); } void TaskInterruptWait::slot_interrupt_ready(genInt_t ID) { - if (ID==m_interruptID) { + if (ID == m_interruptID) { emit signal_nextTask(); } } -TaskSetVolume::TaskSetVolume(AudioManagerCore* core, volume_t newVolume, sink_t sink) : +TaskSetVolume::TaskSetVolume(AudioManagerCore* core, volume_t newVolume, + sink_t sink) : Task(core), m_volume(newVolume), m_sink(sink) { } @@ -159,14 +173,16 @@ sink_t TaskSetVolume::getSink() { } void TaskSetVolume::executeTask(Queue* queue) { - QObject::connect((const QObject*) this, SIGNAL(signal_nextTask()), (const QObject*) queue, SLOT(slot_nextTask())); + QObject::connect((const QObject*) this, SIGNAL(signal_nextTask()), + (const QObject*) queue, SLOT(slot_nextTask())); DLT_LOG(AudioManager,DLT_LOG_INFO, DLT_STRING("Started Changed Volume")); m_core->setVolume(m_sink, m_volume); emit signal_nextTask(); } -TaskSetSourceVolume::TaskSetSourceVolume(AudioManagerCore* core, volume_t newVolume, source_t source) : - Task(core), m_volume(newVolume), m_source(source) { +TaskSetSourceVolume::TaskSetSourceVolume(AudioManagerCore* core, + volume_t newVolume, source_t source) : + Task(core), m_volume(newVolume), m_source(source) { } @@ -175,14 +191,14 @@ TaskSetSourceVolume::~TaskSetSourceVolume() { } void TaskSetSourceVolume::setVolume(volume_t newVolume) { - m_volume=newVolume; + m_volume = newVolume; } void TaskSetSourceVolume::setSource(source_t source) { - m_source=source; + m_source = source; } -volume_t TaskSetSourceVolume::getVolume(){ +volume_t TaskSetSourceVolume::getVolume() { return m_volume; } source_t TaskSetSourceVolume::getSource() { @@ -190,7 +206,8 @@ source_t TaskSetSourceVolume::getSource() { } void TaskSetSourceVolume::executeTask(Queue* queue) { - QObject::connect((const QObject*) this, SIGNAL(signal_nextTask()), (const QObject*) queue, SLOT(slot_nextTask())); + QObject::connect((const QObject*) this, SIGNAL(signal_nextTask()), + (const QObject*) queue, SLOT(slot_nextTask())); DLT_LOG(AudioManager,DLT_LOG_INFO, DLT_STRING("Started Changed Source Volume")); m_core->setSourceVolume(m_source, m_volume); emit signal_nextTask(); @@ -212,10 +229,12 @@ int TaskWait::getTime() { } void TaskWait::executeTask(Queue* queue) { - QObject::connect((const QObject*) this, SIGNAL(signal_nextTask()), (const QObject*) queue, SLOT(slot_nextTask())); + QObject::connect((const QObject*) this, SIGNAL(signal_nextTask()), + (const QObject*) queue, SLOT(slot_nextTask())); m_timer = new QTimer(); m_timer->setSingleShot(true); - QObject::connect(m_timer, SIGNAL(timeout()), (const QObject*) this, SLOT(slot_timeIsup())); + QObject::connect(m_timer, SIGNAL(timeout()), (const QObject*) this, + SLOT(slot_timeIsup())); DLT_LOG(AudioManager,DLT_LOG_INFO, DLT_STRING("Start Sleep ")); m_timer->start(m_ParamMSeconds); } @@ -226,7 +245,8 @@ void TaskWait::slot_timeIsup() { emit signal_nextTask(); } -TaskEnterUserConnect::TaskEnterUserConnect(AudioManagerCore* core, genRoute_t route, connection_t connID) : +TaskEnterUserConnect::TaskEnterUserConnect(AudioManagerCore* core, + genRoute_t route, connection_t connID) : Task(core), m_route(route), m_connectionID(connID) { } @@ -235,7 +255,7 @@ TaskEnterUserConnect::~TaskEnterUserConnect() { void TaskEnterUserConnect::setConnection(genRoute_t route, connection_t connID) { m_route = route; - m_connectionID=connID; + m_connectionID = connID; } genRoute_t TaskEnterUserConnect::returnConnection() { @@ -243,13 +263,16 @@ genRoute_t TaskEnterUserConnect::returnConnection() { } void TaskEnterUserConnect::executeTask(Queue* queue) { - QObject::connect((const QObject*) this, SIGNAL(signal_nextTask()), (const QObject*) queue, SLOT(slot_nextTask())); - m_core->returnDatabaseHandler()->updateMainConnection(m_connectionID,m_route); + QObject::connect((const QObject*) this, SIGNAL(signal_nextTask()), + (const QObject*) queue, SLOT(slot_nextTask())); + m_core->returnDatabaseHandler()->updateMainConnection(m_connectionID, + m_route); emit signal_nextTask(); } -TaskRemoveUserConnect::TaskRemoveUserConnect(AudioManagerCore* core, connection_t connID): - Task(core), m_connectionID(connID) { +TaskRemoveUserConnect::TaskRemoveUserConnect(AudioManagerCore* core, + connection_t connID) : + Task(core), m_connectionID(connID) { } TaskRemoveUserConnect::~TaskRemoveUserConnect() { @@ -257,7 +280,7 @@ TaskRemoveUserConnect::~TaskRemoveUserConnect() { } void TaskRemoveUserConnect::setConnectionID(connection_t connID) { - m_connectionID=connID; + m_connectionID = connID; } connection_t TaskRemoveUserConnect::returnConnectionID() { @@ -265,21 +288,26 @@ connection_t TaskRemoveUserConnect::returnConnectionID() { } void TaskRemoveUserConnect::executeTask(Queue* queue) { - QObject::connect((const QObject*) this, SIGNAL(signal_nextTask()), (const QObject*) queue, SLOT(slot_nextTask())); + QObject::connect((const QObject*) this, SIGNAL(signal_nextTask()), + (const QObject*) queue, SLOT(slot_nextTask())); m_core->returnDatabaseHandler()->removeMainConnection(m_connectionID); emit signal_nextTask(); } -TaskEnterInterrupt::TaskEnterInterrupt(AudioManagerCore* core, genInt_t ID, bool mixed, connection_t connID, QList listInterruptedSources) : - Task(core), m_intID(ID), m_mixed(mixed), m_connectionID(connID), m_interruptedSourcesList(listInterruptedSources) { +TaskEnterInterrupt::TaskEnterInterrupt(AudioManagerCore* core, genInt_t ID, + bool mixed, connection_t connID, QList listInterruptedSources) : + Task(core), m_intID(ID), m_mixed(mixed), m_connectionID(connID), + m_interruptedSourcesList(listInterruptedSources) { } TaskEnterInterrupt::~TaskEnterInterrupt() { } void TaskEnterInterrupt::executeTask(Queue* queue) { - QObject::connect((const QObject*) this, SIGNAL(signal_nextTask()), (const QObject*) queue, SLOT(slot_nextTask())); - m_core->returnDatabaseHandler()->updateInterrupt(m_intID,m_connectionID,m_mixed,m_interruptedSourcesList); + QObject::connect((const QObject*) this, SIGNAL(signal_nextTask()), + (const QObject*) queue, SLOT(slot_nextTask())); + m_core->returnDatabaseHandler()->updateInterrupt(m_intID, m_connectionID, + m_mixed, m_interruptedSourcesList); emit signal_nextTask(); } @@ -291,45 +319,51 @@ TaskRemoveInterrupt::~TaskRemoveInterrupt() { } void TaskRemoveInterrupt::executeTask(Queue* queue) { - QObject::connect((const QObject*) this, SIGNAL(signal_nextTask()), (const QObject*) queue, SLOT(slot_nextTask())); + QObject::connect((const QObject*) this, SIGNAL(signal_nextTask()), + (const QObject*) queue, SLOT(slot_nextTask())); m_core->returnDatabaseHandler()->removeInterrupt(m_intID); emit signal_nextTask(); } TaskSetSourceMute::TaskSetSourceMute(AudioManagerCore* core, source_t source) : - Task(core), m_source(source) { + Task(core), m_source(source) { } -TaskSetSourceMute::~TaskSetSourceMute(){ +TaskSetSourceMute::~TaskSetSourceMute() { } void TaskSetSourceMute::executeTask(Queue* queue) { - QObject::connect((const QObject*) this, SIGNAL(signal_nextTask()), (const QObject*) queue, SLOT(slot_nextTask())); + QObject::connect((const QObject*) this, SIGNAL(signal_nextTask()), + (const QObject*) queue, SLOT(slot_nextTask())); m_core->setSourceMute(m_source); emit signal_nextTask(); } -TaskSetSourceUnmute::TaskSetSourceUnmute(AudioManagerCore* core, source_t source): - Task(core), m_source(source) { +TaskSetSourceUnmute::TaskSetSourceUnmute(AudioManagerCore* core, + source_t source) : + Task(core), m_source(source) { } TaskSetSourceUnmute::~TaskSetSourceUnmute() { } void TaskSetSourceUnmute::executeTask(Queue* queue) { - QObject::connect((const QObject*) this, SIGNAL(signal_nextTask()), (const QObject*) queue, SLOT(slot_nextTask())); + QObject::connect((const QObject*) this, SIGNAL(signal_nextTask()), + (const QObject*) queue, SLOT(slot_nextTask())); m_core->setSourceUnMute(m_source); emit signal_nextTask(); } -TaskEmitSignalConnect::TaskEmitSignalConnect(AudioManagerCore* core) : Task(core) { +TaskEmitSignalConnect::TaskEmitSignalConnect(AudioManagerCore* core) : + Task(core) { } TaskEmitSignalConnect::~TaskEmitSignalConnect() { } void TaskEmitSignalConnect::executeTask(Queue* queue) { - QObject::connect((const QObject*) this, SIGNAL(signal_nextTask()), (const QObject*) queue, SLOT(slot_nextTask())); + QObject::connect((const QObject*) this, SIGNAL(signal_nextTask()), + (const QObject*) queue, SLOT(slot_nextTask())); m_core->emitSignalConnect(); emit signal_nextTask(); } @@ -341,15 +375,14 @@ Queue::Queue(AudioManagerCore* core, QString name) : Queue::~Queue() { DLT_LOG(AudioManager,DLT_LOG_INFO, DLT_STRING("shoot all tasks")); - foreach (Task* task, m_taskList) - { - delete task; - } + foreach (Task* task, m_taskList) { + delete task; + } m_core->removeQueue(this); } void Queue::run() { - if (m_taskList.isEmpty()==false) { + if (m_taskList.isEmpty() == false) { Task* task = m_taskList.first(); DLT_LOG(AudioManager,DLT_LOG_INFO, DLT_STRING("Started to execute Task")); task->executeTask(this); @@ -397,10 +430,9 @@ AudioManagerCore::AudioManagerCore() : AudioManagerCore::~AudioManagerCore() { DLT_LOG(AudioManager,DLT_LOG_INFO, DLT_STRING("delete all running queues")); - foreach (Queue* queue, m_queueList) - { - delete queue; - } + foreach (Queue* queue, m_queueList) { + delete queue; + } } Router* AudioManagerCore::returnRouter() { @@ -440,19 +472,21 @@ void AudioManagerCore::registerReceiver(RoutingReceiver* receiver) { } void AudioManagerCore::registerCommandInterface(DBusCommandInterface* command) { - m_command=command; + m_command = command; } genError_t AudioManagerCore::UserConnect(source_t source, sink_t sink) { Queue* userConnectionRequestQ = new Queue(this, "User Connect"); - m_hookHandler->fireHookUserConnectionRequest(userConnectionRequestQ, source, sink); + m_hookHandler->fireHookUserConnectionRequest(userConnectionRequestQ, + source, sink); userConnectionRequestQ->run(); return GEN_OK; } genError_t AudioManagerCore::UserDisconnect(connection_t connID) { Queue* userDisconnectionRequestQ = new Queue(this, "User Disconnect"); - m_hookHandler->fireHookUserDisconnectionRequest(userDisconnectionRequestQ,connID); + m_hookHandler->fireHookUserDisconnectionRequest(userDisconnectionRequestQ, + connID); userDisconnectionRequestQ->run(); return GEN_OK; } @@ -482,11 +516,13 @@ void AudioManagerCore::emitSignalConnect() { emit signal_connectionChanged(); } -genError_t AudioManagerCore::connect(source_t source, sink_t sink, genHandle_t* handle) { +genError_t AudioManagerCore::connect(source_t source, sink_t sink, + genHandle_t* handle) { genHandle_t localhandle; DLT_LOG(AudioManager,DLT_LOG_INFO, DLT_STRING("Connect"), DLT_INT(source), DLT_STRING(" to "), DLT_INT(sink)); domain_t domainID = m_databaseHandler->get_Domain_ID_from_Source_ID(source); - RoutingSendInterface* iface = m_busHandler->getInterfaceforBus(m_databaseHandler->get_Bus_from_Domain_ID(domainID)); + RoutingSendInterface* iface = m_busHandler->getInterfaceforBus( + m_databaseHandler->get_Bus_from_Domain_ID(domainID)); localhandle = m_databaseHandler->insertConnection(source, sink); if (handle) { @@ -502,7 +538,8 @@ genError_t AudioManagerCore::connect(source_t source, sink_t sink, genHandle_t* genError_t AudioManagerCore::disconnect(connection_t ID) { domain_t domainID = m_databaseHandler->get_Domain_ID_from_Connection_ID(ID); - RoutingSendInterface* iface = m_busHandler->getInterfaceforBus(m_databaseHandler->get_Bus_from_Domain_ID(domainID)); + RoutingSendInterface* iface = m_busHandler->getInterfaceforBus( + m_databaseHandler->get_Bus_from_Domain_ID(domainID)); iface->disconnect(ID); m_databaseHandler->removeConnection(ID); return GEN_OK; @@ -512,7 +549,9 @@ genError_t AudioManagerCore::disconnect(connection_t ID) { } genError_t AudioManagerCore::setVolume(sink_t sink, volume_t volume) { - RoutingSendInterface* iface = m_busHandler->getInterfaceforBus(m_databaseHandler->get_Bus_from_Domain_ID(m_databaseHandler->get_Domain_ID_from_Sink_ID(sink))); + RoutingSendInterface* iface = m_busHandler->getInterfaceforBus( + m_databaseHandler->get_Bus_from_Domain_ID( + m_databaseHandler->get_Domain_ID_from_Sink_ID(sink))); iface->setSinkVolume(volume, sink); return GEN_OK; /** @@ -520,37 +559,47 @@ genError_t AudioManagerCore::setVolume(sink_t sink, volume_t volume) { */ } -genError_t AudioManagerCore::interruptRequest(source_t interruptSource, sink_t sink, genInt_t* interrupt) { +genError_t AudioManagerCore::interruptRequest(source_t interruptSource, + sink_t sink, genInt_t* interrupt) { Queue* interruptRequestQ = new Queue(this, "Interrupt Request"); - m_hookHandler->fireHookInterruptRequest(interruptRequestQ, interruptSource, sink, interrupt); + m_hookHandler->fireHookInterruptRequest(interruptRequestQ, interruptSource, + sink, interrupt); interruptRequestQ->run(); return GEN_OK; } -genError_t AudioManagerCore::setSourceVolume (source_t source, volume_t volume) { - RoutingSendInterface* iface = m_busHandler->getInterfaceforBus(m_databaseHandler->get_Bus_from_Domain_ID(m_databaseHandler->get_Domain_ID_from_Source_ID(source))); +genError_t AudioManagerCore::setSourceVolume(source_t source, volume_t volume) { + RoutingSendInterface* iface = m_busHandler->getInterfaceforBus( + m_databaseHandler->get_Bus_from_Domain_ID( + m_databaseHandler->get_Domain_ID_from_Source_ID(source))); iface->setSourceVolume(volume, source); return GEN_OK; } -genError_t AudioManagerCore::setSourceMute (source_t source) { - RoutingSendInterface* iface = m_busHandler->getInterfaceforBus(m_databaseHandler->get_Bus_from_Domain_ID(m_databaseHandler->get_Domain_ID_from_Source_ID(source))); +genError_t AudioManagerCore::setSourceMute(source_t source) { + RoutingSendInterface* iface = m_busHandler->getInterfaceforBus( + m_databaseHandler->get_Bus_from_Domain_ID( + m_databaseHandler->get_Domain_ID_from_Source_ID(source))); iface->muteSource(source); return GEN_OK; } -genError_t AudioManagerCore::setSourceUnMute (source_t source) { - RoutingSendInterface* iface = m_busHandler->getInterfaceforBus(m_databaseHandler->get_Bus_from_Domain_ID(m_databaseHandler->get_Domain_ID_from_Source_ID(source))); +genError_t AudioManagerCore::setSourceUnMute(source_t source) { + RoutingSendInterface* iface = m_busHandler->getInterfaceforBus( + m_databaseHandler->get_Bus_from_Domain_ID( + m_databaseHandler->get_Domain_ID_from_Source_ID(source))); iface->unmuteSource(source); return GEN_OK; } -genError_t AudioManagerCore::getRoute(const bool onlyfree, const source_t source, const sink_t sink, QList* ReturnList) { - m_hookHandler->fireHookRoutingRequest(onlyfree,source,sink,ReturnList); +genError_t AudioManagerCore::getRoute(const bool onlyfree, + const source_t source, const sink_t sink, QList* ReturnList) { + m_hookHandler->fireHookRoutingRequest(onlyfree, source, sink, ReturnList); return GEN_OK; } -connection_t AudioManagerCore::returnConnectionIDforSinkSource (sink_t sink, source_t source) { +connection_t AudioManagerCore::returnConnectionIDforSinkSource(sink_t sink, + source_t source) { return m_databaseHandler->getConnectionID(source, sink); } diff --git a/AudioManagerDeamon/DBusCommandInterface.cpp b/AudioManagerDeamon/DBusCommandInterface.cpp index cb0b590..775d5d6 100644 --- a/AudioManagerDeamon/DBusCommandInterface.cpp +++ b/AudioManagerDeamon/DBusCommandInterface.cpp @@ -26,11 +26,9 @@ #include "DBusCommandInterface.h" #include "DBusCommand.h" - DBusCommandInterface::DBusCommandInterface(QObject* parent) { - (void)parent; - REGISTER_METATYPES -} + (void) parent; +REGISTER_METATYPES} void DBusCommandInterface::startupInterface() { DLT_LOG(AudioManager,DLT_LOG_INFO, DLT_STRING("Startup of DBUS Command interface")); @@ -39,7 +37,11 @@ void DBusCommandInterface::startupInterface() { QDBusConnection connection = QDBusConnection::sessionBus(); connection.registerService(QString(SERVICEINTERFACE)); if (connection.isConnected()) { - if (connection.registerObject("/Control", this, (QDBusConnection::ExportAdaptors | QDBusConnection::ExportAllSignals))) { + if (connection.registerObject( + "/Control", + this, + (QDBusConnection::ExportAdaptors + | QDBusConnection::ExportAllSignals))) { DLT_LOG(AudioManager,DLT_LOG_INFO, DLT_STRING("Registered DBUS Command interface succsessfully")); } else { DLT_LOG(AudioManager,DLT_LOG_ERROR, DLT_STRING("Failed to register DBUS Command interface succsessfully")); @@ -48,7 +50,7 @@ void DBusCommandInterface::startupInterface() { } int DBusCommandInterface::connect(int Source_ID, int Sink_ID) { - if(m_core->UserConnect(Source_ID, Sink_ID)==GEN_OK) { + if (m_core->UserConnect(Source_ID, Sink_ID) == GEN_OK) { return 1; } return -1; @@ -64,11 +66,12 @@ int DBusCommandInterface::disconnect(int Source_ID, int Sink_ID) { } } -int DBusCommandInterface::interruptRequest(const QString &SourceName, const QString &SinkName) { - source_t sourceID=m_core->returnSourceIDfromName(SourceName); - sink_t sinkID=m_core->returnSinkIDfromName(SinkName); - genInt_t intID=-1; - m_core->interruptRequest(sourceID,sinkID,&intID); +int DBusCommandInterface::interruptRequest(const QString &SourceName, + const QString &SinkName) { + source_t sourceID = m_core->returnSourceIDfromName(SourceName); + sink_t sinkID = m_core->returnSinkIDfromName(SinkName); + genInt_t intID = -1; + m_core->interruptRequest(sourceID, sinkID, &intID); return intID; } @@ -77,16 +80,19 @@ int DBusCommandInterface::interruptResume(int InterruptID) { return 1; } - - void DBusCommandInterface::registerAudioManagerCore(AudioManagerCore* core) { m_core = core; - QObject::connect((const QObject*) m_core, SIGNAL(signal_connectionChanged()), (const QObject*) this, SLOT(slot_connectionChanged())); - QObject::connect((const QObject*) m_core, SIGNAL(signal_numberOfSinksChanged()), (const QObject*) this, SLOT(slot_numberOfSinksChanged())); - QObject::connect((const QObject*) m_core, SIGNAL(signal_numberOfSourcesChanged()), (const QObject*) this, SLOT(slot_numberOfSourcesChanged())); + QObject::connect((const QObject*) m_core, + SIGNAL(signal_connectionChanged()), (const QObject*) this, + SLOT(slot_connectionChanged())); + QObject::connect((const QObject*) m_core, + SIGNAL(signal_numberOfSinksChanged()), (const QObject*) this, + SLOT(slot_numberOfSinksChanged())); + QObject::connect((const QObject*) m_core, + SIGNAL(signal_numberOfSourcesChanged()), (const QObject*) this, + SLOT(slot_numberOfSourcesChanged())); } - void DBusCommandInterface::slot_connectionChanged() { emit signal_connectionChanged(); } @@ -98,13 +104,12 @@ void DBusCommandInterface::slot_numberOfSourcesChanged() { } int DBusCommandInterface::setVolume(int SinkID, int Volume) { - if (m_core->UserSetVolume(SinkID,Volume)==GEN_OK) { + if (m_core->UserSetVolume(SinkID, Volume) == GEN_OK) { return 1; } return -1; } - QList DBusCommandInterface::getListSources() { return m_core->getListSources(); } diff --git a/AudioManagerDeamon/DBusCommandInterface.h b/AudioManagerDeamon/DBusCommandInterface.h index 85b9a79..8eaa51f 100644 --- a/AudioManagerDeamon/DBusCommandInterface.h +++ b/AudioManagerDeamon/DBusCommandInterface.h @@ -23,11 +23,9 @@ * */ - #ifndef DBUSCOMMANDINTERFACE_H_ #define DBUSCOMMANDINTERFACE_H_ - #include "audioManagerIncludes.h" #include "DBusTypes.h" @@ -40,28 +38,28 @@ class AudioManagerCore; * It also implements some Application logic that needs to be triggered to execute the actions demanded by the HMI. * TODO: make a clear seperation between HMI Interface and Application Logic */ -class DBusCommandInterface : public QObject { - Q_OBJECT +class DBusCommandInterface: public QObject { +Q_OBJECT public: DBusCommandInterface(QObject *parent = 0); void registerAudioManagerCore(AudioManagerCore* core); void startupInterface(); - public slots: void slot_connectionChanged(); void slot_numberOfSinksChanged(); void slot_numberOfSourcesChanged(); -public Q_SLOTS: // METHODS - int connect(int Source_ID, int Sink_ID); - int disconnect(int Source_ID, int Sink_ID); - QList < ConnectionType > getListConnections(); - QList < SinkType > getListSinks(); - QList < SourceType > getListSources(); - int interruptRequest(const QString &SourceName, const QString &SinkName); - int interruptResume(int InterruptID); - int setVolume(int SinkID, int Volume); +public Q_SLOTS: + // METHODS + int connect(int Source_ID, int Sink_ID); + int disconnect(int Source_ID, int Sink_ID); + QList getListConnections(); + QList getListSinks(); + QList getListSources(); + int interruptRequest(const QString &SourceName, const QString &SinkName); + int interruptResume(int InterruptID); + int setVolume(int SinkID, int Volume); Q_SIGNALS: // SIGNALS void signal_connectionChanged(); @@ -71,7 +69,7 @@ Q_SIGNALS: // SIGNALS void signal_interruptResume(genInt_t interruptID); private: - QList getSourceIDsForSinkID(int SinkID); + QList getSourceIDsForSinkID(int SinkID); AudioManagerCore* m_core; }; diff --git a/AudioManagerDeamon/DataBaseHandler.cpp b/AudioManagerDeamon/DataBaseHandler.cpp index 9bf0abe..d9997df 100644 --- a/AudioManagerDeamon/DataBaseHandler.cpp +++ b/AudioManagerDeamon/DataBaseHandler.cpp @@ -70,59 +70,83 @@ bool DataBaseHandler::delete_data(QString table) { bool DataBaseHandler::create_tables() { QSqlQuery query; - QString command = "CREATE TABLE " + QString(DOMAIN_TABLE) + " (ID INTEGER NOT NULL, DomainName VARCHAR(50), BusName VARCHAR(50), NodeName VARCHAR(50), EarlyMode BOOL, PRIMARY KEY(ID));"; + QString + command = + "CREATE TABLE " + QString(DOMAIN_TABLE) + + " (ID INTEGER NOT NULL, DomainName VARCHAR(50), BusName VARCHAR(50), NodeName VARCHAR(50), EarlyMode BOOL, PRIMARY KEY(ID));"; if (query.exec(command) != true) { DLT_LOG(AudioManager,DLT_LOG_ERROR, DLT_STRING("Databasehandler: Could not create table"), DLT_STRING(DOMAIN_TABLE)); return false; } - command = "CREATE TABLE " + QString(SOURCE_CLASS_TABLE) + " (ID INTEGER NOT NULL, ClassName VARCHAR(50), VolumeOffset INTEGER, IsInterrupt BOOL, IsMixed BOOL, PRIMARY KEY(ID));"; + command + = "CREATE TABLE " + QString(SOURCE_CLASS_TABLE) + + " (ID INTEGER NOT NULL, ClassName VARCHAR(50), VolumeOffset INTEGER, IsInterrupt BOOL, IsMixed BOOL, PRIMARY KEY(ID));"; if (query.exec(command) != true) { DLT_LOG(AudioManager,DLT_LOG_ERROR, DLT_STRING("Databasehandler: Could not create table"), DLT_STRING(SOURCE_CLASS_TABLE)); return false; } - command = "CREATE TABLE " + QString(SINK_CLASS_TABLE) + " (ID INTEGER NOT NULL, ClassName VARCHAR(50), PRIMARY KEY(ID));"; + command = "CREATE TABLE " + QString(SINK_CLASS_TABLE) + + " (ID INTEGER NOT NULL, ClassName VARCHAR(50), PRIMARY KEY(ID));"; if (query.exec(command) != true) { DLT_LOG(AudioManager,DLT_LOG_ERROR, DLT_STRING("Databasehandler: Could not create table"), DLT_STRING(SINK_CLASS_TABLE)); return false; } - command = "CREATE TABLE " + QString(SOURCE_TABLE) + " (ID INTEGER NOT NULL, Name VARCHAR(50), Class_ID INTEGER, Domain_ID INTEGER, IsGateway BOOL, PRIMARY KEY(ID), FOREIGN KEY (Domain_ID) REFERENCES " + DOMAIN_TABLE - + "(ID), FOREIGN KEY (Class_ID) REFERENCES " + SOURCE_CLASS_TABLE + "(ID));"; + command + = "CREATE TABLE " + QString(SOURCE_TABLE) + + " (ID INTEGER NOT NULL, Name VARCHAR(50), Class_ID INTEGER, Domain_ID INTEGER, IsGateway BOOL, PRIMARY KEY(ID), FOREIGN KEY (Domain_ID) REFERENCES " + + DOMAIN_TABLE + "(ID), FOREIGN KEY (Class_ID) REFERENCES " + + SOURCE_CLASS_TABLE + "(ID));"; if (query.exec(command) != true) { DLT_LOG(AudioManager,DLT_LOG_ERROR, DLT_STRING("Databasehandler: Could not create table"), DLT_STRING(SOURCE_TABLE)); return false; } - command = "CREATE TABLE " + QString(SINK_TABLE) + " (ID INTEGER NOT NULL, Name VARCHAR(50), Class_ID INTEGER, Domain_ID INTEGER, IsGateway BOOL, PRIMARY KEY(ID), FOREIGN KEY (DOMAIN_ID) REFERENCES " + DOMAIN_TABLE - + "(ID), FOREIGN KEY (Class_ID) REFERENCES " + SOURCE_CLASS_TABLE + "(ID));"; + command + = "CREATE TABLE " + QString(SINK_TABLE) + + " (ID INTEGER NOT NULL, Name VARCHAR(50), Class_ID INTEGER, Domain_ID INTEGER, IsGateway BOOL, PRIMARY KEY(ID), FOREIGN KEY (DOMAIN_ID) REFERENCES " + + DOMAIN_TABLE + "(ID), FOREIGN KEY (Class_ID) REFERENCES " + + SOURCE_CLASS_TABLE + "(ID));"; if (query.exec(command) != true) { DLT_LOG(AudioManager,DLT_LOG_ERROR, DLT_STRING("Databasehandler: Could not create table"), DLT_STRING(SOURCE_CLASS_TABLE)); return false; } - command = "CREATE TABLE " + QString(GATEWAY_TABLE) - + " (ID INTEGER NOT NULL, Name VARCHAR(50), Sink_ID INTEGER, Source_ID INTEGER, DomainSource_ID INTEGER, DomainSink_ID INTEGER, ControlDomain_ID Integer, IsBlocked BOOL, PRIMARY KEY(ID), FOREIGN KEY (Sink_ID) REFERENCES " + SINK_TABLE - + "(ID), FOREIGN KEY (Source_ID) REFERENCES " + SOURCE_TABLE + "(ID),FOREIGN KEY (DomainSource_ID) REFERENCES " + DOMAIN_TABLE + "(ID),FOREIGN KEY (DomainSink_ID) REFERENCES " + DOMAIN_TABLE + "(ID));"; + command + = "CREATE TABLE " + QString(GATEWAY_TABLE) + + " (ID INTEGER NOT NULL, Name VARCHAR(50), Sink_ID INTEGER, Source_ID INTEGER, DomainSource_ID INTEGER, DomainSink_ID INTEGER, ControlDomain_ID Integer, IsBlocked BOOL, PRIMARY KEY(ID), FOREIGN KEY (Sink_ID) REFERENCES " + + SINK_TABLE + "(ID), FOREIGN KEY (Source_ID) REFERENCES " + + SOURCE_TABLE + + "(ID),FOREIGN KEY (DomainSource_ID) REFERENCES " + + DOMAIN_TABLE + + "(ID),FOREIGN KEY (DomainSink_ID) REFERENCES " + + DOMAIN_TABLE + "(ID));"; if (query.exec(command) != true) { DLT_LOG(AudioManager,DLT_LOG_ERROR, DLT_STRING("Databasehandler: Could not create table"), DLT_STRING(GATEWAY_TABLE)); return false; } - command = "CREATE TABLE " + QString(CONNECTION_TABLE) + " (ID INTEGER NOT NULL, Source_ID INTEGER, Sink_ID INTEGER, PRIMARY KEY(ID));"; + command + = "CREATE TABLE " + QString(CONNECTION_TABLE) + + " (ID INTEGER NOT NULL, Source_ID INTEGER, Sink_ID INTEGER, PRIMARY KEY(ID));"; if (query.exec(command) != true) { DLT_LOG(AudioManager,DLT_LOG_ERROR, DLT_STRING("Databasehandler: Could not create table"), DLT_STRING(CONNECTION_TABLE)); return false; } - command = "CREATE TABLE " + QString(INTERRUPT_TABLE) + " (ID INTEGER NOT NULL, Source_ID INTEGER, Sink_ID INTEGER, Connection_ID INTEGER, mixed BOOL, listInterrruptedSources INTEGER, PRIMARY KEY(ID));"; + command + = "CREATE TABLE " + QString(INTERRUPT_TABLE) + + " (ID INTEGER NOT NULL, Source_ID INTEGER, Sink_ID INTEGER, Connection_ID INTEGER, mixed BOOL, listInterrruptedSources INTEGER, PRIMARY KEY(ID));"; if (query.exec(command) != true) { DLT_LOG(AudioManager,DLT_LOG_ERROR, DLT_STRING("Databasehandler: Could not create table"), DLT_STRING(INTERRUPT_TABLE)); return false; } - command = "CREATE TABLE " + QString(MAIN_TABLE) + " (ID INTEGER NOT NULL, Source_ID INTEGER, Sink_ID INTEGER, route INTEGER, PRIMARY KEY(ID));"; + command + = "CREATE TABLE " + QString(MAIN_TABLE) + + " (ID INTEGER NOT NULL, Source_ID INTEGER, Sink_ID INTEGER, route INTEGER, PRIMARY KEY(ID));"; if (query.exec(command) != true) { DLT_LOG(AudioManager,DLT_LOG_ERROR, DLT_STRING("Databasehandler: Could not create table"), DLT_STRING(MAIN_TABLE)); return false; @@ -132,24 +156,31 @@ bool DataBaseHandler::create_tables() { } -domain_t DataBaseHandler::insert_into_Domains_table(QString DomainName, QString BusName, QString NodeName, bool EarlyMode) { +domain_t DataBaseHandler::insert_into_Domains_table(QString DomainName, + QString BusName, QString NodeName, bool EarlyMode) { QSqlQuery query; QString _EarlyMode = "false"; if (EarlyMode) { _EarlyMode = "true"; } - QString command = "SELECT BusName,ID FROM " + QString(DOMAIN_TABLE) + " WHERE DomainName=\"" + DomainName + "\";"; + QString command = "SELECT BusName,ID FROM " + QString(DOMAIN_TABLE) + + " WHERE DomainName=\"" + DomainName + "\";"; if (query.exec(command) == true) { if (query.next()) { if (!query.value(0).toString().isEmpty()) { return query.value(1).toInt(); } else { - command = "UPDATE " + QString(DOMAIN_TABLE) + "SET Busname=" + BusName + " Nodename=" + NodeName + " EarlyMode=" + _EarlyMode + " WHERE DomainName=" + DomainName; + command = "UPDATE " + QString(DOMAIN_TABLE) + "SET Busname=" + + BusName + " Nodename=" + NodeName + " EarlyMode=" + + _EarlyMode + " WHERE DomainName=" + DomainName; } } else { - command = "INSERT INTO " + QString(DOMAIN_TABLE) + " (DomainName, BusName, NodeName, EarlyMode) VALUES (\"" + DomainName + "\",\"" + BusName + "\",\"" + NodeName + "\",\"" + _EarlyMode + "\")"; + command = "INSERT INTO " + QString(DOMAIN_TABLE) + + " (DomainName, BusName, NodeName, EarlyMode) VALUES (\"" + + DomainName + "\",\"" + BusName + "\",\"" + NodeName + + "\",\"" + _EarlyMode + "\")"; } } @@ -159,7 +190,9 @@ domain_t DataBaseHandler::insert_into_Domains_table(QString DomainName, QString return get_Domain_ID_from_Name(DomainName); } } -sourceClass_t DataBaseHandler::insert_into_Source_Class_table(QString ClassName, volume_t VolumeOffset, bool IsInterrupt, bool IsMixed) { +sourceClass_t DataBaseHandler::insert_into_Source_Class_table( + QString ClassName, volume_t VolumeOffset, bool IsInterrupt, + bool IsMixed) { QSqlQuery query; QString _IsInterrupt = "false"; QString _IsMixed = "false"; @@ -171,7 +204,8 @@ sourceClass_t DataBaseHandler::insert_into_Source_Class_table(QString ClassName, _IsMixed = "true"; } - QString command = "SELECT ID FROM " + QString(SOURCE_CLASS_TABLE) + " WHERE ClassName=\"" + ClassName + "\";"; + QString command = "SELECT ID FROM " + QString(SOURCE_CLASS_TABLE) + + " WHERE ClassName=\"" + ClassName + "\";"; if (query.exec(command) == true) { if (query.next()) { @@ -179,7 +213,10 @@ sourceClass_t DataBaseHandler::insert_into_Source_Class_table(QString ClassName, } } - command = "INSERT INTO " + QString(SOURCE_CLASS_TABLE) + " (ClassName, VolumeOffset, IsInterrupt, IsMixed) VALUES (\"" + ClassName + "\"," + QString::number(VolumeOffset) + ",\"" + _IsInterrupt + "\",\"" + _IsMixed + "\")"; + command = "INSERT INTO " + QString(SOURCE_CLASS_TABLE) + + " (ClassName, VolumeOffset, IsInterrupt, IsMixed) VALUES (\"" + + ClassName + "\"," + QString::number(VolumeOffset) + ",\"" + + _IsInterrupt + "\",\"" + _IsMixed + "\")"; if (query.exec(command) != true) { return -1; @@ -191,7 +228,8 @@ sourceClass_t DataBaseHandler::insert_into_Source_Class_table(QString ClassName, sink_t DataBaseHandler::insert_into_Sink_Class_table(QString ClassName) { QSqlQuery query; - QString command = "SELECT ID FROM " + QString(SINK_CLASS_TABLE) + " WHERE ClassName=\"" + ClassName + "\";"; + QString command = "SELECT ID FROM " + QString(SINK_CLASS_TABLE) + + " WHERE ClassName=\"" + ClassName + "\";"; if (query.exec(command) == true) { if (query.next()) { @@ -199,7 +237,8 @@ sink_t DataBaseHandler::insert_into_Sink_Class_table(QString ClassName) { } } - command = "INSERT INTO " + QString(SINK_CLASS_TABLE) + " (ClassName) VALUES (\"" + ClassName + "\")"; + command = "INSERT INTO " + QString(SINK_CLASS_TABLE) + + " (ClassName) VALUES (\"" + ClassName + "\")"; if (query.exec(command) != true) { return -1; @@ -208,7 +247,8 @@ sink_t DataBaseHandler::insert_into_Sink_Class_table(QString ClassName) { } } -source_t DataBaseHandler::insert_into_Source_table(QString Name, sourceClass_t Class_ID, domain_t Domain_ID, bool IsGateway) { +source_t DataBaseHandler::insert_into_Source_table(QString Name, + sourceClass_t Class_ID, domain_t Domain_ID, bool IsGateway) { QSqlQuery query; QString _IsGateway = "false"; @@ -216,7 +256,8 @@ source_t DataBaseHandler::insert_into_Source_table(QString Name, sourceClass_t C _IsGateway = "true"; } - QString command = "SELECT ID FROM " + QString(SOURCE_TABLE) + " WHERE Name=\"" + Name + "\";"; + QString command = "SELECT ID FROM " + QString(SOURCE_TABLE) + + " WHERE Name=\"" + Name + "\";"; if (query.exec(command) == true) { if (query.next()) { @@ -224,7 +265,10 @@ source_t DataBaseHandler::insert_into_Source_table(QString Name, sourceClass_t C } } - command = "INSERT INTO " + QString(SOURCE_TABLE) + " (Name, Class_ID, Domain_ID, IsGateway) VALUES (\"" + Name + "\"," + QString::number(Class_ID) + ",\"" + QString::number(Domain_ID) + "\",\"" + _IsGateway + "\")"; + command = "INSERT INTO " + QString(SOURCE_TABLE) + + " (Name, Class_ID, Domain_ID, IsGateway) VALUES (\"" + Name + + "\"," + QString::number(Class_ID) + ",\"" + QString::number( + Domain_ID) + "\",\"" + _IsGateway + "\")"; if (query.exec(command) != true) { return -1; @@ -234,7 +278,8 @@ source_t DataBaseHandler::insert_into_Source_table(QString Name, sourceClass_t C } } -sink_t DataBaseHandler::insert_into_Sink_table(QString Name, sinkClass_t Class_ID, domain_t Domain_ID, bool IsGateway) { +sink_t DataBaseHandler::insert_into_Sink_table(QString Name, + sinkClass_t Class_ID, domain_t Domain_ID, bool IsGateway) { QSqlQuery query; QString _IsGateway = "false"; @@ -242,7 +287,8 @@ sink_t DataBaseHandler::insert_into_Sink_table(QString Name, sinkClass_t Class_ _IsGateway = "true"; } - QString command = "SELECT ID FROM " + QString(SINK_TABLE) + " WHERE Name=\"" + Name + "\";"; + QString command = "SELECT ID FROM " + QString(SINK_TABLE) + + " WHERE Name=\"" + Name + "\";"; if (query.exec(command) == true) { if (query.next()) { @@ -250,7 +296,10 @@ sink_t DataBaseHandler::insert_into_Sink_table(QString Name, sinkClass_t Class_ } } - command = "INSERT INTO " + QString(SINK_TABLE) + " (Name, Class_ID, Domain_ID, IsGateway) VALUES (\"" + Name + "\"," + QString::number(Class_ID) + ",\"" + QString::number(Domain_ID) + "\",\"" + _IsGateway + "\")"; + command = "INSERT INTO " + QString(SINK_TABLE) + + " (Name, Class_ID, Domain_ID, IsGateway) VALUES (\"" + Name + + "\"," + QString::number(Class_ID) + ",\"" + QString::number( + Domain_ID) + "\",\"" + _IsGateway + "\")"; if (query.exec(command) != true) { return -1; @@ -260,9 +309,12 @@ sink_t DataBaseHandler::insert_into_Sink_table(QString Name, sinkClass_t Class_ } } -gateway_t DataBaseHandler::insert_into_Gatway_table(QString Name, sink_t Sink_ID, source_t Source_ID, domain_t DomainSource_ID, domain_t DomainSink_ID, domain_t ControlDomain_ID) { +gateway_t DataBaseHandler::insert_into_Gatway_table(QString Name, + sink_t Sink_ID, source_t Source_ID, domain_t DomainSource_ID, + domain_t DomainSink_ID, domain_t ControlDomain_ID) { QSqlQuery query; - QString command = "SELECT ID FROM " + QString(GATEWAY_TABLE) + " WHERE Name=\"" + Name + "\";"; + QString command = "SELECT ID FROM " + QString(GATEWAY_TABLE) + + " WHERE Name=\"" + Name + "\";"; if (query.exec(command) == true) { if (query.next()) { @@ -270,8 +322,13 @@ gateway_t DataBaseHandler::insert_into_Gatway_table(QString Name, sink_t Sink_ID } } - command = "INSERT INTO " + QString(GATEWAY_TABLE) + " (Name, Sink_ID, Source_ID, DomainSource_ID, DomainSink_ID, ControlDomain_ID, IsBlocked) VALUES (\"" + Name + "\"," + QString::number(Sink_ID) + "," + QString::number(Source_ID) + "," - + QString::number(DomainSource_ID) + "," + QString::number(DomainSink_ID) + "," + QString::number(ControlDomain_ID) + ",\"false\")"; + command + = "INSERT INTO " + QString(GATEWAY_TABLE) + + " (Name, Sink_ID, Source_ID, DomainSource_ID, DomainSink_ID, ControlDomain_ID, IsBlocked) VALUES (\"" + + Name + "\"," + QString::number(Sink_ID) + "," + + QString::number(Source_ID) + "," + QString::number( + DomainSource_ID) + "," + QString::number(DomainSink_ID) + + "," + QString::number(ControlDomain_ID) + ",\"false\")"; if (query.exec(command) != true) { return -1; } else { @@ -281,10 +338,11 @@ gateway_t DataBaseHandler::insert_into_Gatway_table(QString Name, sink_t Sink_ID genInt_t DataBaseHandler::reserveInterrupt(sink_t Sink_ID, source_t Source_ID) { QSqlQuery query; - query.prepare("INSERT INTO " + QString(INTERRUPT_TABLE) + "(Source_ID, Sink_ID)" - " VALUES(:Source_ID, :Sink_ID)"); - query.bindValue(":Source_ID",Source_ID); - query.bindValue(":Sink_ID",Sink_ID); + query.prepare( + "INSERT INTO " + QString(INTERRUPT_TABLE) + "(Source_ID, Sink_ID)" + " VALUES(:Source_ID, :Sink_ID)"); + query.bindValue(":Source_ID", Source_ID); + query.bindValue(":Sink_ID", Sink_ID); if (query.exec() != true) { return -1; } else { @@ -292,7 +350,9 @@ genInt_t DataBaseHandler::reserveInterrupt(sink_t Sink_ID, source_t Source_ID) { } } -genError_t DataBaseHandler::updateInterrupt(const genInt_t intID, connection_t connID, bool mixed, QList listInterrruptedSources) { +genError_t DataBaseHandler::updateInterrupt(const genInt_t intID, + connection_t connID, bool mixed, + QList listInterrruptedSources) { QSqlQuery query; QString _mixed = "false"; @@ -301,13 +361,15 @@ genError_t DataBaseHandler::updateInterrupt(const genInt_t intID, connection_t c } //This information is not handy to be stored directly in the database. So we put it on the heap and store the pointer to it. - QList* pointer =new QList(listInterrruptedSources); - - query.prepare("UPDATE " + QString(INTERRUPT_TABLE) + " SET Connection_ID=:Connection_ID, mixed=:mixed ,listInterrruptedSources=:listInterrruptedSources WHERE ID=:id"); - query.bindValue(":Connection_ID",connID); - query.bindValue(":mixed",_mixed); - query.bindValue(":listInterrruptedSources",int(pointer)); - query.bindValue(":id",intID); + QList* pointer = new QList (listInterrruptedSources); + + query.prepare( + "UPDATE " + QString(INTERRUPT_TABLE) + + " SET Connection_ID=:Connection_ID, mixed=:mixed ,listInterrruptedSources=:listInterrruptedSources WHERE ID=:id"); + query.bindValue(":Connection_ID", connID); + query.bindValue(":mixed", _mixed); + query.bindValue(":listInterrruptedSources", int(pointer)); + query.bindValue(":id", intID); if (query.exec() != true) { return GEN_DATABASE_ERROR; } else { @@ -315,9 +377,16 @@ genError_t DataBaseHandler::updateInterrupt(const genInt_t intID, connection_t c } } -genError_t DataBaseHandler::getInterruptDatafromID(const genInt_t intID, connection_t* return_connID, sink_t* return_Sink_ID, source_t* return_Source_ID, bool* return_mixed, QList** return_listInterrruptedSources) { +genError_t DataBaseHandler::getInterruptDatafromID(const genInt_t intID, + connection_t* return_connID, sink_t* return_Sink_ID, + source_t* return_Source_ID, bool* return_mixed, + QList** return_listInterrruptedSources) { QSqlQuery query; - QString command = "SELECT Connection_ID, Sink_ID, Source_ID, mixed, listInterrruptedSources FROM " + QString(INTERRUPT_TABLE) + " WHERE ID=" + QString::number(intID) + ";"; + QString + command = + "SELECT Connection_ID, Sink_ID, Source_ID, mixed, listInterrruptedSources FROM " + + QString(INTERRUPT_TABLE) + " WHERE ID=" + + QString::number(intID) + ";"; if (query.exec(command) != true) { return GEN_DATABASE_ERROR; @@ -327,7 +396,8 @@ genError_t DataBaseHandler::getInterruptDatafromID(const genInt_t intID, connec *return_Sink_ID = query.value(1).toInt(); *return_Source_ID = query.value(2).toInt(); *return_mixed = query.value(3).toBool(); - *return_listInterrruptedSources=reinterpret_cast*>(query.value(4).toInt()); + *return_listInterrruptedSources + = reinterpret_cast*> (query.value(4).toInt()); return GEN_OK; } else { return GEN_UNKNOWN; @@ -337,13 +407,15 @@ genError_t DataBaseHandler::getInterruptDatafromID(const genInt_t intID, connec genError_t DataBaseHandler::removeInterrupt(const genInt_t intID) { QSqlQuery query; - QString command = "SELECT listInterrruptedSources FROM " + QString(INTERRUPT_TABLE) + " WHERE ID=" + QString::number(intID) + ";"; + QString command = "SELECT listInterrruptedSources FROM " + QString( + INTERRUPT_TABLE) + " WHERE ID=" + QString::number(intID) + ";"; if (query.exec(command) != true) { return GEN_DATABASE_ERROR; } else { if (query.next()) { - delete reinterpret_cast*>(query.value(0).toInt()); - command = "DELETE FROM " + QString(INTERRUPT_TABLE) + " WHERE ID=\"" + QString::number(intID) + "\";"; + delete reinterpret_cast*> (query.value(0).toInt()); + command = "DELETE FROM " + QString(INTERRUPT_TABLE) + + " WHERE ID=\"" + QString::number(intID) + "\";"; if (query.exec(command) != true) { return GEN_DATABASE_ERROR; } else { @@ -357,12 +429,14 @@ genError_t DataBaseHandler::removeInterrupt(const genInt_t intID) { domain_t DataBaseHandler::peek_Domain_ID(QString DomainName) { QSqlQuery query; - QString command = "SELECT ID FROM " + QString(DOMAIN_TABLE) + " WHERE DomainName=\"" + DomainName + "\";"; + QString command = "SELECT ID FROM " + QString(DOMAIN_TABLE) + + " WHERE DomainName=\"" + DomainName + "\";"; if (query.next()) { return query.value(0).toInt(); } else { - command = "INSERT INTO " + QString(DOMAIN_TABLE) + " (DomainName) VALUES (\"" + DomainName + "\")"; + command = "INSERT INTO " + QString(DOMAIN_TABLE) + + " (DomainName) VALUES (\"" + DomainName + "\")"; } if (query.exec(command) != true) { @@ -374,7 +448,8 @@ domain_t DataBaseHandler::peek_Domain_ID(QString DomainName) { domain_t DataBaseHandler::get_Domain_ID_from_Source_ID(source_t Source_ID) { QSqlQuery query; - QString command = "SELECT Domain_ID FROM " + QString(SOURCE_TABLE) + " WHERE ID=" + QString::number(Source_ID) + ";"; + QString command = "SELECT Domain_ID FROM " + QString(SOURCE_TABLE) + + " WHERE ID=" + QString::number(Source_ID) + ";"; if (query.exec(command) != true) { return -1; @@ -386,7 +461,8 @@ domain_t DataBaseHandler::get_Domain_ID_from_Source_ID(source_t Source_ID) { domain_t DataBaseHandler::get_Domain_ID_from_Sink_ID(sink_t Sink_ID) { QSqlQuery query; - QString command = "SELECT Domain_ID FROM " + QString(SINK_TABLE) + " WHERE ID=" + QString::number(Sink_ID) + ";"; + QString command = "SELECT Domain_ID FROM " + QString(SINK_TABLE) + + " WHERE ID=" + QString::number(Sink_ID) + ";"; if (query.exec(command) != true) { return -1; @@ -398,7 +474,8 @@ domain_t DataBaseHandler::get_Domain_ID_from_Sink_ID(sink_t Sink_ID) { source_t DataBaseHandler::get_Source_ID_from_Name(QString name) { QSqlQuery query; - QString command = "SELECT ID FROM " + QString(SOURCE_TABLE) + " WHERE Name=\"" + name + "\";"; + QString command = "SELECT ID FROM " + QString(SOURCE_TABLE) + + " WHERE Name=\"" + name + "\";"; if (query.exec(command) != true) { return -1; @@ -413,7 +490,8 @@ source_t DataBaseHandler::get_Source_ID_from_Name(QString name) { sourceClass_t DataBaseHandler::get_Source_Class_ID_from_Name(QString name) { QSqlQuery query; - QString command = "SELECT ID FROM " + QString(SOURCE_CLASS_TABLE) + " WHERE ClassName=\"" + name + "\";"; + QString command = "SELECT ID FROM " + QString(SOURCE_CLASS_TABLE) + + " WHERE ClassName=\"" + name + "\";"; if (query.exec(command) != true) { return -1; } else { @@ -427,7 +505,8 @@ sourceClass_t DataBaseHandler::get_Source_Class_ID_from_Name(QString name) { domain_t DataBaseHandler::get_Domain_ID_from_Name(QString name) { QSqlQuery query; - QString command = "SELECT ID FROM " + QString(DOMAIN_TABLE) + " WHERE DomainName=\"" + name + "\";"; + QString command = "SELECT ID FROM " + QString(DOMAIN_TABLE) + + " WHERE DomainName=\"" + name + "\";"; if (query.exec(command) != true) { return -1; @@ -440,9 +519,12 @@ domain_t DataBaseHandler::get_Domain_ID_from_Name(QString name) { } } -gateway_t DataBaseHandler::get_Gateway_ID_with_Domain_ID(domain_t startDomain_ID, domain_t targetDomain_ID) { +gateway_t DataBaseHandler::get_Gateway_ID_with_Domain_ID( + domain_t startDomain_ID, domain_t targetDomain_ID) { QSqlQuery query; - QString command = "SELECT ID FROM " + QString(GATEWAY_TABLE) + " WHERE DomainSource_ID=" + QString::number(startDomain_ID) + " AND DomainSink_ID=" + QString::number(targetDomain_ID) + ";"; + QString command = "SELECT ID FROM " + QString(GATEWAY_TABLE) + + " WHERE DomainSource_ID=" + QString::number(startDomain_ID) + + " AND DomainSink_ID=" + QString::number(targetDomain_ID) + ";"; if (query.exec(command) != true) { return -1; @@ -455,9 +537,13 @@ gateway_t DataBaseHandler::get_Gateway_ID_with_Domain_ID(domain_t startDomain_ID } } -genError_t DataBaseHandler::get_Gateway_Source_Sink_Domain_ID_from_ID(gateway_t Gateway_ID,source_t* return_Source_ID,sink_t* return_Sink_ID,domain_t* return_ControlDomain_ID) { +genError_t DataBaseHandler::get_Gateway_Source_Sink_Domain_ID_from_ID( + gateway_t Gateway_ID, source_t* return_Source_ID, + sink_t* return_Sink_ID, domain_t* return_ControlDomain_ID) { QSqlQuery query; - QString command = "SELECT Source_ID, Sink_ID, ControlDomain_ID FROM " + QString(GATEWAY_TABLE) + " WHERE ID=" + QString::number(Gateway_ID) + ";"; + QString command = "SELECT Source_ID, Sink_ID, ControlDomain_ID FROM " + + QString(GATEWAY_TABLE) + " WHERE ID=" + QString::number( + Gateway_ID) + ";"; if (query.exec(command) != true) { return GEN_DATABASE_ERROR; @@ -473,7 +559,8 @@ genError_t DataBaseHandler::get_Gateway_Source_Sink_Domain_ID_from_ID(gateway_t } } -void DataBaseHandler::get_Domain_ID_Tree(bool onlyfree, RoutingTree* Tree, QList* allItems) { +void DataBaseHandler::get_Domain_ID_Tree(bool onlyfree, RoutingTree* Tree, + QList* allItems) { QSqlQuery query; int RootID = Tree->returnRootDomainID(); RoutingTreeItem *parent = Tree->returnRootItem(); @@ -484,14 +571,18 @@ void DataBaseHandler::get_Domain_ID_Tree(bool onlyfree, RoutingTree* Tree, QList _onlyfree = "true"; } - query.prepare("SELECT ID,DomainSource_ID FROM " + QString(GATEWAY_TABLE) + " WHERE DomainSink_ID=:id AND IsBlocked=:flag;"); + query.prepare( + "SELECT ID,DomainSource_ID FROM " + QString(GATEWAY_TABLE) + + " WHERE DomainSink_ID=:id AND IsBlocked=:flag;"); do { query.bindValue(":id", RootID); query.bindValue(":flag", _onlyfree); query.exec(); while (query.next()) { - allItems->append(Tree->insertItem(query.value(1).toInt(), query.value(0).toInt(), parent)); + allItems->append( + Tree->insertItem(query.value(1).toInt(), + query.value(0).toInt(), parent)); } parent = allItems->value(i); RootID = parent->returnDomainID(); @@ -501,7 +592,8 @@ void DataBaseHandler::get_Domain_ID_Tree(bool onlyfree, RoutingTree* Tree, QList QString DataBaseHandler::get_Bus_from_Domain_ID(domain_t Domain_ID) { QSqlQuery query; - QString command = "SELECT BusName FROM " + QString(DOMAIN_TABLE) + " WHERE ID=" + QString::number(Domain_ID) + ";"; + QString command = "SELECT BusName FROM " + QString(DOMAIN_TABLE) + + " WHERE ID=" + QString::number(Domain_ID) + ";"; if (query.exec(command) != true) { return NULL; @@ -513,14 +605,16 @@ QString DataBaseHandler::get_Bus_from_Domain_ID(domain_t Domain_ID) { domain_t DataBaseHandler::get_Domain_ID_from_Connection_ID(connection_t ID) { QSqlQuery query; - QString command = "SELECT Source_ID FROM " + QString(CONNECTION_TABLE) + " WHERE ID=" + QString::number(ID) + ";"; + QString command = "SELECT Source_ID FROM " + QString(CONNECTION_TABLE) + + " WHERE ID=" + QString::number(ID) + ";"; if (query.exec(command) != true) { return -1; } query.next(); int SourceID = query.value(0).toInt(); - command = "SELECT Domain_ID FROM " + QString(SOURCE_TABLE) + " WHERE ID=" + QString::number(SourceID) + ";"; + command = "SELECT Domain_ID FROM " + QString(SOURCE_TABLE) + " WHERE ID=" + + QString::number(SourceID) + ";"; if (query.exec(command) != true) { return -1; } else { @@ -532,7 +626,8 @@ domain_t DataBaseHandler::get_Domain_ID_from_Connection_ID(connection_t ID) { void DataBaseHandler::getListofSources(QList* SourceList) { QSqlQuery query; SourceType sType; - QString command = "SELECT ID,NAME FROM " + QString(SOURCE_TABLE) + " WHERE isGateway=\"false\";"; + QString command = "SELECT ID,NAME FROM " + QString(SOURCE_TABLE) + + " WHERE isGateway=\"false\";"; if (query.exec(command) != true) { } else { @@ -559,10 +654,12 @@ void DataBaseHandler::getListofSinks(QList* SinkList) { } } -void DataBaseHandler::getListofConnections(QList* ConnectionList) { +void DataBaseHandler::getListofConnections( + QList* ConnectionList) { QSqlQuery query; ConnectionType sType; - QString command = "SELECT Source_ID,Sink_ID FROM " + QString(CONNECTION_TABLE) + ";"; + QString command = "SELECT Source_ID,Sink_ID FROM " + QString( + CONNECTION_TABLE) + ";"; if (query.exec(command) != true) { } else { @@ -574,17 +671,19 @@ void DataBaseHandler::getListofConnections(QList* ConnectionList } } -bool DataBaseHandler::is_source_Mixed(source_t source){ +bool DataBaseHandler::is_source_Mixed(source_t source) { QSqlQuery query; int classID = 0; - QString command = "SELECT Class_ID FROM " + QString(SOURCE_TABLE) + " WHERE ID=\"" + QString::number(source) + "\";"; + QString command = "SELECT Class_ID FROM " + QString(SOURCE_TABLE) + + " WHERE ID=\"" + QString::number(source) + "\";"; if (query.exec(command) == true) { if (query.next()) { classID = query.value(0).toInt(); } } - command = "SELECT isMixed FROM " + QString(SOURCE_CLASS_TABLE) + " WHERE ID=\"" + QString::number(classID) + "\";"; + command = "SELECT isMixed FROM " + QString(SOURCE_CLASS_TABLE) + + " WHERE ID=\"" + QString::number(classID) + "\";"; if (query.exec(command) == true) { if (query.next()) { @@ -598,7 +697,8 @@ bool DataBaseHandler::is_source_Mixed(source_t source){ sink_t DataBaseHandler::get_Sink_ID_from_Name(QString name) { QSqlQuery query; - QString command = "SELECT ID FROM " + QString(SINK_TABLE) + " WHERE Name=\"" + name + "\";"; + QString command = "SELECT ID FROM " + QString(SINK_TABLE) + + " WHERE Name=\"" + name + "\";"; if (query.exec(command) != true) { return -1; @@ -611,11 +711,13 @@ sink_t DataBaseHandler::get_Sink_ID_from_Name(QString name) { } } -connection_t DataBaseHandler::getConnectionID(source_t SourceID,sink_t SinkID) { +connection_t DataBaseHandler::getConnectionID(source_t SourceID, sink_t SinkID) { QSqlQuery query; - query.prepare("SELECT ID FROM " + QString(MAIN_TABLE) + " WHERE Source_ID=:sourceID AND Sink_ID=:sinkID"); - query.bindValue(":sourceID",SourceID); - query.bindValue(":sinkID",SinkID); + query.prepare( + "SELECT ID FROM " + QString(MAIN_TABLE) + + " WHERE Source_ID=:sourceID AND Sink_ID=:sinkID"); + query.bindValue(":sourceID", SourceID); + query.bindValue(":sinkID", SinkID); if (query.exec() != true) { return -1; } else { @@ -627,9 +729,11 @@ connection_t DataBaseHandler::getConnectionID(source_t SourceID,sink_t SinkID) { } } -connection_t DataBaseHandler::insertConnection(source_t SourceID,sink_t SinkID) { +connection_t DataBaseHandler::insertConnection(source_t SourceID, sink_t SinkID) { QSqlQuery query; - QString command = "INSERT INTO " + QString(CONNECTION_TABLE) + " (Source_ID, Sink_ID) VALUES (" + QString::number(SourceID) + "," + QString::number(SinkID) + ");"; + QString command = "INSERT INTO " + QString(CONNECTION_TABLE) + + " (Source_ID, Sink_ID) VALUES (" + QString::number(SourceID) + + "," + QString::number(SinkID) + ");"; if (query.exec(command) != true) { return -1; } else { @@ -639,7 +743,8 @@ connection_t DataBaseHandler::insertConnection(source_t SourceID,sink_t SinkID) genError_t DataBaseHandler::removeConnection(connection_t ConnectionID) { QSqlQuery query; - QString command = "DELETE FROM " + QString(CONNECTION_TABLE) + " WHERE ID=\"" + QString::number(ConnectionID) + "\";"; + QString command = "DELETE FROM " + QString(CONNECTION_TABLE) + + " WHERE ID=\"" + QString::number(ConnectionID) + "\";"; if (query.exec(command) != true) { return GEN_DATABASE_ERROR; } else { @@ -647,12 +752,13 @@ genError_t DataBaseHandler::removeConnection(connection_t ConnectionID) { } } -connection_t DataBaseHandler::reserveMainConnection(source_t source,sink_t sink) { +connection_t DataBaseHandler::reserveMainConnection(source_t source, + sink_t sink) { QSqlQuery query; query.prepare("INSERT INTO " + QString(MAIN_TABLE) + "(Source_ID, Sink_ID)" - " VALUES(:Source_ID, :Sink_ID)"); - query.bindValue(":Source_ID",source); - query.bindValue(":Sink_ID",sink); + " VALUES(:Source_ID, :Sink_ID)"); + query.bindValue(":Source_ID", source); + query.bindValue(":Sink_ID", sink); if (query.exec() != true) { return -1; } else { @@ -660,15 +766,18 @@ connection_t DataBaseHandler::reserveMainConnection(source_t source,sink_t sink) } } -genError_t DataBaseHandler::updateMainConnection(connection_t connID, genRoute_t route) { +genError_t DataBaseHandler::updateMainConnection(connection_t connID, + genRoute_t route) { QSqlQuery query; //This information is not handy to be stored directly in the database. So we put it on the heap and store the pointer to it. - genRoute_t* routeheap =new genRoute_t(route); + genRoute_t* routeheap = new genRoute_t(route); - query.prepare("UPDATE " + QString(MAIN_TABLE) + " SET route=:route WHERE ID=:connID"); - query.bindValue(":connID",connID); - query.bindValue(":route",int(routeheap)); + query.prepare( + "UPDATE " + QString(MAIN_TABLE) + + " SET route=:route WHERE ID=:connID"); + query.bindValue(":connID", connID); + query.bindValue(":route", int(routeheap)); if (query.exec() != true) { return GEN_DATABASE_ERROR; } else { @@ -676,9 +785,12 @@ genError_t DataBaseHandler::updateMainConnection(connection_t connID, genRoute_t } } -genError_t DataBaseHandler::getMainConnectionDatafromID(const connection_t connID, sink_t* return_sinkID,source_t* return_sourceID,genRoute_t** return_route) { +genError_t DataBaseHandler::getMainConnectionDatafromID( + const connection_t connID, sink_t* return_sinkID, + source_t* return_sourceID, genRoute_t** return_route) { QSqlQuery query; - QString command = "SELECT Sink_ID, Source_ID, route FROM " + QString(MAIN_TABLE) + " WHERE ID=" + QString::number(connID) + ";"; + QString command = "SELECT Sink_ID, Source_ID, route FROM " + QString( + MAIN_TABLE) + " WHERE ID=" + QString::number(connID) + ";"; if (query.exec(command) != true) { return GEN_DATABASE_ERROR; @@ -686,7 +798,8 @@ genError_t DataBaseHandler::getMainConnectionDatafromID(const connection_t connI if (query.next()) { *return_sinkID = query.value(0).toInt(); *return_sourceID = query.value(1).toInt(); - *return_route=reinterpret_cast(query.value(2).toInt()); + *return_route + = reinterpret_cast (query.value(2).toInt()); return GEN_OK; } else { return GEN_UNKNOWN; @@ -694,11 +807,14 @@ genError_t DataBaseHandler::getMainConnectionDatafromID(const connection_t connI } } -connection_t DataBaseHandler::returnMainconnectionIDforSinkSourceID (sink_t sink, source_t source) { +connection_t DataBaseHandler::returnMainconnectionIDforSinkSourceID( + sink_t sink, source_t source) { QSqlQuery query; - query.prepare("SELECT ID FROM " + QString(MAIN_TABLE) + " WHERE Sink_ID=:sinkID AND Source_ID=:SourceID"); - query.bindValue(":SinkID",sink); - query.bindValue(":SourceID",source); + query.prepare( + "SELECT ID FROM " + QString(MAIN_TABLE) + + " WHERE Sink_ID=:sinkID AND Source_ID=:SourceID"); + query.bindValue(":SinkID", sink); + query.bindValue(":SourceID", source); if (query.exec() != true) { return -1; @@ -710,15 +826,17 @@ connection_t DataBaseHandler::returnMainconnectionIDforSinkSourceID (sink_t sink return -1; } -QList DataBaseHandler::getSourceIDsForSinkID (sink_t sink) { +QList DataBaseHandler::getSourceIDsForSinkID(sink_t sink) { QList list; QSqlQuery query; - query.prepare( "SELECT Source_ID FROM " + QString(MAIN_TABLE) + " WHERE Sink_ID=:sinkID"); - query.bindValue(":sinkID",sink); + query.prepare( + "SELECT Source_ID FROM " + QString(MAIN_TABLE) + + " WHERE Sink_ID=:sinkID"); + query.bindValue(":sinkID", sink); if (query.exec() == true) { DLT_LOG(AudioManager,DLT_LOG_INFO, DLT_STRING("query good")); - while(query.next()) { - int p=query.value(0).toInt(); + while (query.next()) { + int p = query.value(0).toInt(); DLT_LOG(AudioManager,DLT_LOG_INFO, DLT_STRING("SourceID"), DLT_INT(p)); list.append(query.value(0).toInt()); } @@ -729,7 +847,8 @@ QList DataBaseHandler::getSourceIDsForSinkID (sink_t sink) { QList DataBaseHandler::getListAllMainConnections() { QList connectionList; QSqlQuery query; - QString command = "SELECT Sink_ID, Source_ID, route FROM " + QString(MAIN_TABLE) + ";"; + QString command = "SELECT Sink_ID, Source_ID, route FROM " + QString( + MAIN_TABLE) + ";"; if (query.exec(command) != true) { @@ -746,13 +865,15 @@ QList DataBaseHandler::getListAllMainConnections() { genError_t DataBaseHandler::removeMainConnection(connection_t connID) { QSqlQuery query; - QString command = "SELECT route FROM " + QString(MAIN_TABLE) + " WHERE ID=" + QString::number(connID) + ";"; + QString command = "SELECT route FROM " + QString(MAIN_TABLE) + " WHERE ID=" + + QString::number(connID) + ";"; if (query.exec(command) != true) { return GEN_DATABASE_ERROR; } else { if (query.next()) { - delete reinterpret_cast(query.value(0).toInt()); - command = "DELETE FROM " + QString(MAIN_TABLE) + " WHERE ID=\"" + QString::number(connID) + "\";"; + delete reinterpret_cast (query.value(0).toInt()); + command = "DELETE FROM " + QString(MAIN_TABLE) + " WHERE ID=\"" + + QString::number(connID) + "\";"; if (query.exec(command) != true) { return GEN_DATABASE_ERROR; } else { diff --git a/AudioManagerDeamon/DataBaseHandler.h b/AudioManagerDeamon/DataBaseHandler.h index 81793f7..03704af 100644 --- a/AudioManagerDeamon/DataBaseHandler.h +++ b/AudioManagerDeamon/DataBaseHandler.h @@ -311,12 +311,18 @@ public: bool delete_data(QString table); bool create_tables(); - domain_t insert_into_Domains_table(QString DomainName, QString BusName, QString NodeName, bool EarlyMode); - sourceClass_t insert_into_Source_Class_table(QString ClassName, volume_t VolumeOffset, bool IsInterrupt, bool IsMixed); + domain_t insert_into_Domains_table(QString DomainName, QString BusName, + QString NodeName, bool EarlyMode); + sourceClass_t insert_into_Source_Class_table(QString ClassName, + volume_t VolumeOffset, bool IsInterrupt, bool IsMixed); sinkClass_t insert_into_Sink_Class_table(QString ClassName); - source_t insert_into_Source_table(QString Name, sourceClass_t Class_ID, domain_t Domain_ID, bool IsGateway); - sink_t insert_into_Sink_table(QString Name, sinkClass_t Class_ID, domain_t Domain_ID, bool IsGateway); - gateway_t insert_into_Gatway_table(QString Name, sink_t Sink_ID, source_t Source_ID, domain_t DomainSource_ID, domain_t DomainSink_ID, domain_t ControlDomain_ID); + source_t insert_into_Source_table(QString Name, sourceClass_t Class_ID, + domain_t Domain_ID, bool IsGateway); + sink_t insert_into_Sink_table(QString Name, sinkClass_t Class_ID, + domain_t Domain_ID, bool IsGateway); + gateway_t insert_into_Gatway_table(QString Name, sink_t Sink_ID, + source_t Source_ID, domain_t DomainSource_ID, + domain_t DomainSink_ID, domain_t ControlDomain_ID); domain_t peek_Domain_ID(QString DomainName); domain_t get_Domain_ID_from_Source_ID(source_t Source_ID); @@ -331,9 +337,13 @@ public: bool is_source_Mixed(source_t source); - gateway_t get_Gateway_ID_with_Domain_ID(domain_t startDomain_ID, domain_t targetDomain_ID); - genError_t get_Gateway_Source_Sink_Domain_ID_from_ID(gateway_t Gateway_ID, source_t* return_Source_ID, sink_t* return_Sink_ID, domain_t* return_ControlDomain_ID); - void get_Domain_ID_Tree(bool onlyfree, RoutingTree* Tree, QList* allItems); + gateway_t get_Gateway_ID_with_Domain_ID(domain_t startDomain_ID, + domain_t targetDomain_ID); + genError_t get_Gateway_Source_Sink_Domain_ID_from_ID(gateway_t Gateway_ID, + source_t* return_Source_ID, sink_t* return_Sink_ID, + domain_t* return_ControlDomain_ID); + void get_Domain_ID_Tree(bool onlyfree, RoutingTree* Tree, + QList* allItems); void getListofSources(QList* SourceList); void getListofSinks(QList* SinkList); @@ -344,14 +354,21 @@ public: genError_t removeConnection(connection_t ConnectionID); connection_t reserveMainConnection(source_t source, sink_t sink); genError_t updateMainConnection(connection_t connID, genRoute_t route); - genError_t getMainConnectionDatafromID(const connection_t connID, sink_t* return_sinkID, source_t* return_sourceID, genRoute_t** return_route); - connection_t returnMainconnectionIDforSinkSourceID(sink_t sink, source_t source); + genError_t getMainConnectionDatafromID(const connection_t connID, + sink_t* return_sinkID, source_t* return_sourceID, + genRoute_t** return_route); + connection_t returnMainconnectionIDforSinkSourceID(sink_t sink, + source_t source); QList getSourceIDsForSinkID(sink_t sink); QList getListAllMainConnections(); genError_t removeMainConnection(connection_t connID); genInt_t reserveInterrupt(sink_t Sink_ID, source_t Source_ID); - genError_t updateInterrupt(const genInt_t intID, connection_t connID, bool mixed, QList listInterrruptedSources); - genError_t getInterruptDatafromID(const genInt_t intID, connection_t* return_connID, sink_t* return_Sink_ID, source_t* return_Source_ID, bool* return_mixed, QList** return_listInterrruptedSources); + genError_t updateInterrupt(const genInt_t intID, connection_t connID, + bool mixed, QList listInterrruptedSources); + genError_t getInterruptDatafromID(const genInt_t intID, + connection_t* return_connID, sink_t* return_Sink_ID, + source_t* return_Source_ID, bool* return_mixed, + QList** return_listInterrruptedSources); genError_t removeInterrupt(const genInt_t intID); signals: diff --git a/AudioManagerDeamon/HookEngine.cpp b/AudioManagerDeamon/HookEngine.cpp index eeb469d..c03eadc 100644 --- a/AudioManagerDeamon/HookEngine.cpp +++ b/AudioManagerDeamon/HookEngine.cpp @@ -25,293 +25,354 @@ #include "HookEngine.h" -BaseHook::BaseHook() {} +BaseHook::BaseHook() { +} -BaseHook::~BaseHook() {} +BaseHook::~BaseHook() { +} -HookHandler::HookHandler() {} +HookHandler::HookHandler() { +} -HookHandler::~HookHandler() {} +HookHandler::~HookHandler() { +} void BaseHook::registerAudioManagerCore(AudioManagerCore* core) { - m_core=core; + m_core = core; } genError_t BaseHook::registerHookEngine(HookHandler* engine) { - m_hookhandler=engine; + m_hookhandler = engine; return GEN_OK; } -genError_t HookHandler::registerHook(hookprio_t prio, genHook_t hookType, BaseHook* hookClass) { +genError_t HookHandler::registerHook(hookprio_t prio, genHook_t hookType, + BaseHook* hookClass) { prioList newEntry; QList* list; - if (prio<0 || prio >100) { + if (prio < 0 || prio > 100) { DLT_LOG(AudioManager,DLT_LOG_WARN, DLT_STRING("Register Hook: Priority out of range: "), DLT_INT(prio)); return GEN_OUTOFRANGE; } - newEntry.prio=prio; - newEntry.hook=hookClass; + newEntry.prio = prio; + newEntry.hook = hookClass; switch (hookType) { case HOOK_DOMAIN_REGISTER: - list=&m_domainRegisterList; + list = &m_domainRegisterList; break; case HOOK_DOMAIN_DEREGISTER: - list=&m_domainDeregisterList; + list = &m_domainDeregisterList; break; case HOOK_SINK_REGISTER: - list=&m_sinkRegisterList; + list = &m_sinkRegisterList; break; case HOOK_SINK_DEREGISTER: - list=&m_sinkDeregisterList; + list = &m_sinkDeregisterList; break; case HOOK_SOURCE_REGISTER: - list=&m_sourceRegisterList; + list = &m_sourceRegisterList; break; case HOOK_SOURCE_DEREGISTER: - list=&m_sourceDeregisterList; + list = &m_sourceDeregisterList; break; case HOOK_GATEWAY_REGISTER: - list=&m_gatewayRegisterList; + list = &m_gatewayRegisterList; break; case HOOK_GATEWAY_DERGISTER: - list=&m_gatewayDeregisterList; + list = &m_gatewayDeregisterList; break; case HOOK_ROUTING_REQUEST: - list=&m_routingRequestList; + list = &m_routingRequestList; break; case HOOK_ROUTING_COMPLETE: - list=&m_routingCompleteList; + list = &m_routingCompleteList; break; case HOOK_SYSTEM_READY: - list=&m_systemReadyList; + list = &m_systemReadyList; break; case HOOK_SYSTEM_DOWN: - list=&m_systemDownList; + list = &m_systemDownList; break; case HOOK_VOLUME_CHANGE: - list=&m_volumeChangeList; + list = &m_volumeChangeList; break; case HOOK_MUTE_SOURCE: - list=&m_muteSourceList; + list = &m_muteSourceList; break; case HOOK_UNMUTE_SOURCE: - list=&m_unmuteSourceList; + list = &m_unmuteSourceList; break; case HOOK_MUTE_SINK: - list=&m_muteSinkList; + list = &m_muteSinkList; break; case HOOK_UNMUTE_SINK: - list=&m_unmuteSinkList; + list = &m_unmuteSinkList; break; case HOOK_USER_CONNECTION_REQUEST: - list=&m_userConnectionRequestList; + list = &m_userConnectionRequestList; break; case HOOK_USER_DISCONNECTION_REQUEST: - list=&m_userDisconnectionReuestList; + list = &m_userDisconnectionReuestList; break; case HOOK_CONNECTION_REQUEST: - list=&m_connectionRequestList; + list = &m_connectionRequestList; break; case HOOK_DISCONNECTION_REQUEST: - list=&m_disconnectionReuestList; + list = &m_disconnectionReuestList; break; case HOOK_INTERRUPT_REQUEST: - list=&m_interruptRequestList; + list = &m_interruptRequestList; break; default: - DLT_LOG(AudioManager,DLT_LOG_WARN, DLT_STRING("Trying to register unknown Hook ")); + DLT_LOG(AudioManager,DLT_LOG_WARN, DLT_STRING("Trying to register unknown Hook ")) + ; return GEN_OUTOFRANGE; } - int index=0; - foreach(prioList l,*list) { - if(l.prio>prio) { - index++; + int index = 0; + foreach(prioList l,*list) + { + if (l.prio > prio) { + index++; + } } - } - list->insert(index,newEntry); + list->insert(index, newEntry); //TODO test the sorting of the hooks with more than one plugin return GEN_OK; } genError_t HookHandler::fireHookDomainRegister(char* Name, domain_t ID) { - foreach (prioList hook,m_domainRegisterList) { - if (hook.hook->hookDomainRegister(Name,ID)==HOOK_STOP) break; - } + foreach (prioList hook,m_domainRegisterList) + { + if (hook.hook->hookDomainRegister(Name, ID) == HOOK_STOP) + break; + } return GEN_OK; } -genError_t HookHandler::fireHookDomainDeregister (domain_t ID) { - foreach (prioList hook,m_domainDeregisterList) { - if (hook.hook->hookDomainDeregister(ID)==HOOK_STOP) break; - } +genError_t HookHandler::fireHookDomainDeregister(domain_t ID) { + foreach (prioList hook,m_domainDeregisterList) + { + if (hook.hook->hookDomainDeregister(ID) == HOOK_STOP) + break; + } return GEN_OK; } -genError_t HookHandler::fireHookSinkRegister (char* Name, sink_t ID) { - foreach (prioList hook,m_sinkRegisterList) { - if (hook.hook->hookSinkRegister(Name,ID)==HOOK_STOP) break; - } +genError_t HookHandler::fireHookSinkRegister(char* Name, sink_t ID) { + foreach (prioList hook,m_sinkRegisterList) + { + if (hook.hook->hookSinkRegister(Name, ID) == HOOK_STOP) + break; + } return GEN_OK; } -genError_t HookHandler::fireHookSinkDeregister (sink_t ID) { - foreach (prioList hook,m_sinkDeregisterList) { - if (hook.hook->hookSinkDeregister(ID)==HOOK_STOP) break; - } +genError_t HookHandler::fireHookSinkDeregister(sink_t ID) { + foreach (prioList hook,m_sinkDeregisterList) + { + if (hook.hook->hookSinkDeregister(ID) == HOOK_STOP) + break; + } return GEN_OK; } -genError_t HookHandler::fireHookSourceRegister (char* Name, source_t ID) { - foreach (prioList hook,m_sourceRegisterList) { - if (hook.hook->hookSinkRegister(Name,ID)==HOOK_STOP) break; - } +genError_t HookHandler::fireHookSourceRegister(char* Name, source_t ID) { + foreach (prioList hook,m_sourceRegisterList) + { + if (hook.hook->hookSinkRegister(Name, ID) == HOOK_STOP) + break; + } return GEN_OK; } -genError_t HookHandler::fireHookSourceDeregister (source_t ID) { - foreach (prioList hook,m_sourceDeregisterList) { - if (hook.hook->hookSourceDeregister(ID)==HOOK_STOP) break; - } +genError_t HookHandler::fireHookSourceDeregister(source_t ID) { + foreach (prioList hook,m_sourceDeregisterList) + { + if (hook.hook->hookSourceDeregister(ID) == HOOK_STOP) + break; + } return GEN_OK; } -genError_t HookHandler::fireHookGatewayRegister (char* Name, gateway_t ID) { - foreach (prioList hook,m_gatewayRegisterList) { - if (hook.hook->hookGatewayRegister(Name,ID)==HOOK_STOP) break; - } +genError_t HookHandler::fireHookGatewayRegister(char* Name, gateway_t ID) { + foreach (prioList hook,m_gatewayRegisterList) + { + if (hook.hook->hookGatewayRegister(Name, ID) == HOOK_STOP) + break; + } return GEN_OK; } -genError_t HookHandler::fireHookGatewayDeregister (gateway_t ID) { - foreach (prioList hook,m_gatewayDeregisterList) { - if (hook.hook->hookGatewayDeregister(ID)==HOOK_STOP) break; - } +genError_t HookHandler::fireHookGatewayDeregister(gateway_t ID) { + foreach (prioList hook,m_gatewayDeregisterList) + { + if (hook.hook->hookGatewayDeregister(ID) == HOOK_STOP) + break; + } return GEN_OK; } -genError_t HookHandler::fireHookSystemReady (void) { - foreach (prioList hook,m_systemReadyList) { - if (hook.hook->hookSystemReady()==HOOK_STOP) break; - } +genError_t HookHandler::fireHookSystemReady(void) { + foreach (prioList hook,m_systemReadyList) + { + if (hook.hook->hookSystemReady() == HOOK_STOP) + break; + } return GEN_OK; } -genError_t HookHandler::fireHookSystemDown (void) { - foreach (prioList hook,m_systemDownList) { - if (hook.hook->hookSystemDown()==HOOK_STOP) break; - } +genError_t HookHandler::fireHookSystemDown(void) { + foreach (prioList hook,m_systemDownList) + { + if (hook.hook->hookSystemDown() == HOOK_STOP) + break; + } return GEN_OK; } -genError_t HookHandler::fireHookConnectionRequest (source_t SourceID, sink_t SinkID) { - foreach (prioList hook,m_connectionRequestList) { - if (hook.hook->hookConnectionRequest(SourceID,SinkID)==HOOK_STOP) break; - } +genError_t HookHandler::fireHookConnectionRequest(source_t SourceID, + sink_t SinkID) { + foreach (prioList hook,m_connectionRequestList) + { + if (hook.hook->hookConnectionRequest(SourceID, SinkID) == HOOK_STOP) + break; + } return GEN_OK; } -genError_t HookHandler::fireHookDisconnectionRequest (connection_t ID) { - foreach (prioList hook,m_disconnectionReuestList) { - if (hook.hook->hookDisconnectionRequest(ID)==HOOK_STOP) break; - } +genError_t HookHandler::fireHookDisconnectionRequest(connection_t ID) { + foreach (prioList hook,m_disconnectionReuestList) + { + if (hook.hook->hookDisconnectionRequest(ID) == HOOK_STOP) + break; + } return GEN_OK; } -genError_t HookHandler::fireHookUserConnectionRequest (Queue* queue, source_t SourceID, sink_t SinkID) { - foreach (prioList hook,m_userConnectionRequestList) { - if (hook.hook->hookUserConnectionRequest(queue,SourceID,SinkID)==HOOK_STOP) break; - } +genError_t HookHandler::fireHookUserConnectionRequest(Queue* queue, + source_t SourceID, sink_t SinkID) { + foreach (prioList hook,m_userConnectionRequestList) + { + if (hook.hook->hookUserConnectionRequest(queue, SourceID, SinkID) + == HOOK_STOP) + break; + } return GEN_OK; } -genError_t HookHandler::fireHookUserDisconnectionRequest (Queue* queue, connection_t connID) { - foreach (prioList hook,m_userDisconnectionReuestList) { - if (hook.hook->hookUserDisconnectionRequest(queue, connID)==HOOK_STOP) break; - } +genError_t HookHandler::fireHookUserDisconnectionRequest(Queue* queue, + connection_t connID) { + foreach (prioList hook,m_userDisconnectionReuestList) + { + if (hook.hook->hookUserDisconnectionRequest(queue, connID) + == HOOK_STOP) + break; + } return GEN_OK; } -genError_t HookHandler::fireHookRoutingRequest (bool onlyfree,source_t source, sink_t sink,QList* ReturnList) { - foreach (prioList hook,m_routingRequestList) { - if (hook.hook->hookRoutingRequest(onlyfree,source,sink,ReturnList)==HOOK_STOP) break; - } +genError_t HookHandler::fireHookRoutingRequest(bool onlyfree, source_t source, + sink_t sink, QList* ReturnList) { + foreach (prioList hook,m_routingRequestList) + { + if (hook.hook->hookRoutingRequest(onlyfree, source, sink, + ReturnList) == HOOK_STOP) + break; + } return GEN_OK; } //todo change type -genError_t HookHandler::fireHookRoutingComplete (genRoute_t route) { - foreach (prioList hook,m_routingCompleteList) { - if (hook.hook->hookRoutingComplete(route)==HOOK_STOP) break; - } +genError_t HookHandler::fireHookRoutingComplete(genRoute_t route) { + foreach (prioList hook,m_routingCompleteList) + { + if (hook.hook->hookRoutingComplete(route) == HOOK_STOP) + break; + } return GEN_OK; } -genError_t HookHandler::fireHookVolumeChange (volume_t newVolume, sink_t SinkID) { - foreach (prioList hook,m_volumeChangeList) { - if (hook.hook->hookVolumeChange(newVolume,SinkID)==HOOK_STOP) break; - } +genError_t HookHandler::fireHookVolumeChange(volume_t newVolume, sink_t SinkID) { + foreach (prioList hook,m_volumeChangeList) + { + if (hook.hook->hookVolumeChange(newVolume, SinkID) == HOOK_STOP) + break; + } return GEN_OK; } -genError_t HookHandler::fireHookMuteSource (source_t ID) { - foreach (prioList hook,m_muteSourceList) { - if (hook.hook->hookMuteSource(ID)==HOOK_STOP) break; - } +genError_t HookHandler::fireHookMuteSource(source_t ID) { + foreach (prioList hook,m_muteSourceList) + { + if (hook.hook->hookMuteSource(ID) == HOOK_STOP) + break; + } return GEN_OK; } -genError_t HookHandler::fireHookUnmuteSource (source_t ID) { - foreach (prioList hook,m_unmuteSourceList) { - if (hook.hook->hookUnmuteSource(ID)==HOOK_STOP) break; - } +genError_t HookHandler::fireHookUnmuteSource(source_t ID) { + foreach (prioList hook,m_unmuteSourceList) + { + if (hook.hook->hookUnmuteSource(ID) == HOOK_STOP) + break; + } return GEN_OK; } -genError_t HookHandler::fireHookMuteSink (sink_t ID) { - foreach (prioList hook,m_muteSinkList) { - if (hook.hook->hookMuteSink(ID)==HOOK_STOP) break; - } +genError_t HookHandler::fireHookMuteSink(sink_t ID) { + foreach (prioList hook,m_muteSinkList) + { + if (hook.hook->hookMuteSink(ID) == HOOK_STOP) + break; + } return GEN_OK; } -genError_t HookHandler::fireHookUnmuteSink (sink_t ID) { - foreach (prioList hook,m_unmuteSinkList) { - if (hook.hook->hookUnmuteSink(ID)==HOOK_STOP) break; - } +genError_t HookHandler::fireHookUnmuteSink(sink_t ID) { + foreach (prioList hook,m_unmuteSinkList) + { + if (hook.hook->hookUnmuteSink(ID) == HOOK_STOP) + break; + } return GEN_OK; } -genError_t HookHandler::fireHookInterruptRequest (Queue* queue, source_t interruptSource, sink_t sink, genInt_t* interruptID) { - foreach (prioList hook,m_interruptRequestList) { - if (hook.hook->hookInterruptRequest(queue,interruptSource, sink, interruptID)==HOOK_STOP) break; - } +genError_t HookHandler::fireHookInterruptRequest(Queue* queue, + source_t interruptSource, sink_t sink, genInt_t* interruptID) { + foreach (prioList hook,m_interruptRequestList) + { + if (hook.hook->hookInterruptRequest(queue, interruptSource, sink, + interruptID) == HOOK_STOP) + break; + } return GEN_OK; } void HookHandler::registerAudioManagerCore(AudioManagerCore* core) { - m_core=core; + m_core = core; } void HookHandler::loadHookPlugins() { - BaseHook *b=NULL; - foreach (QObject *plugin, QPluginLoader::staticInstances()) { - HookPluginFactory* HookPluginFactory_ = qobject_cast(plugin); - if (HookPluginFactory_) { - b=HookPluginFactory_->returnInstance(); - b->registerHookEngine(this); - b->registerAudioManagerCore(m_core); - b->InitHook(); - char pName[40]; - if (b->returnPluginName(pName)==GEN_OK) { - DLT_LOG(AudioManager,DLT_LOG_INFO, DLT_STRING("Registered Hook Plugin:"), DLT_STRING(pName)); + BaseHook *b = NULL; + foreach (QObject *plugin, QPluginLoader::staticInstances()) + { + HookPluginFactory* HookPluginFactory_ = qobject_cast< + HookPluginFactory *> (plugin); + if (HookPluginFactory_) { + b = HookPluginFactory_->returnInstance(); + b->registerHookEngine(this); + b->registerAudioManagerCore(m_core); + b->InitHook(); + char pName[40]; + if (b->returnPluginName(pName) == GEN_OK) { + DLT_LOG(AudioManager,DLT_LOG_INFO, DLT_STRING("Registered Hook Plugin:"), DLT_STRING(pName)); + } } } - } } - diff --git a/AudioManagerDeamon/HookEngine.h b/AudioManagerDeamon/HookEngine.h index dd239d3..4586bf5 100644 --- a/AudioManagerDeamon/HookEngine.h +++ b/AudioManagerDeamon/HookEngine.h @@ -34,29 +34,30 @@ class Queue; /**These define the different types of Hooks available in the system * */ -typedef enum genHook{ - HOOK_DOMAIN_REGISTER, //!< HOOK_DOMAIN_REGISTER - HOOK_DOMAIN_DEREGISTER, //!< HOOK_DOMAIN_DEREGISTER - HOOK_SOURCE_REGISTER, //!< HOOK_SOURCE_REGISTER - HOOK_SOURCE_DEREGISTER, //!< HOOK_SOURCE_DEREGISTER - HOOK_SINK_REGISTER, //!< HOOK_SINK_REGISTER - HOOK_SINK_DEREGISTER, //!< HOOK_SINK_DEREGISTER - HOOK_GATEWAY_REGISTER, //!< HOOK_GATEWAY_REGISTER - HOOK_GATEWAY_DERGISTER, //!< HOOK_GATEWAY_DERGISTER - HOOK_SYSTEM_READY, //!< HOOK_SYSTEM_READY - HOOK_SYSTEM_DOWN, //!< HOOK_SYSTEM_DOWN - HOOK_USER_CONNECTION_REQUEST, //!< HOOK_USER_CONNECTION_REQUEST - HOOK_USER_DISCONNECTION_REQUEST, //!< HOOK_USER_DISCONNECTION_REQUEST - HOOK_CONNECTION_REQUEST, //!< HOOK_CONNECTION_REQUEST - HOOK_DISCONNECTION_REQUEST, //!< HOOK_DISCONNECTION_REQUEST - HOOK_ROUTING_REQUEST, //!< HOOK_ROUTING_REQUEST - HOOK_ROUTING_COMPLETE, //!< HOOK_ROUTING_COMPLETE - HOOK_VOLUME_CHANGE, //!< HOOK_VOLUME_CHANGE - HOOK_MUTE_SOURCE, //!< HOOK_MUTE_SOURCEDataBaseHandler - HOOK_UNMUTE_SOURCE, //!< HOOK_UNMUTE_SOURCE - HOOK_MUTE_SINK, //!< HOOK_MUTE_SINK - HOOK_UNMUTE_SINK, //!< HOOK_UNMUTE_SINK - HOOK_INTERRUPT_REQUEST //!< HOOK_INTERRUPT_REQUEST +typedef enum genHook { + HOOK_DOMAIN_REGISTER, //!< HOOK_DOMAIN_REGISTER + HOOK_DOMAIN_DEREGISTER, //!< HOOK_DOMAIN_DEREGISTER + HOOK_SOURCE_REGISTER, //!< HOOK_SOURCE_REGISTER + HOOK_SOURCE_DEREGISTER, //!< HOOK_SOURCE_DEREGISTER + HOOK_SINK_REGISTER, //!< HOOK_SINK_REGISTER + HOOK_SINK_DEREGISTER, //!< HOOK_SINK_DEREGISTER + HOOK_GATEWAY_REGISTER, //!< HOOK_GATEWAY_REGISTER + HOOK_GATEWAY_DERGISTER, //!< HOOK_GATEWAY_DERGISTER + HOOK_SYSTEM_READY, //!< HOOK_SYSTEM_READY + HOOK_SYSTEM_DOWN, //!< HOOK_SYSTEM_DOWN + HOOK_USER_CONNECTION_REQUEST, //!< HOOK_USER_CONNECTION_REQUEST + HOOK_USER_DISCONNECTION_REQUEST, //!< HOOK_USER_DISCONNECTION_REQUEST + HOOK_CONNECTION_REQUEST, //!< HOOK_CONNECTION_REQUEST + HOOK_DISCONNECTION_REQUEST, //!< HOOK_DISCONNECTION_REQUEST + HOOK_ROUTING_REQUEST, //!< HOOK_ROUTING_REQUEST + HOOK_ROUTING_COMPLETE, //!< HOOK_ROUTING_COMPLETE + HOOK_VOLUME_CHANGE, //!< HOOK_VOLUME_CHANGE + HOOK_MUTE_SOURCE, //!< HOOK_MUTE_SOURCEDataBaseHandler + HOOK_UNMUTE_SOURCE, //!< HOOK_UNMUTE_SOURCE + HOOK_MUTE_SINK, //!< HOOK_MUTE_SINK + HOOK_UNMUTE_SINK, //!< HOOK_UNMUTE_SINK + HOOK_INTERRUPT_REQUEST +//!< HOOK_INTERRUPT_REQUEST } genHook_t; class HookHandler; @@ -102,28 +103,134 @@ public: void registerAudioManagerCore(AudioManagerCore* core); - virtual genHookResult_t hookDomainRegister (char* Name, domain_t ID) {(void)Name; (void)ID; return HOOK_UNUSED;}; - virtual genHookResult_t hookDomainDeregister (domain_t ID) {(void) ID; return HOOK_UNUSED;}; - virtual genHookResult_t hookSinkRegister (char* Name, sink_t ID) {(void)Name; (void) ID; return HOOK_UNUSED;}; - virtual genHookResult_t hookSinkDeregister (sink_t ID) {(void) ID; return HOOK_UNUSED;}; - virtual genHookResult_t hookSourceRegister (char* Name, source_t ID) {(void)Name; (void) ID; return HOOK_UNUSED;}; - virtual genHookResult_t hookSourceDeregister (source_t ID) {(void)ID; return HOOK_UNUSED;}; - virtual genHookResult_t hookGatewayRegister (char* Name, gateway_t ID) {(void)Name; (void) ID; return HOOK_UNUSED;}; - virtual genHookResult_t hookGatewayDeregister (gateway_t ID) {(void) ID; return HOOK_UNUSED;}; - virtual genHookResult_t hookSystemReady (void) {return HOOK_UNUSED;}; - virtual genHookResult_t hookSystemDown (void) {return HOOK_UNUSED;}; - virtual genHookResult_t hookUserConnectionRequest (Queue* queue,source_t SourceID, sink_t SinkID) {(void) queue; (void)SourceID; (void)SinkID; return HOOK_UNUSED;}; - virtual genHookResult_t hookUserDisconnectionRequest (Queue* queue, connection_t connID) {(void)queue; (void) connID; return HOOK_UNUSED;}; - virtual genHookResult_t hookConnectionRequest (source_t SourceID, sink_t SinkID) {(void)SourceID; (void)SinkID; return HOOK_UNUSED;}; - virtual genHookResult_t hookDisconnectionRequest (connection_t ID) {(void) ID; return HOOK_UNUSED;}; - virtual genHookResult_t hookRoutingRequest (bool onlyfree,source_t source, sink_t sink,QList* ReturnList) {(void)onlyfree; (void)source;(void)sink; (void)ReturnList; return HOOK_UNUSED;}; - virtual genHookResult_t hookRoutingComplete (genRoute_t route) {(void)route; return HOOK_UNUSED;}; - virtual genHookResult_t hookVolumeChange (volume_t newVolume, sink_t SinkID) {(void)newVolume; (void)SinkID; return HOOK_UNUSED;}; - virtual genHookResult_t hookMuteSource (source_t ID) {(void) ID; return HOOK_UNUSED;}; - virtual genHookResult_t hookUnmuteSource (source_t ID) {(void) ID; return HOOK_UNUSED;}; - virtual genHookResult_t hookMuteSink (sink_t ID) {(void) ID; return HOOK_UNUSED;}; - virtual genHookResult_t hookUnmuteSink (sink_t ID) {(void) ID; return HOOK_UNUSED;}; - virtual genHookResult_t hookInterruptRequest (Queue* queue, source_t interruptSource, sink_t sink, genInt_t* interruptID) {(void)queue; (void) interruptSource; (void)sink; (void)interruptID; return HOOK_UNUSED;}; + virtual genHookResult_t hookDomainRegister(char* Name, domain_t ID) { + (void) Name; + (void) ID; + return HOOK_UNUSED; + } + ; + virtual genHookResult_t hookDomainDeregister(domain_t ID) { + (void) ID; + return HOOK_UNUSED; + } + ; + virtual genHookResult_t hookSinkRegister(char* Name, sink_t ID) { + (void) Name; + (void) ID; + return HOOK_UNUSED; + } + ; + virtual genHookResult_t hookSinkDeregister(sink_t ID) { + (void) ID; + return HOOK_UNUSED; + } + ; + virtual genHookResult_t hookSourceRegister(char* Name, source_t ID) { + (void) Name; + (void) ID; + return HOOK_UNUSED; + } + ; + virtual genHookResult_t hookSourceDeregister(source_t ID) { + (void) ID; + return HOOK_UNUSED; + } + ; + virtual genHookResult_t hookGatewayRegister(char* Name, gateway_t ID) { + (void) Name; + (void) ID; + return HOOK_UNUSED; + } + ; + virtual genHookResult_t hookGatewayDeregister(gateway_t ID) { + (void) ID; + return HOOK_UNUSED; + } + ; + virtual genHookResult_t hookSystemReady(void) { + return HOOK_UNUSED; + } + ; + virtual genHookResult_t hookSystemDown(void) { + return HOOK_UNUSED; + } + ; + virtual genHookResult_t hookUserConnectionRequest(Queue* queue, + source_t SourceID, sink_t SinkID) { + (void) queue; + (void) SourceID; + (void) SinkID; + return HOOK_UNUSED; + } + ; + virtual genHookResult_t hookUserDisconnectionRequest(Queue* queue, + connection_t connID) { + (void) queue; + (void) connID; + return HOOK_UNUSED; + } + ; + virtual genHookResult_t hookConnectionRequest(source_t SourceID, + sink_t SinkID) { + (void) SourceID; + (void) SinkID; + return HOOK_UNUSED; + } + ; + virtual genHookResult_t hookDisconnectionRequest(connection_t ID) { + (void) ID; + return HOOK_UNUSED; + } + ; + virtual genHookResult_t hookRoutingRequest(bool onlyfree, source_t source, + sink_t sink, QList* ReturnList) { + (void) onlyfree; + (void) source; + (void) sink; + (void) ReturnList; + return HOOK_UNUSED; + } + ; + virtual genHookResult_t hookRoutingComplete(genRoute_t route) { + (void) route; + return HOOK_UNUSED; + } + ; + virtual genHookResult_t hookVolumeChange(volume_t newVolume, sink_t SinkID) { + (void) newVolume; + (void) SinkID; + return HOOK_UNUSED; + } + ; + virtual genHookResult_t hookMuteSource(source_t ID) { + (void) ID; + return HOOK_UNUSED; + } + ; + virtual genHookResult_t hookUnmuteSource(source_t ID) { + (void) ID; + return HOOK_UNUSED; + } + ; + virtual genHookResult_t hookMuteSink(sink_t ID) { + (void) ID; + return HOOK_UNUSED; + } + ; + virtual genHookResult_t hookUnmuteSink(sink_t ID) { + (void) ID; + return HOOK_UNUSED; + } + ; + virtual genHookResult_t hookInterruptRequest(Queue* queue, + source_t interruptSource, sink_t sink, genInt_t* interruptID) { + (void) queue; + (void) interruptSource; + (void) sink; + (void) interruptID; + return HOOK_UNUSED; + } + ; protected: HookHandler* m_hookhandler; @@ -150,7 +257,8 @@ public: * @param hookClass This is a pointer to the Class registering the hook. Usually this. * @return GEN_OK on success */ - genError_t registerHook(hookprio_t prio, genHook_t hookType, BaseHook* hookClass); + genError_t registerHook(hookprio_t prio, genHook_t hookType, + BaseHook* hookClass); void registerAudioManagerCore(AudioManagerCore* core); @@ -158,41 +266,45 @@ public: * of registered hooks and call them after the priorities. */ - genError_t fireHookDomainRegister (char* Name, domain_t ID); - genError_t fireHookDomainDeregister (domain_t ID); - genError_t fireHookSinkRegister (char* Name, sink_t ID); - genError_t fireHookSinkDeregister (sink_t ID); - genError_t fireHookSourceRegister (char* Name, source_t ID); - genError_t fireHookSourceDeregister (source_t ID); - genError_t fireHookGatewayRegister (char* Name, gateway_t ID); - genError_t fireHookGatewayDeregister (gateway_t ID); - genError_t fireHookSystemReady (void); - genError_t fireHookSystemDown (void); - genError_t fireHookConnectionRequest (source_t SourceID, sink_t SinkID); - genError_t fireHookDisconnectionRequest (connection_t ID); - genError_t fireHookUserConnectionRequest (Queue* queue,source_t SourceID, sink_t SinkID); - genError_t fireHookUserDisconnectionRequest (Queue* queue, connection_t connID); - genError_t fireHookRoutingRequest (bool onlyfree, source_t SourceID, sink_t SinkID, QList* ReturnList); - genError_t fireHookRoutingComplete (genRoute_t route); - genError_t fireHookVolumeChange (volume_t newVolume, sink_t SinkID); - genError_t fireHookMuteSource (source_t ID); - genError_t fireHookUnmuteSource (source_t ID); - genError_t fireHookMuteSink (sink_t ID); - genError_t fireHookUnmuteSink (sink_t ID); - genError_t fireHookInterruptRequest (Queue* queue, source_t interruptSource, sink_t sink, genInt_t* interruptID); + genError_t fireHookDomainRegister(char* Name, domain_t ID); + genError_t fireHookDomainDeregister(domain_t ID); + genError_t fireHookSinkRegister(char* Name, sink_t ID); + genError_t fireHookSinkDeregister(sink_t ID); + genError_t fireHookSourceRegister(char* Name, source_t ID); + genError_t fireHookSourceDeregister(source_t ID); + genError_t fireHookGatewayRegister(char* Name, gateway_t ID); + genError_t fireHookGatewayDeregister(gateway_t ID); + genError_t fireHookSystemReady(void); + genError_t fireHookSystemDown(void); + genError_t fireHookConnectionRequest(source_t SourceID, sink_t SinkID); + genError_t fireHookDisconnectionRequest(connection_t ID); + genError_t fireHookUserConnectionRequest(Queue* queue, source_t SourceID, + sink_t SinkID); + genError_t fireHookUserDisconnectionRequest(Queue* queue, + connection_t connID); + genError_t fireHookRoutingRequest(bool onlyfree, source_t SourceID, + sink_t SinkID, QList* ReturnList); + genError_t fireHookRoutingComplete(genRoute_t route); + genError_t fireHookVolumeChange(volume_t newVolume, sink_t SinkID); + genError_t fireHookMuteSource(source_t ID); + genError_t fireHookUnmuteSource(source_t ID); + genError_t fireHookMuteSink(sink_t ID); + genError_t fireHookUnmuteSink(sink_t ID); + genError_t fireHookInterruptRequest(Queue* queue, source_t interruptSource, + sink_t sink, genInt_t* interruptID); private: /**Struct for managing the hookLists * This struct holds the pointer to the instance of the hook to be called and the priority after that the list ist sorted. * */ - struct prioList { + struct prioList { BaseHook* hook; hookprio_t prio; }; QList m_domainRegisterList; - QList m_domainDeregisterList; + QList m_domainDeregisterList; QList m_sinkRegisterList; QList m_sinkDeregisterList; QList m_sourceRegisterList; @@ -220,12 +332,14 @@ private: /**Factory class for plugin. Needs just to return an instance of the class that the plugin implements. * */ -class HookPluginFactory { +class HookPluginFactory { public: - virtual ~HookPluginFactory() {} - virtual BaseHook* returnInstance()=0; + virtual ~HookPluginFactory() { + } + virtual BaseHook* returnInstance()=0; }; -Q_DECLARE_INTERFACE(HookPluginFactory,"HookPluginFactory/1.0"); +Q_DECLARE_INTERFACE(HookPluginFactory,"HookPluginFactory/1.0") +; #endif /* HOOKENGINE_H_ */ diff --git a/AudioManagerDeamon/Router.cpp b/AudioManagerDeamon/Router.cpp index 76342f4..6952433 100644 --- a/AudioManagerDeamon/Router.cpp +++ b/AudioManagerDeamon/Router.cpp @@ -31,17 +31,22 @@ #include "DataBaseHandler.h" #include "Router.h" -Router::Router() {} +Router::Router() { +} -Router::~Router() {} +Router::~Router() { +} void Router::registerDatabasehandler(DataBaseHandler* db_handler) { m_dbHandler = db_handler; } -bool Router::get_Route_from_Source_ID_to_Sink_ID(const bool onlyfree,const source_t Source_ID,const sink_t Sink_ID, QList* ReturnList) { +bool Router::get_Route_from_Source_ID_to_Sink_ID(const bool onlyfree, + const source_t Source_ID, const sink_t Sink_ID, + QList* ReturnList) { - domain_t Source_Domain = m_dbHandler->get_Domain_ID_from_Source_ID(Source_ID); //first find out in which domains the source and sink are + domain_t Source_Domain = m_dbHandler->get_Domain_ID_from_Source_ID( + Source_ID); //first find out in which domains the source and sink are domain_t Sink_Domain = m_dbHandler->get_Domain_ID_from_Sink_ID(Sink_ID); if (Source_Domain == -1 || Sink_Domain == -1) { @@ -79,7 +84,9 @@ bool Router::get_Route_from_Source_ID_to_Sink_ID(const bool onlyfree,const sourc //go throught the gatewayids and get more information for (int i = 0; i < gwids.length(); i++) { - m_dbHandler->get_Gateway_Source_Sink_Domain_ID_from_ID(gwids.value(i), &ReturnSource, &ReturnSink, &ReturnDomain); + m_dbHandler->get_Gateway_Source_Sink_Domain_ID_from_ID( + gwids.value(i), &ReturnSource, &ReturnSink, + &ReturnDomain); //first routing pair is source to ReturnSink of course; if (i == 0) { element.source = Source_ID; @@ -108,7 +115,8 @@ bool Router::get_Route_from_Source_ID_to_Sink_ID(const bool onlyfree,const sourc //TODO: return actual status ! } -RoutingTreeItem::RoutingTreeItem (const domain_t Domain_Id, const gateway_t Gateway_Id, RoutingTreeItem *parent) { +RoutingTreeItem::RoutingTreeItem(const domain_t Domain_Id, + const gateway_t Gateway_Id, RoutingTreeItem *parent) { parentItem = parent; m_domainID = Domain_Id; m_gatewayID = Gateway_Id; @@ -142,10 +150,13 @@ RoutingTree::RoutingTree(const domain_t Root_ID) : m_rootItem(RoutingTreeItem(Root_ID)) { } -RoutingTree::~RoutingTree() {} +RoutingTree::~RoutingTree() { +} -RoutingTreeItem* RoutingTree::insertItem(const domain_t Domain_ID, const gateway_t Gateway_ID, RoutingTreeItem *parentItem) { - RoutingTreeItem *newTree = new RoutingTreeItem(Domain_ID, Gateway_ID, parentItem); +RoutingTreeItem* RoutingTree::insertItem(const domain_t Domain_ID, + const gateway_t Gateway_ID, RoutingTreeItem *parentItem) { + RoutingTreeItem *newTree = new RoutingTreeItem(Domain_ID, Gateway_ID, + parentItem); parentItem->appendChild(newTree); m_allChildList.append(newTree); return newTree; @@ -170,30 +181,27 @@ RoutingTreeItem* RoutingTree::returnRootItem() { return &m_rootItem; } -Bushandler::Bushandler() { -} - -Bushandler::~Bushandler() { -} - - void Bushandler::load_Bus_plugins() { RoutingSendInterface *b = NULL; char BusName[40]; Bus newBus; - foreach (QObject *plugin, QPluginLoader::staticInstances()) { - strcpy(BusName, ""); - RoutingInterfaceFactory* busInterfaceFactory = qobject_cast (plugin); - if (busInterfaceFactory) { - b = busInterfaceFactory->returnInstance(); - b->return_BusName(BusName); - newBus.Name = QString(BusName); - newBus.sendInterface = b; - Busses.append(newBus); - QObject::connect((const QObject*) this, SIGNAL (signal_system_ready(void)), (const QObject*) b, SLOT(slot_system_ready(void))); - DLT_LOG(AudioManager,DLT_LOG_INFO, DLT_STRING("Bushandler:Found new bus interface"), DLT_STRING(newBus.Name.toAscii())); + foreach (QObject *plugin, QPluginLoader::staticInstances()) + { + strcpy(BusName, ""); + RoutingInterfaceFactory* busInterfaceFactory = qobject_cast< + RoutingInterfaceFactory *> (plugin); + if (busInterfaceFactory) { + b = busInterfaceFactory->returnInstance(); + b->return_BusName(BusName); + newBus.Name = QString(BusName); + newBus.sendInterface = b; + Busses.append(newBus); + QObject::connect((const QObject*) this, + SIGNAL (signal_system_ready(void)), (const QObject*) b, + SLOT(slot_system_ready(void))); + DLT_LOG(AudioManager,DLT_LOG_INFO, DLT_STRING("Bushandler:Found new bus interface"), DLT_STRING(newBus.Name.toAscii())); + } } - } } void Bushandler::StartupInterfaces() { @@ -216,5 +224,6 @@ RoutingSendInterface* Bushandler::getInterfaceforBus(QString bus) { return b.sendInterface; } } + return NULL; } diff --git a/AudioManagerDeamon/Router.h b/AudioManagerDeamon/Router.h index 252cf67..683b75e 100644 --- a/AudioManagerDeamon/Router.h +++ b/AudioManagerDeamon/Router.h @@ -31,7 +31,6 @@ class DataBaseHandler; class RoutingReceiver; - /**calculates routes from sinks to sources * navigation for audio */ @@ -54,7 +53,9 @@ public: * @param ReturnList buffer for the answer. * @return returns true on success */ - bool get_Route_from_Source_ID_to_Sink_ID(const bool onlyfree, const source_t Source_ID, const sink_t Sink_ID, QList* ReturnList); + bool get_Route_from_Source_ID_to_Sink_ID(const bool onlyfree, + const source_t Source_ID, const sink_t Sink_ID, + QList* ReturnList); private: DataBaseHandler* m_dbHandler; @@ -74,7 +75,8 @@ public: * @param Gateway_Id the gateway ID that connects the domains * @param parent pointer to the parent item in the tree */ - RoutingTreeItem(const domain_t Domain_Id, const gateway_t Gateway_Id = 0, RoutingTreeItem *parent = 0); + RoutingTreeItem(const domain_t Domain_Id, const gateway_t Gateway_Id = 0, + RoutingTreeItem *parent = 0); /**appends a child from the same type to the tree * @@ -107,10 +109,10 @@ public: RoutingTreeItem* return_Parent(); private: - QList childItems; //!< List of all child items - domain_t m_domainID; //!< the domain ID of the item - gateway_t m_gatewayID; //!< the gateway Id - RoutingTreeItem *parentItem; //!< pointer to the parent item + QList childItems; //!< List of all child items + domain_t m_domainID; //!< the domain ID of the item + gateway_t m_gatewayID; //!< the gateway Id + RoutingTreeItem *parentItem; //!< pointer to the parent item }; /**The routing tree iself @@ -133,7 +135,8 @@ public: * @param parentItem pointer to the parent Item * @return returns a pointer to the new item */ - RoutingTreeItem* insertItem(const domain_t Domain_ID, const gateway_t Gateway_ID, RoutingTreeItem* parentItem); + RoutingTreeItem* insertItem(const domain_t Domain_ID, + const gateway_t Gateway_ID, RoutingTreeItem* parentItem); /**reverses the tree to get a route to the TargetItem * @@ -143,7 +146,6 @@ public: */ int getRoute(RoutingTreeItem* TargetItem, QList* route); - /**returns the DomainId of the rootItem * * @return domain ID of the root Item @@ -157,8 +159,8 @@ public: RoutingTreeItem* returnRootItem(void); private: - RoutingTreeItem m_rootItem; //!< pointer to root item - QList m_allChildList; //!< list of all childs + RoutingTreeItem m_rootItem; //!< pointer to root item + QList m_allChildList; //!< list of all childs }; /**This class is responsible for loading the RoutingInterface Plugins @@ -168,8 +170,12 @@ private: class Bushandler: public QObject { Q_OBJECT public: - Bushandler(); - virtual ~Bushandler(); + Bushandler() { + } + ; + virtual ~Bushandler() { + } + ; /**by calling this, all bus plugins are loaded * @@ -209,8 +215,8 @@ private: QString Name; }; - QList Busses; //!< list of all busses - RoutingReceiver* m_receiver; //!< pointer to the routing receiver + QList Busses; //!< list of all busses + RoutingReceiver* m_receiver; //!< pointer to the routing receiver }; #endif /* ROUTER_H_ */ diff --git a/AudioManagerDeamon/RoutingReceive.cpp b/AudioManagerDeamon/RoutingReceive.cpp index 85e94a5..6108495 100644 --- a/AudioManagerDeamon/RoutingReceive.cpp +++ b/AudioManagerDeamon/RoutingReceive.cpp @@ -25,78 +25,87 @@ #include "RoutingReceive.h" -void RoutingReceiver::register_Databasehandler(DataBaseHandler* handler_){ - handler=handler_; +void RoutingReceiver::register_Databasehandler(DataBaseHandler* handler_) { + handler = handler_; } -int RoutingReceiver::registerDomain(char* name, char* busname, char* node, bool earlymode) { +int RoutingReceiver::registerDomain(char* name, char* busname, char* node, + bool earlymode) { DLT_LOG(AudioManager,DLT_LOG_INFO, DLT_STRING("Domain Registered: "), DLT_STRING(name)); - return handler->insert_into_Domains_table(QString(name), QString(busname), QString(node),earlymode); + return handler->insert_into_Domains_table(QString(name), QString(busname), + QString(node), earlymode); } int RoutingReceiver::registerSource(char* name, char* audioclass, char* domain) { - int id_class=handler->get_Source_Class_ID_from_Name(QString(audioclass)); - int id_domain=handler->get_Domain_ID_from_Name(QString(domain)); + int id_class = handler->get_Source_Class_ID_from_Name(QString(audioclass)); + int id_domain = handler->get_Domain_ID_from_Name(QString(domain)); - if (id_class==0) { + if (id_class == 0) { DLT_LOG(AudioManager,DLT_LOG_ERROR, DLT_STRING("Class unknown: "), DLT_STRING(audioclass)); return -1; - } - else if (id_class==-1) { + } else if (id_class == -1) { DLT_LOG(AudioManager,DLT_LOG_ERROR, DLT_STRING("Database Error: ")); return -1; } - if (id_domain==0) { + if (id_domain == 0) { DLT_LOG(AudioManager,DLT_LOG_ERROR, DLT_STRING("Domain unknown: ")); return -1; - } - else if (id_class==-1) { + } else if (id_class == -1) { DLT_LOG(AudioManager,DLT_LOG_ERROR, DLT_STRING("Database Error: ")); return -1; } - return handler->insert_into_Source_table(QString(name),id_class,id_domain,false); + return handler->insert_into_Source_table(QString(name), id_class, + id_domain, false); } -int RoutingReceiver::registerSink(char* name,char* sinkclass, char* domain) { +int RoutingReceiver::registerSink(char* name, char* sinkclass, char* domain) { //TODO: Integrate Sink Classes - int id_sinkclass=1; - int id_domain=handler->get_Domain_ID_from_Name(QString(domain)); + (void) sinkclass; + int id_sinkclass = 1; + int id_domain = handler->get_Domain_ID_from_Name(QString(domain)); - if (id_domain==0) { + if (id_domain == 0) { DLT_LOG(AudioManager,DLT_LOG_ERROR, DLT_STRING("Domain unknown: ")); return -1; } - return handler->insert_into_Sink_table(QString(name),id_sinkclass,id_domain,false); + return handler->insert_into_Sink_table(QString(name), id_sinkclass, + id_domain, false); } -int RoutingReceiver::registerGateway(char* name, char* sink, char* source, char *domainSource, char* domainSink, char* controlDomain){ +int RoutingReceiver::registerGateway(char* name, char* sink, char* source, + char *domainSource, char* domainSink, char* controlDomain) { - int domainSourceID=handler->get_Domain_ID_from_Name(QString(domainSource)); - if (domainSourceID==0) { - domainSourceID=handler->peek_Domain_ID(QString(domainSource)); + int domainSourceID = + handler->get_Domain_ID_from_Name(QString(domainSource)); + if (domainSourceID == 0) { + domainSourceID = handler->peek_Domain_ID(QString(domainSource)); } - int domainSinkID=handler->get_Domain_ID_from_Name(QString(domainSink)); - if (domainSinkID==0) { - domainSinkID=handler->peek_Domain_ID(QString(domainSink)); + int domainSinkID = handler->get_Domain_ID_from_Name(QString(domainSink)); + if (domainSinkID == 0) { + domainSinkID = handler->peek_Domain_ID(QString(domainSink)); } - int domainControlID=handler->get_Domain_ID_from_Name(QString(controlDomain)); + int domainControlID = handler->get_Domain_ID_from_Name( + QString(controlDomain)); - if (domainSourceID ==0) { + if (domainSourceID == 0) { DLT_LOG(AudioManager,DLT_LOG_ERROR, DLT_STRING("Domain Source unknown: ")); return -1; } - if (domainSink ==0) { + if (domainSink == 0) { DLT_LOG(AudioManager,DLT_LOG_ERROR, DLT_STRING("Domain Sink unknown: ")); return -1; } - if (domainControlID ==0) { + if (domainControlID == 0) { DLT_LOG(AudioManager,DLT_LOG_ERROR, DLT_STRING("Domain Control unknown: ")); return -1; } - int sourceId=handler->insert_into_Source_table(QString(source),0,domainSourceID,true); - int sinkID=handler->insert_into_Sink_table(QString(sink),0,domainSinkID,true); - return handler->insert_into_Gatway_table(QString(name),sinkID,sourceId,domainSourceID,domainSinkID,domainControlID); + int sourceId = handler->insert_into_Source_table(QString(source), 0, + domainSourceID, true); + int sinkID = handler->insert_into_Sink_table(QString(sink), 0, + domainSinkID, true); + return handler->insert_into_Gatway_table(QString(name), sinkID, sourceId, + domainSourceID, domainSinkID, domainControlID); } @@ -105,5 +114,5 @@ int RoutingReceiver::peekDomain(char* name) { } void RoutingReceiver::ackConnect(genHandle_t handle, genError_t error) { - emit signal_ackConnect(handle,error); + emit signal_ackConnect(handle, error); } diff --git a/AudioManagerDeamon/RoutingReceive.h b/AudioManagerDeamon/RoutingReceive.h index 2003ebf..81e9213 100644 --- a/AudioManagerDeamon/RoutingReceive.h +++ b/AudioManagerDeamon/RoutingReceive.h @@ -36,11 +36,12 @@ class DataBaseHandler; class RoutingReceiver: public QObject, public RoutingReceiveInterface { Q_OBJECT public: - void register_Databasehandler(DataBaseHandler* handler_); //is used to register the Database handler + void register_Databasehandler(DataBaseHandler* handler_); //is used to register the Database handler int registerDomain(char* name, char* busname, char* node, bool earlymode); - int registerGateway(char* name, char* sink, char* source, char *domainSource, char* domainSink, char* controlDomain); - int registerSink(char* name,char* sinkclass, char* domain); + int registerGateway(char* name, char* sink, char* source, + char *domainSource, char* domainSink, char* controlDomain); + int registerSink(char* name, char* sinkclass, char* domain); int registerSource(char* name, char* audioclass, char* domain); int peekDomain(char* name); void ackConnect(genHandle_t handle, genError_t error); diff --git a/AudioManagerDeamon/dataTypes.h b/AudioManagerDeamon/dataTypes.h index aace3e9..2f17637 100644 --- a/AudioManagerDeamon/dataTypes.h +++ b/AudioManagerDeamon/dataTypes.h @@ -31,21 +31,23 @@ typedef int sinkClass_t; /**Global defined error Type * */ -typedef enum genError{ - GEN_OK, //!< GEN_OK - GEN_UNKNOWN, //!< GEN_UNKNOWN - GEN_OUTOFRANGE, //!< GEN_OUTOFRANGE - GEN_NOTUSED, //!< GEN_NOTUSED - GEN_DATABASE_ERROR //!< GEN_DATABASE_ERROR -}genError_t; +typedef enum genError { + GEN_OK, //!< GEN_OK + GEN_UNKNOWN, //!< GEN_UNKNOWN + GEN_OUTOFRANGE, //!< GEN_OUTOFRANGE + GEN_NOTUSED, //!< GEN_NOTUSED + GEN_DATABASE_ERROR +//!< GEN_DATABASE_ERROR +} genError_t; /** the resulttype for the hooks * */ -typedef enum genHookResult{ +typedef enum genHookResult { HOOK_OK, //!< HOOK_OK HOOK_STOP,//!< HOOK_STOP - HOOK_UNUSED //!< HOOK_UNUSED + HOOK_UNUSED +//!< HOOK_UNUSED } genHookResult_t; /** This represents one "hopp" in the route @@ -86,6 +88,4 @@ public: QList listInterrruptedSources; }; - - #endif /* DATATYPES_H_ */ diff --git a/AudioManagerDeamon/main.cpp b/AudioManagerDeamon/main.cpp index 355fa09..a31c2db 100644 --- a/AudioManagerDeamon/main.cpp +++ b/AudioManagerDeamon/main.cpp @@ -22,30 +22,23 @@ * * */ - /** * \file The main file of the AudioManager */ - #include #include - #include "audioManagerIncludes.h" - /** * \todo: write some documentation about Plugin mechanism * */ - //put here all plugins you want to use with the Routing Interface Q_IMPORT_PLUGIN(RoutingPlugin) Q_IMPORT_PLUGIN(RoutingJackPlugin) - //put here all plugins that you want to use with the hooks. No more modification needed (besides adoption of the CMakeList) ! Q_IMPORT_PLUGIN(TestPlugin) - -DLT_DECLARE_CONTEXT(AudioManager); - +DLT_DECLARE_CONTEXT(AudioManager) +; int main(int argc, char *argv[]) { QCoreApplication a(argc, argv); @@ -84,8 +77,7 @@ int main(int argc, char *argv[]) { /** * \todo: we do not have to knock down the database whole the time - this can be done different - */ - DLT_LOG(AudioManager,DLT_LOG_INFO, DLT_STRING("create tables for database")); + */DLT_LOG(AudioManager,DLT_LOG_INFO, DLT_STRING("create tables for database")); dhandler.create_tables(); /** diff --git a/AudioManagerDeamon/mainpage.h b/AudioManagerDeamon/mainpage.h index aab6446..8a94c2c 100644 --- a/AudioManagerDeamon/mainpage.h +++ b/AudioManagerDeamon/mainpage.h @@ -31,5 +31,4 @@ #ifndef MAINPAGE_H_ #define MAINPAGE_H_ - #endif /* MAINPAGE_H_ */ diff --git a/AudioManagerDeamon/routinginterface.h b/AudioManagerDeamon/routinginterface.h index c627179..d8a063e 100644 --- a/AudioManagerDeamon/routinginterface.h +++ b/AudioManagerDeamon/routinginterface.h @@ -23,7 +23,6 @@ * */ - #ifndef ROUTINGINTERFACE_H_ #define ROUTINGINTERFACE_H_ @@ -35,55 +34,50 @@ class RoutingSendInterface; /** Routing Receive sendInterface description. * This class implements everything from RoutingAdapter -> Audiomanager */ -class RoutingReceiveInterface -{ +class RoutingReceiveInterface { public: /** destructor*/ - virtual ~RoutingReceiveInterface() {} + virtual ~RoutingReceiveInterface() { + } /** Registers a Domain at the Audiomanager. * \return a unique ID of the domain */ - virtual domain_t registerDomain( - char* name, /**< the name of the domain. Must be unique in the system*/ - char* busname, /**< the name of the bus that is used laster to talk to the domain*/ - char* node, /**< the nonde of the bus*/ - bool earlymode /**< true if the domain is in earlymode*/ - )=0; + virtual domain_t registerDomain(char* name, /**< the name of the domain. Must be unique in the system*/ + char* busname, /**< the name of the bus that is used laster to talk to the domain*/ + char* node, /**< the nonde of the bus*/ + bool earlymode /**< true if the domain is in earlymode*/ + )=0; /** Registers a Gateway at the Audiomanager * \return a unique ID of the gateway */ - virtual gateway_t registerGateway( - char* name, /**< the name of the gateway. Should be unique in the system*/ - char* sink, /**< the name of the sink (on the emitting side)*/ - char* source, /**< the name of the source (on the receiving side)*/ - char *domainSource, /**< the domain of the source*/ - char* domainSink, /**< the domain of the sink*/ - char* controlDomain /**< the controlling domain*/ - )=0; + virtual gateway_t registerGateway(char* name, /**< the name of the gateway. Should be unique in the system*/ + char* sink, /**< the name of the sink (on the emitting side)*/ + char* source, /**< the name of the source (on the receiving side)*/ + char *domainSource, /**< the domain of the source*/ + char* domainSink, /**< the domain of the sink*/ + char* controlDomain /**< the controlling domain*/ + )=0; /** registers a Sink at the Audiomanager * \return a unique ID of the sink.*/ - virtual sink_t registerSink( - char* name, /**< the name of the sink to be registered. Sink names must be unique within a Domain*/ - char* sinkclass, /**< the name of the class. Must be valid otherwise registration fails*/ - char* domain /**< the domain name of the sink*/ - )=0; + virtual sink_t registerSink(char* name, /**< the name of the sink to be registered. Sink names must be unique within a Domain*/ + char* sinkclass, /**< the name of the class. Must be valid otherwise registration fails*/ + char* domain /**< the domain name of the sink*/ + )=0; /** registers a Source at the Audiomanager * * \return unique ID of the source */ - virtual source_t registerSource( - char* name, /**< the name of the source to be registered. Source names must be unique wihin the Domain*/ - char* audioclass, /**< the name of the class. If not existend, default will be used.*/ - char* domain /**< the domain of the sink*/ - )=0; + virtual source_t registerSource(char* name, /**< the name of the source to be registered. Source names must be unique wihin the Domain*/ + char* audioclass, /**< the name of the class. If not existend, default will be used.*/ + char* domain /**< the domain of the sink*/ + )=0; /** just get the ID of a domain without registering it. This is used to register Gateways. * During the time of registration it is unclear if the other Domain already exists. This function will either * return the already existing ID or reserve an ID with is then used later when the domain is registered. * * \return the unique Id of the domain. */ - virtual domain_t peekDomain( - char* name /**< the name of the domain*/ - )=0; + virtual domain_t peekDomain(char* name /**< the name of the domain*/ + )=0; /**Acknowledgement of a connect. This function shall be called when a connect event is finished * @@ -97,95 +91,85 @@ public: /** Routing Send sendInterface * This class implements everything from Audiomanager -> RoutingAdapter */ -class RoutingSendInterface: public QObject -{ +class RoutingSendInterface: public QObject { public: /** destructor*/ - virtual ~RoutingSendInterface() {} + virtual ~RoutingSendInterface() { + } /** starts up the interface. In the implementations, here is the best place for * init routines. */ - virtual void startup_interface( - RoutingReceiveInterface * action /**< hands over the handle to the receive object. */ - )=0; + virtual void startup_interface(RoutingReceiveInterface * action /**< hands over the handle to the receive object. */ + )=0; /** connect a source to a sink * \return the unique ID of the connection. */ - virtual connection_t connect( - source_t source, /**< the ID of the source*/ - sink_t sink, /**< the ID of the sink*/ - connection_t con_ID /**< the ID of the connection*/ - )=0; + virtual connection_t connect(source_t source, /**< the ID of the source*/ + sink_t sink, /**< the ID of the sink*/ + connection_t con_ID /**< the ID of the connection*/ + )=0; /** disconnect a connection * \return true on success */ - virtual bool disconnect( - connection_t connection_ID /**< the ID of the connection*/ - )=0; + virtual bool disconnect(connection_t connection_ID /**< the ID of the connection*/ + )=0; /** this method is used to retrieve the busname during startup of the plugin. * Needs to be implemented */ - virtual void return_BusName( - char* BusName /**< pointer to the Busname that needs to be returned*/ - )=0; + virtual void return_BusName(char* BusName /**< pointer to the Busname that needs to be returned*/ + )=0; /** this method is used to set the volume of a sink * \return returns the new value or -1 on error or impossible. * It is not mandatory that a Plugin implements this feature. */ - virtual volume_t setSinkVolume( - volume_t volume, /**< new volume */ - sink_t sinkID /**< sinkID to change */ - )=0; + virtual volume_t setSinkVolume(volume_t volume, /**< new volume */ + sink_t sinkID /**< sinkID to change */ + )=0; /** this method is used to set the volume of a source * \return returns the new value or -1 on error or impossible. * It is not mandatory that a Plugin implements this feature. */ - virtual volume_t setSourceVolume( - volume_t volume, /**< new volume */ - source_t sourceID /**< sourceID to change */ - )=0; + virtual volume_t setSourceVolume(volume_t volume, /**< new volume */ + source_t sourceID /**< sourceID to change */ + )=0; /** this method is used to mute a source * * \return true if succeeded * \todo add error codes to answers */ - virtual bool muteSource( - source_t sourceID /**< SourceID to be muted */ - )=0; + virtual bool muteSource(source_t sourceID /**< SourceID to be muted */ + )=0; /** this method is used to mute a sink * * \return true if succeeded * \todo add error codes to answers */ - virtual bool muteSink( - sink_t sinkID /**< SinkID to be muted */ - )=0; + virtual bool muteSink(sink_t sinkID /**< SinkID to be muted */ + )=0; /** this method is used to unmute a source * * \return true if succeeded * \todo add error codes to answers */ - virtual bool unmuteSource( - source_t sourceID /**< SourceID to be unmuted */ - )=0; + virtual bool unmuteSource(source_t sourceID /**< SourceID to be unmuted */ + )=0; /** this method is used to unmute a sink * * \return true if succeeded * \todo add error codes to answers */ - virtual bool unmuteSink( - sink_t sinkID /**< SinkID to be unmuted */ - )=0; + virtual bool unmuteSink(sink_t sinkID /**< SinkID to be unmuted */ + )=0; public slots: /** signal that tells the plugin that the system is ready. Is used to trigger a registration of Domains, etc..*/ @@ -196,17 +180,18 @@ public slots: * This is used for the Qt Plugin mechanism. The factory creates and returns a pointer to the * RoutingSendInterface. */ -class RoutingInterfaceFactory -{ +class RoutingInterfaceFactory { public: - virtual ~RoutingInterfaceFactory() {} + virtual ~RoutingInterfaceFactory() { + } /** returns an Instance of RoutingSendInterface. * \return pointer to the instance. */ - virtual RoutingSendInterface* returnInstance()=0; + virtual RoutingSendInterface* returnInstance()=0; }; -Q_DECLARE_INTERFACE(RoutingInterfaceFactory,"RoutingInterfaceFactory/1.0"); +Q_DECLARE_INTERFACE(RoutingInterfaceFactory,"RoutingInterfaceFactory/1.0") +; #endif /* ROUTINGINTERFACE_H_ */ diff --git a/PluginRoutingInterfaceDbus/DBusInterface.cpp b/PluginRoutingInterfaceDbus/DBusInterface.cpp index 6cc2144..cf4b8f4 100644 --- a/PluginRoutingInterfaceDbus/DBusInterface.cpp +++ b/PluginRoutingInterfaceDbus/DBusInterface.cpp @@ -29,48 +29,54 @@ using namespace std; -DBusInterface::DBusInterface(QObject* parent){ - +DBusInterface::DBusInterface(QObject* parent) { + (void) parent; } void DBusInterface::setReceiverInterface(RoutingReceiveInterface* r_interface) { - audiomanager=r_interface; + audiomanager = r_interface; } int DBusInterface::peekDomain(const QString &name) { - QByteArray b_name = name.toAscii(); - char * c_name = b_name.data(); + QByteArray b_name = name.toAscii(); + char * c_name = b_name.data(); return audiomanager->peekDomain(c_name); } -int DBusInterface::registerSource(const QString &name, const QString &audioclass, const QString &domain) { - QByteArray b_name = name.toAscii(); - QByteArray b_audioclass = audioclass.toAscii(); - QByteArray b_domain = domain.toAscii(); - char * c_name = b_name.data(); +int DBusInterface::registerSource(const QString &name, + const QString &audioclass, const QString &domain) { + QByteArray b_name = name.toAscii(); + QByteArray b_audioclass = audioclass.toAscii(); + QByteArray b_domain = domain.toAscii(); + char * c_name = b_name.data(); char * c_audioclass = b_audioclass.data(); char * c_domain = b_domain.data(); - return audiomanager->registerSource(c_name,c_audioclass,c_domain); + return audiomanager->registerSource(c_name, c_audioclass, c_domain); } -int DBusInterface::registerSink(const QString &name, const QString &sinkclass, const QString &domain) { - QByteArray b_name = name.toAscii(); - QByteArray b_sinkclass = sinkclass.toAscii(); - QByteArray b_domain = domain.toAscii(); - char * c_name = b_name.data(); +int DBusInterface::registerSink(const QString &name, const QString &sinkclass, + const QString &domain) { + QByteArray b_name = name.toAscii(); + QByteArray b_sinkclass = sinkclass.toAscii(); + QByteArray b_domain = domain.toAscii(); + char * c_name = b_name.data(); char * c_sinkclass = b_sinkclass.data(); char * c_domain = b_domain.data(); - return audiomanager->registerSink(c_name,c_sinkclass,c_domain); + return audiomanager->registerSink(c_name, c_sinkclass, c_domain); } -int DBusInterface::registerDomain(const QString &name, const QString &node, bool earlymode) { - QByteArray b_name = name.toAscii(); - QByteArray b_nodeame = node.toAscii(); - char* c_name= b_name.data(); - char* c_nodename=b_nodeame.data(); +int DBusInterface::registerDomain(const QString &name, const QString &node, + bool earlymode) { + QByteArray b_name = name.toAscii(); + QByteArray b_nodeame = node.toAscii(); + char* c_name = b_name.data(); + char* c_nodename = b_nodeame.data(); char c_busname[20]; - strcpy(c_busname,BUS_NAME); - return audiomanager->registerDomain(c_name,c_busname,c_nodename,earlymode); + strcpy(c_busname, BUS_NAME); + return audiomanager->registerDomain(c_name, c_busname, c_nodename, + earlymode); } -int DBusInterface::registerGateway(const QString &name, const QString &sink, const QString &source, const QString &domainSource, const QString &domainSink, const QString &controlDomain) { +int DBusInterface::registerGateway(const QString &name, const QString &sink, + const QString &source, const QString &domainSource, + const QString &domainSink, const QString &controlDomain) { QByteArray b_name = name.toAscii(); QByteArray b_sink = sink.toAscii(); QByteArray b_source = source.toAscii(); @@ -83,7 +89,8 @@ int DBusInterface::registerGateway(const QString &name, const QString &sink, con char* c_domainSource = b_domainSource.data(); char* c_domainSink = b_domainSink.data(); char* c_controlDomain = b_controlDomain.data(); - return audiomanager->registerGateway(c_name,c_sink,c_source,c_domainSource,c_domainSink,c_controlDomain); + return audiomanager->registerGateway(c_name, c_sink, c_source, + c_domainSource, c_domainSink, c_controlDomain); } void DBusInterface::emitSystemReady() { emit signal_systemReady(); diff --git a/PluginRoutingInterfaceDbus/DBusInterface.h b/PluginRoutingInterfaceDbus/DBusInterface.h index c5e6fe0..e094ae5 100644 --- a/PluginRoutingInterfaceDbus/DBusInterface.h +++ b/PluginRoutingInterfaceDbus/DBusInterface.h @@ -28,7 +28,7 @@ #include "DBusInterfaceAdaptor.h" #include "routinginterface.h" -class DBusInterface : public QObject { +class DBusInterface: public QObject { Q_OBJECT public: DBusInterface(QObject *parent = 0); @@ -37,12 +37,17 @@ public: public Q_SLOTS: // METHODS int peekDomain(const QString &name); - int registerDomain(const QString &name, const QString &node, bool earlymode); - int registerGateway(const QString &name, const QString &sink, const QString &source, const QString &domainSource, const QString &domainSink, const QString &controlDomain); - int registerSink(const QString &name, const QString &sinkclass, const QString &domain); - int registerSource(const QString &name, const QString &audioclass, const QString &domain); + int + registerDomain(const QString &name, const QString &node, bool earlymode); + int registerGateway(const QString &name, const QString &sink, + const QString &source, const QString &domainSource, + const QString &domainSink, const QString &controlDomain); + int registerSink(const QString &name, const QString &sinkclass, + const QString &domain); + int registerSource(const QString &name, const QString &audioclass, + const QString &domain); Q_SIGNALS: // SIGNALS - void signal_systemReady(); + void signal_systemReady(); private: RoutingReceiveInterface* audiomanager; diff --git a/PluginRoutingInterfaceDbus/RoutingSend.cpp b/PluginRoutingInterfaceDbus/RoutingSend.cpp index 9aeecac..d568f85 100644 --- a/PluginRoutingInterfaceDbus/RoutingSend.cpp +++ b/PluginRoutingInterfaceDbus/RoutingSend.cpp @@ -22,18 +22,18 @@ * Note that people who make modified versions of AudioManager are not obligated to grant this special exception for their modified versions; it is their choice whether to do so. The GNU Lesser General Public License, version 2.1, gives permission to release a modified version without this exception; this exception also makes it possible to release a modified version which carries forward this exception. */ - #include "RoutingSend.h" #include "DBusInterface.h" using namespace std; -DLT_DECLARE_CONTEXT(DBusPlugin); +DLT_DECLARE_CONTEXT( DBusPlugin); RoutingSend::RoutingSend() : - m_connection(QDBusConnection::sessionBus()), m_sender("org.genivi.pulse", "/pulse", m_connection) { - DLT_REGISTER_APP("DBusPlugin","DBusPlugin"); - DLT_REGISTER_CONTEXT(DBusPlugin,"Main","Main Context"); - DLT_LOG(DBusPlugin,DLT_LOG_INFO, DLT_STRING("The DBus Plugin is started")); + m_connection(QDBusConnection::sessionBus()), + m_sender("org.genivi.pulse", "/pulse", m_connection) { + DLT_REGISTER_APP("DBusPlugin", "DBusPlugin"); + DLT_REGISTER_CONTEXT(DBusPlugin, "Main", "Main Context"); + DLT_LOG(DBusPlugin, DLT_LOG_INFO, DLT_STRING("The DBus Plugin is started")); } void RoutingSend::startup_interface(RoutingReceiveInterface* audioman) { @@ -41,7 +41,7 @@ void RoutingSend::startup_interface(RoutingReceiveInterface* audioman) { DBusInterface* dbInterface = new DBusInterface; receiver = dbInterface; - DLT_LOG(DBusPlugin,DLT_LOG_INFO, DLT_STRING("DBus Interface started ")); + DLT_LOG(DBusPlugin, DLT_LOG_INFO, DLT_STRING("DBus Interface started ")); new DBusInterfaceAdaptor(dbInterface); // sender = new DBusSend(); @@ -50,11 +50,16 @@ void RoutingSend::startup_interface(RoutingReceiveInterface* audioman) { QString Servicename = "com.Genivi.routinginterface"; m_connection.registerService(Servicename); if (m_connection.isConnected()) { - if (m_connection.registerObject("/Hello", dbInterface, - (QDBusConnection::ExportAdaptors | QDBusConnection::ExportAllSignals))) { - DLT_LOG(DBusPlugin,DLT_LOG_INFO, DLT_STRING("Registered DBus succsessfully")); + if (m_connection.registerObject( + "/Hello", + dbInterface, + (QDBusConnection::ExportAdaptors + | QDBusConnection::ExportAllSignals))) { + DLT_LOG(DBusPlugin, DLT_LOG_INFO, + DLT_STRING("Registered DBus succsessfully")); } else { - DLT_LOG(DBusPlugin,DLT_LOG_ERROR, DLT_STRING("Registered DBus succsessfully")); + DLT_LOG(DBusPlugin, DLT_LOG_ERROR, + DLT_STRING("Registered DBus succsessfully")); } } @@ -65,55 +70,57 @@ void RoutingSend::return_BusName(char* BusName) { strcpy(BusName, BUS_NAME); } -connection_t RoutingSend::connect(source_t source, sink_t sink, connection_t connID) { - QDBusPendingReply pendingCall = m_sender.connect((int)source, (int)sink, (int)connID); +connection_t RoutingSend::connect(source_t source, sink_t sink, + connection_t connID) { + QDBusPendingReply pendingCall = m_sender.connect((int) source, + (int) sink, (int) connID); pendingCall.waitForFinished(); - return (connection_t)pendingCall.value(); + return (connection_t) pendingCall.value(); } void RoutingSend::slot_system_ready() { - DLT_LOG(DBusPlugin,DLT_LOG_INFO, DLT_STRING("DBus Plugin ready")); + DLT_LOG(DBusPlugin, DLT_LOG_INFO, DLT_STRING("DBus Plugin ready")); receiver->emitSystemReady(); } bool RoutingSend::disconnect(connection_t connectionID) { - if (m_sender.disconnect((int)connectionID)<0) { + if (m_sender.disconnect((int) connectionID) < 0) { return true; } return false; } volume_t RoutingSend::setSinkVolume(volume_t volume, sink_t sink) { - return (volume_t) m_sender.setSinkVolume((int)volume,(int)sink); + return (volume_t) m_sender.setSinkVolume((int) volume, (int) sink); } volume_t RoutingSend::setSourceVolume(volume_t volume, source_t source) { - return (volume_t) m_sender.setSourceVolume((int)volume,(int)source); + return (volume_t) m_sender.setSourceVolume((int) volume, (int) source); } bool RoutingSend::muteSource(source_t sourceID) { - if (m_sender.muteSource((int)sourceID)<0) { + if (m_sender.muteSource((int) sourceID) < 0) { return true; } return false; } bool RoutingSend::muteSink(sink_t sinkID) { - if (m_sender.muteSink((int)sinkID)<0) { + if (m_sender.muteSink((int) sinkID) < 0) { return true; } return false; } bool RoutingSend::unmuteSource(source_t sourceID) { - if (m_sender.unmuteSource((int)sourceID)<0) { + if (m_sender.unmuteSource((int) sourceID) < 0) { return true; } return false; } bool RoutingSend::unmuteSink(sink_t sinkID) { - if (m_sender.unmuteSink((int)sinkID)<0) { + if (m_sender.unmuteSink((int) sinkID) < 0) { return true; } return false; diff --git a/PluginRoutingInterfaceDbus/RoutingSend.h b/PluginRoutingInterfaceDbus/RoutingSend.h index 9f847a7..508614e 100644 --- a/PluginRoutingInterfaceDbus/RoutingSend.h +++ b/PluginRoutingInterfaceDbus/RoutingSend.h @@ -33,13 +33,11 @@ #define BUS_NAME "DBUS" - /**Implementation of the interface * */ -class RoutingSend: public RoutingSendInterface -{ -Q_OBJECT +class RoutingSend: public RoutingSendInterface { + Q_OBJECT public: RoutingSend(); void startup_interface(RoutingReceiveInterface * audioman); @@ -53,7 +51,6 @@ public: bool unmuteSource(source_t sourceID); bool unmuteSink(sink_t sinkID); - public slots: virtual void slot_system_ready(); @@ -66,10 +63,10 @@ private: //That is the actual implementation of the Factory Class returning the real sendInterface -class SampleRoutingInterfaceFactory: public QObject, public RoutingInterfaceFactory -{ -Q_OBJECT -Q_INTERFACES(RoutingInterfaceFactory) +class SampleRoutingInterfaceFactory: public QObject, + public RoutingInterfaceFactory { + Q_OBJECT + Q_INTERFACES(RoutingInterfaceFactory) public: RoutingSendInterface* returnInstance(); }; diff --git a/PluginRoutingInterfaceJack/RoutingSend.cpp b/PluginRoutingInterfaceJack/RoutingSend.cpp index 5d23eb2..4a4497d 100644 --- a/PluginRoutingInterfaceJack/RoutingSend.cpp +++ b/PluginRoutingInterfaceJack/RoutingSend.cpp @@ -77,24 +77,36 @@ bool RoutingSendJack::disconnect(connection_t connectionID) { } volume_t RoutingSendJack::setSinkVolume(volume_t volume, sink_t sink) { + (void)sink; //TODO fill with life + return volume; } volume_t RoutingSendJack::setSourceVolume(volume_t volume, source_t source) { + (void)source; //TODO fill with life + return volume; } bool RoutingSendJack::muteSource(source_t sourceID) { + (void)sourceID; //TODO fill with life + return true; } bool RoutingSendJack::muteSink(sink_t sinkID) { + (void)sinkID; //TODO fill with life + return true; } bool RoutingSendJack::unmuteSource(source_t sourceID) { + (void)sourceID; //TODO fill with life + return true; } bool RoutingSendJack::unmuteSink(sink_t sinkID){ + (void)sinkID; //TODO fill with life + return true; } RoutingSendInterface* SampleRoutingInterfaceJackFactory::returnInstance(){ diff --git a/README b/README index de68af2..ce3425b 100644 --- a/README +++ b/README @@ -33,6 +33,7 @@ You will need some packages in order to comile the GENIVI AudioManager Proof of -jackeq -jack control -dbus +-sqlite -glib >=2.0 -gstreamer-base-0.10 -gstreamer-plugins-base-0.10 @@ -204,6 +205,14 @@ Same for navigation, the file needs to have the name "music/navi.mp3" ./PLayerGui navigation +*********************************************************************************************************** +Tips +*********************************************************************************************************** +If you want to use the codebase with eclipse, define the main level of the git as workspace and import the projects as c++ makefile projects. +Git is setup in a way that the settings are ignored when committing. +To use make out of eclipse them, replace the default make command "make" with something like +"make -j4 -C ../build/AudioManagerDeamon VERBOSE=1" (exchaning the name of the Project in respect to the plugin whatever. + *********************************************************************************************************** _..-------++._ -- cgit v1.2.1