diff options
author | christian mueller <christian.ei.mueller@bmw.de> | 2012-04-04 15:27:10 +0200 |
---|---|---|
committer | christian mueller <christian.ei.mueller@bmw.de> | 2012-04-04 15:49:13 +0200 |
commit | 06476e68a42077a0597628dca1c4a53cd20f5236 (patch) | |
tree | d8fbcaf89eb159ee76c7260bd6999558952dd9e8 /PluginRoutingInterfaceDbus/include/CAmRoutingSenderDbus.h | |
parent | 1f4b52faf447b12f1900c91db5090e04feb33578 (diff) | |
download | audiomanager-06476e68a42077a0597628dca1c4a53cd20f5236.tar.gz |
* some enhancement to routingPluginDbus to make to get acces to all interfaces and handle multiple domains
Signed-off-by: christian mueller <christian.ei.mueller@bmw.de>
Diffstat (limited to 'PluginRoutingInterfaceDbus/include/CAmRoutingSenderDbus.h')
-rw-r--r-- | PluginRoutingInterfaceDbus/include/CAmRoutingSenderDbus.h | 78 |
1 files changed, 51 insertions, 27 deletions
diff --git a/PluginRoutingInterfaceDbus/include/CAmRoutingSenderDbus.h b/PluginRoutingInterfaceDbus/include/CAmRoutingSenderDbus.h index fb727a3..751f5ae 100644 --- a/PluginRoutingInterfaceDbus/include/CAmRoutingSenderDbus.h +++ b/PluginRoutingInterfaceDbus/include/CAmRoutingSenderDbus.h @@ -19,48 +19,72 @@ #define ROUTINGSENDER_H_ #include "routing/IAmRoutingSend.h" -#include <dbus/dbus.h> -#include <map> #include "CAmDbusMessageHandler.h" #include "IAmRoutingReceiverShadow.h" -#include "shared/CAmDbusWrapper.h" -using namespace am; +namespace am +{ -const char ROUTING_NODE[]="RoutingReceiver"; +#define ROUTING_NODE "RoutingInterface" class CAmRoutingSenderDbus: public IAmRoutingSend { public: CAmRoutingSenderDbus(); virtual ~CAmRoutingSenderDbus(); - am_Error_e startupInterface(IAmRoutingReceive* routingreceiveinterface) ; - void setRoutingReady(const uint16_t handle) ; - void setRoutingRundown(const uint16_t handle) ; - am_Error_e asyncAbort(const am_Handle_s handle) ; - am_Error_e asyncConnect(const am_Handle_s handle, const am_connectionID_t connectionID, const am_sourceID_t sourceID, const am_sinkID_t sinkID, const am_ConnectionFormat_e connectionFormat) ; - am_Error_e asyncDisconnect(const am_Handle_s handle, const am_connectionID_t connectionID) ; - am_Error_e asyncSetSinkVolume(const am_Handle_s handle, const am_sinkID_t sinkID, const am_volume_t volume, const am_RampType_e ramp, const am_time_t time) ; - am_Error_e asyncSetSourceVolume(const am_Handle_s handle, const am_sourceID_t sourceID, const am_volume_t volume, const am_RampType_e ramp, const am_time_t time) ; - am_Error_e asyncSetSourceState(const am_Handle_s handle, const am_sourceID_t sourceID, const am_SourceState_e state) ; - am_Error_e asyncSetSinkSoundProperties(const am_Handle_s handle, const am_sinkID_t sinkID, const std::vector<am_SoundProperty_s>& listSoundProperties) ; - am_Error_e asyncSetSinkSoundProperty(const am_Handle_s handle, const am_sinkID_t sinkID, const am_SoundProperty_s& soundProperty) ; - am_Error_e asyncSetSourceSoundProperties(const am_Handle_s handle, const am_sourceID_t sourceID, const std::vector<am_SoundProperty_s>& listSoundProperties) ; - am_Error_e asyncSetSourceSoundProperty(const am_Handle_s handle, const am_sourceID_t sourceID, const am_SoundProperty_s& soundProperty) ; - am_Error_e asyncCrossFade(const am_Handle_s handle, const am_crossfaderID_t crossfaderID, const am_HotSink_e hotSink, const am_RampType_e rampType, const am_time_t time) ; - am_Error_e setDomainState(const am_domainID_t domainID, const am_DomainState_e domainState) ; - am_Error_e returnBusName(std::string& BusName) const ; - void getInterfaceVersion(std::string& version) const ; + am_Error_e startupInterface(IAmRoutingReceive* pIAmRoutingReceive); + void setRoutingReady(const uint16_t handle); + void setRoutingRundown(const uint16_t handle); + am_Error_e asyncAbort(const am_Handle_s handle); + am_Error_e asyncConnect(const am_Handle_s handle, const am_connectionID_t connectionID, const am_sourceID_t sourceID, const am_sinkID_t sinkID, const am_ConnectionFormat_e connectionFormat); + am_Error_e asyncDisconnect(const am_Handle_s handle, const am_connectionID_t connectionID); + am_Error_e asyncSetSinkVolume(const am_Handle_s handle, const am_sinkID_t sinkID, const am_volume_t volume, const am_RampType_e ramp, const am_time_t time); + am_Error_e asyncSetSourceVolume(const am_Handle_s handle, const am_sourceID_t sourceID, const am_volume_t volume, const am_RampType_e ramp, const am_time_t time); + am_Error_e asyncSetSourceState(const am_Handle_s handle, const am_sourceID_t sourceID, const am_SourceState_e state); + am_Error_e asyncSetSinkSoundProperties(const am_Handle_s handle, const am_sinkID_t sinkID, const std::vector<am_SoundProperty_s>& listSoundProperties); + am_Error_e asyncSetSinkSoundProperty(const am_Handle_s handle, const am_sinkID_t sinkID, const am_SoundProperty_s& soundProperty); + am_Error_e asyncSetSourceSoundProperties(const am_Handle_s handle, const am_sourceID_t sourceID, const std::vector<am_SoundProperty_s>& listSoundProperties); + am_Error_e asyncSetSourceSoundProperty(const am_Handle_s handle, const am_sourceID_t sourceID, const am_SoundProperty_s& soundProperty); + am_Error_e asyncCrossFade(const am_Handle_s handle, const am_crossfaderID_t crossfaderID, const am_HotSink_e hotSink, const am_RampType_e rampType, const am_time_t time); + am_Error_e setDomainState(const am_domainID_t domainID, const am_DomainState_e domainState); + am_Error_e returnBusName(std::string& BusName) const; + void getInterfaceVersion(std::string& version) const; + + struct rs_lookupData_s + { + std::string busname; + std::string path; + std::string interface; + }; + + void removeHandle(uint16_t handle); + void addDomainLookup(am_domainID_t domainID, rs_lookupData_s lookupData); + void addSourceLookup(am_sourceID_t sourceID, am_domainID_t domainID); + void addSinkLookup(am_sinkID_t sinkID, am_domainID_t domainID); + void removeDomainLookup(am_domainID_t domainID); + void removeSourceLookup(am_sourceID_t sourceID); + void removeSinkLookup(am_sinkID_t sinkID); private: - CAmDbusMessageHandler mDBusMessageHandler; - IAmRoutingReceiverShadow mRoutingReceiverShadow; + CAmDbusWrapper* mpCAmDBusWrapper; + IAmRoutingReceive *mpIAmRoutingReceive; + DBusConnection* mpDBusConnection; + CAmRoutingDbusMessageHandler mCAmRoutingDBusMessageHandler; + IAmRoutingReceiverShadowDbus mIAmRoutingReceiverShadowDbus; - CAmDbusWrapper* mDBusWrapper; - IAmRoutingReceive *mRoutingReceiveInterface; + typedef std::map<am_domainID_t,rs_lookupData_s> mapDomain_t; + typedef std::map<am_sinkID_t,rs_lookupData_s> mapSinks_t; + typedef std::map<am_sourceID_t,rs_lookupData_s> mapSources_t; + typedef std::map<am_connectionID_t,rs_lookupData_s> mapConnections_t; + typedef std::map<uint16_t,rs_lookupData_s> mapHandles_t; + mapDomain_t mMapDomains; + mapSinks_t mMapSinks; + mapSources_t mMapSources; + mapConnections_t mMapConnections; + mapHandles_t mMapHandles; - DBusConnection* connection; }; +} #endif /* ROUTINGSENDER_H_ */ |