diff options
author | GENIVI Audio Manager Maintainer <genivi-maint-audiomanager@smtp1.genivi.org> | 2018-07-12 17:11:02 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-07-12 17:11:02 +0200 |
commit | 4f261b37238d310cc74ca5b1d9ca244ec3c5b70e (patch) | |
tree | d0e8c492a9da884aa57f6464dc515605eba705e0 /AudioManagerCore/include/CAmRoutingSender.h | |
parent | f93c2b7d4840b181a6375da2bde0a3679278a6b6 (diff) | |
parent | 95c696f818b6840bcbefe6d376ff01fa02dfd772 (diff) | |
download | audiomanager-4f261b37238d310cc74ca5b1d9ca244ec3c5b70e.tar.gz |
Merge pull request #35 from JensLorenz/issue_24_clean_up_whitespace
Issue #24 clean up whitespace
Diffstat (limited to 'AudioManagerCore/include/CAmRoutingSender.h')
-rw-r--r-- | AudioManagerCore/include/CAmRoutingSender.h | 525 |
1 files changed, 271 insertions, 254 deletions
diff --git a/AudioManagerCore/include/CAmRoutingSender.h b/AudioManagerCore/include/CAmRoutingSender.h index e14dd6d..39b5c23 100644 --- a/AudioManagerCore/include/CAmRoutingSender.h +++ b/AudioManagerCore/include/CAmRoutingSender.h @@ -28,8 +28,8 @@ #include <map> #include <memory> -#ifdef UNIT_TEST //this is needed to test RoutingSender -#include "../test/IAmRoutingBackdoor.h" +#ifdef UNIT_TEST // this is needed to test RoutingSender +# include "../test/IAmRoutingBackdoor.h" #endif #include "CAmDatabaseHandlerMap.h" @@ -42,292 +42,309 @@ class CAmRoutingReceiver; /** * Implements the RoutingSendInterface. Loads all plugins and dispatches calls to the plugins */ -class CAmRoutingSender: public CAmDatabaseHandlerMap::AmDatabaseObserverCallbacks +class CAmRoutingSender : public CAmDatabaseHandlerMap::AmDatabaseObserverCallbacks { public: - CAmRoutingSender(const std::vector<std::string>& listOfPluginDirectories, IAmDatabaseHandler* databaseHandler); + CAmRoutingSender(const std::vector<std::string> &listOfPluginDirectories, IAmDatabaseHandler *databaseHandler); ~CAmRoutingSender(); - am_Error_e removeHandle(const am_Handle_s& handle); - am_Error_e addDomainLookup(const am_Domain_s& domainData); - am_Error_e addSourceLookup(const am_Source_s& sourceData); - am_Error_e addSinkLookup(const am_Sink_s& sinkData); - am_Error_e addCrossfaderLookup(const am_Crossfader_s& crossfaderData); + am_Error_e removeHandle(const am_Handle_s &handle); + am_Error_e addDomainLookup(const am_Domain_s &domainData); + am_Error_e addSourceLookup(const am_Source_s &sourceData); + am_Error_e addSinkLookup(const am_Sink_s &sinkData); + am_Error_e addCrossfaderLookup(const am_Crossfader_s &crossfaderData); am_Error_e removeDomainLookup(const am_domainID_t domainID); am_Error_e removeSourceLookup(const am_sourceID_t sourceID); am_Error_e removeSinkLookup(const am_sinkID_t sinkID); am_Error_e removeCrossfaderLookup(const am_crossfaderID_t crossfaderID); am_Error_e removeConnectionLookup(const am_connectionID_t connectionID); - am_Error_e startupInterfaces(CAmRoutingReceiver* iRoutingReceiver); + am_Error_e startupInterfaces(CAmRoutingReceiver *iRoutingReceiver); void setRoutingReady(); void setRoutingRundown(); - am_Error_e asyncAbort(const am_Handle_s& handle); - am_Error_e asyncConnect(am_Handle_s& handle, am_connectionID_t& connectionID, const am_sourceID_t sourceID, const am_sinkID_t sinkID, const am_CustomConnectionFormat_t connectionFormat); - am_Error_e asyncDisconnect(am_Handle_s& handle, const am_connectionID_t connectionID); - am_Error_e asyncSetSinkVolume(am_Handle_s& handle, const am_sinkID_t sinkID, const am_volume_t volume, const am_CustomRampType_t ramp, const am_time_t time); - am_Error_e asyncSetSourceVolume(am_Handle_s& handle, const am_sourceID_t sourceID, const am_volume_t volume, const am_CustomRampType_t ramp, const am_time_t time); - am_Error_e asyncSetSourceState(am_Handle_s& handle, const am_sourceID_t sourceID, const am_SourceState_e state); - am_Error_e asyncSetSinkSoundProperty(am_Handle_s& handle, const am_sinkID_t sinkID, const am_SoundProperty_s& soundProperty); - am_Error_e asyncSetSourceSoundProperties(am_Handle_s& handle, const std::vector<am_SoundProperty_s>& listSoundProperties, const am_sourceID_t sourceID); - am_Error_e asyncSetSinkSoundProperties(am_Handle_s& handle, const std::vector<am_SoundProperty_s>& listSoundProperties, const am_sinkID_t sinkID); - am_Error_e asyncSetSourceSoundProperty(am_Handle_s& handle, const am_sourceID_t sourceID, const am_SoundProperty_s& soundProperty); - am_Error_e asyncCrossFade(am_Handle_s& handle, const am_crossfaderID_t crossfaderID, const am_HotSink_e hotSink, const am_CustomRampType_t rampType, const am_time_t time); + am_Error_e asyncAbort(const am_Handle_s &handle); + am_Error_e asyncConnect(am_Handle_s &handle, am_connectionID_t &connectionID, const am_sourceID_t sourceID, const am_sinkID_t sinkID, const am_CustomConnectionFormat_t connectionFormat); + am_Error_e asyncDisconnect(am_Handle_s &handle, const am_connectionID_t connectionID); + am_Error_e asyncSetSinkVolume(am_Handle_s &handle, const am_sinkID_t sinkID, const am_volume_t volume, const am_CustomRampType_t ramp, const am_time_t time); + am_Error_e asyncSetSourceVolume(am_Handle_s &handle, const am_sourceID_t sourceID, const am_volume_t volume, const am_CustomRampType_t ramp, const am_time_t time); + am_Error_e asyncSetSourceState(am_Handle_s &handle, const am_sourceID_t sourceID, const am_SourceState_e state); + am_Error_e asyncSetSinkSoundProperty(am_Handle_s &handle, const am_sinkID_t sinkID, const am_SoundProperty_s &soundProperty); + am_Error_e asyncSetSourceSoundProperties(am_Handle_s &handle, const std::vector<am_SoundProperty_s> &listSoundProperties, const am_sourceID_t sourceID); + am_Error_e asyncSetSinkSoundProperties(am_Handle_s &handle, const std::vector<am_SoundProperty_s> &listSoundProperties, const am_sinkID_t sinkID); + am_Error_e asyncSetSourceSoundProperty(am_Handle_s &handle, const am_sourceID_t sourceID, const am_SoundProperty_s &soundProperty); + am_Error_e asyncCrossFade(am_Handle_s &handle, const am_crossfaderID_t crossfaderID, const am_HotSink_e hotSink, const am_CustomRampType_t rampType, const am_time_t time); am_Error_e setDomainState(const am_domainID_t domainID, const am_DomainState_e domainState); - am_Error_e getListHandles(std::vector<am_Handle_s> & listHandles) const; - am_Error_e getListPlugins(std::vector<std::string>& interfaces) const; - void getInterfaceVersion(std::string& version) const; - am_Error_e asyncSetVolumes(am_Handle_s& handle, const std::vector<am_Volumes_s>& listVolumes); - am_Error_e asyncSetSinkNotificationConfiguration(am_Handle_s& handle, const am_sinkID_t sinkID, const am_NotificationConfiguration_s& notificationConfiguration); - am_Error_e asyncSetSourceNotificationConfiguration(am_Handle_s& handle, const am_sourceID_t sourceID, const am_NotificationConfiguration_s& notificationConfiguration); - am_Error_e resyncConnectionState(const am_domainID_t domainID, std::vector<am_Connection_s>& listOfExistingConnections); + am_Error_e getListHandles(std::vector<am_Handle_s> &listHandles) const; + am_Error_e getListPlugins(std::vector<std::string> &interfaces) const; + void getInterfaceVersion(std::string &version) const; + am_Error_e asyncSetVolumes(am_Handle_s &handle, const std::vector<am_Volumes_s> &listVolumes); + am_Error_e asyncSetSinkNotificationConfiguration(am_Handle_s &handle, const am_sinkID_t sinkID, const am_NotificationConfiguration_s ¬ificationConfiguration); + am_Error_e asyncSetSourceNotificationConfiguration(am_Handle_s &handle, const am_sourceID_t sourceID, const am_NotificationConfiguration_s ¬ificationConfiguration); + am_Error_e resyncConnectionState(const am_domainID_t domainID, std::vector<am_Connection_s> &listOfExistingConnections); struct InterfaceNamePairs //!< is used to pair interfaces with busnames { - IAmRoutingSend* routingInterface; //!< pointer to the routingInterface - std::string busName; //!< the busname + IAmRoutingSend *routingInterface; //!< pointer to the routingInterface + std::string busName; //!< the busname }; - + class handleDataBase { - public: - handleDataBase(IAmRoutingSend* interface, IAmDatabaseHandler* databaseHandler) : mInterface(interface), mpDatabaseHandler(databaseHandler) {} - virtual ~handleDataBase() {} - virtual am_Error_e writeDataToDatabase()=0; //!< function to write the handle data to the database - IAmRoutingSend* returnInterface() {return mInterface;} - private: - IAmRoutingSend* mInterface; - protected: - IAmDatabaseHandler* mpDatabaseHandler; - }; - - class handleVolumeBase : public handleDataBase - { - public: - handleVolumeBase(IAmRoutingSend* interface, IAmDatabaseHandler* databaseHandler,am_volume_t volume) : - handleDataBase(interface,databaseHandler) - ,mVolume(volume) {} - virtual ~handleVolumeBase(){} - am_volume_t returnVolume() { return mVolume; } - private: - am_volume_t mVolume; - }; - - class handleSinkSoundProperty : public handleDataBase - { - public: - handleSinkSoundProperty(IAmRoutingSend* interface,const am_sinkID_t sinkID, const am_SoundProperty_s& soundProperty, IAmDatabaseHandler* databaseHandler) : - handleDataBase(interface,databaseHandler) - ,mSinkID(sinkID) - ,mSoundProperty(soundProperty) {} - ~handleSinkSoundProperty() {} - am_Error_e writeDataToDatabase(); - private: - am_sinkID_t mSinkID; - am_SoundProperty_s mSoundProperty; - }; - - class handleSinkSoundProperties : public handleDataBase - { - public: - handleSinkSoundProperties(IAmRoutingSend* interface,const am_sinkID_t sinkID, const std::vector<am_SoundProperty_s>& listSoundProperties, IAmDatabaseHandler* databaseHandler) : - handleDataBase(interface,databaseHandler) - ,mSinkID(sinkID) - ,mlistSoundProperties(listSoundProperties) {} - ~handleSinkSoundProperties() {} - am_Error_e writeDataToDatabase(); - private: - am_sinkID_t mSinkID; - std::vector<am_SoundProperty_s> mlistSoundProperties; - }; - - class handleSourceSoundProperty : public handleDataBase - { - public: - handleSourceSoundProperty(IAmRoutingSend* interface,const am_sourceID_t sourceID, const am_SoundProperty_s& soundProperty, IAmDatabaseHandler* databaseHandler) : - handleDataBase(interface,databaseHandler) - ,mSourceID(sourceID) - ,mSoundProperty(soundProperty) {} - ~handleSourceSoundProperty() {} - am_Error_e writeDataToDatabase(); - private: - am_sourceID_t mSourceID; - am_SoundProperty_s mSoundProperty; - }; - - class handleSourceSoundProperties : public handleDataBase - { - public: - handleSourceSoundProperties(IAmRoutingSend* interface,const am_sourceID_t sourceID, const std::vector<am_SoundProperty_s>& listSoundProperties, IAmDatabaseHandler* databaseHandler) : - handleDataBase(interface,databaseHandler) - ,mSourceID(sourceID) - ,mlistSoundProperties(listSoundProperties) {} - ~handleSourceSoundProperties(){} - am_Error_e writeDataToDatabase(); - private: - am_sourceID_t mSourceID; - std::vector<am_SoundProperty_s> mlistSoundProperties; - }; - - class handleSourceState : public handleDataBase - { - public: - handleSourceState(IAmRoutingSend* interface,const am_sourceID_t sourceID, const am_SourceState_e& state, IAmDatabaseHandler* databaseHandler) : - handleDataBase(interface,databaseHandler) - ,mSourceID(sourceID) - ,mSourceState(state) {} - ~handleSourceState() {} - am_Error_e writeDataToDatabase(); - private: - am_sourceID_t mSourceID; - am_SourceState_e mSourceState; - }; - - class handleSourceVolume : public handleVolumeBase - { - public: - handleSourceVolume(IAmRoutingSend* interface, const am_sourceID_t sourceID, IAmDatabaseHandler* databaseHandler,const am_volume_t& volume) : - handleVolumeBase(interface,databaseHandler,volume) - ,mSourceID(sourceID) {} - ~handleSourceVolume() {} - am_Error_e writeDataToDatabase(); - private: - am_sourceID_t mSourceID; - }; - - class handleSinkVolume : public handleVolumeBase - { - public: - handleSinkVolume(IAmRoutingSend* interface, const am_sinkID_t sinkID, IAmDatabaseHandler* databaseHandler,const am_volume_t& volume) : - handleVolumeBase(interface,databaseHandler,volume) - ,mSinkID(sinkID) {} - ~handleSinkVolume() {} - am_Error_e writeDataToDatabase(); - private: - am_sinkID_t mSinkID; - }; - - class handleCrossFader : public handleDataBase - { - public: - handleCrossFader(IAmRoutingSend* interface, const am_crossfaderID_t crossfaderID, const am_HotSink_e& hotSink, IAmDatabaseHandler* databaseHandler) : - handleDataBase(interface,databaseHandler) - ,mCrossfaderID(crossfaderID) - ,mHotSink(hotSink) {} - ~handleCrossFader() {} - am_Error_e writeDataToDatabase(); - private: - am_crossfaderID_t mCrossfaderID; - am_HotSink_e mHotSink; - }; - - class handleConnect : public handleDataBase - { - public: - handleConnect(IAmRoutingSend* interface, const am_connectionID_t connectionID, IAmDatabaseHandler* databaseHandler) : - handleDataBase(interface,databaseHandler) - ,mConnectionID(connectionID) - ,mConnectionPending(true) {} - ~handleConnect(); - am_Error_e writeDataToDatabase(); - private: - am_connectionID_t mConnectionID; - bool mConnectionPending; - }; - - class handleDisconnect : public handleDataBase - { - public: - handleDisconnect(IAmRoutingSend* interface, const am_connectionID_t connectionID, IAmDatabaseHandler* databaseHandler,CAmRoutingSender* routingSender) : - handleDataBase(interface,databaseHandler) - ,mConnectionID(connectionID) - ,mRoutingSender(routingSender){} - ~handleDisconnect(); - am_Error_e writeDataToDatabase(); - private: - am_connectionID_t mConnectionID; - CAmRoutingSender* mRoutingSender; - }; - - class handleSetVolumes : public handleDataBase - { - public: - handleSetVolumes(IAmRoutingSend* interface, const std::vector<am_Volumes_s> listVolumes, IAmDatabaseHandler* databaseHandler) : - handleDataBase(interface,databaseHandler) - ,mlistVolumes(listVolumes) {} - ~handleSetVolumes() {} - am_Error_e writeDataToDatabase(); - private: - std::vector<am_Volumes_s> mlistVolumes; - }; - - class handleSetSinkNotificationConfiguration : public handleDataBase - { - public: - handleSetSinkNotificationConfiguration(IAmRoutingSend* interface, const am_sinkID_t sinkID, const am_NotificationConfiguration_s notificationConfiguration, IAmDatabaseHandler* databaseHandler) : - handleDataBase(interface,databaseHandler) - ,mSinkID(sinkID) - ,mNotificationConfiguration(notificationConfiguration){} - ~handleSetSinkNotificationConfiguration() {} - am_Error_e writeDataToDatabase(); - private: - am_sinkID_t mSinkID; - am_NotificationConfiguration_s mNotificationConfiguration; - }; - - class handleSetSourceNotificationConfiguration : public handleDataBase - { - public: - handleSetSourceNotificationConfiguration(IAmRoutingSend* interface, const am_sourceID_t sourceID, const am_NotificationConfiguration_s notificationConfiguration, IAmDatabaseHandler* databaseHandler) : - handleDataBase(interface,databaseHandler) - ,mSourceID(sourceID) - ,mNotificationConfiguration(notificationConfiguration) {} - ~handleSetSourceNotificationConfiguration() {} - am_Error_e writeDataToDatabase(); - private: - am_sourceID_t mSourceID; - am_NotificationConfiguration_s mNotificationConfiguration; - }; - + public: + handleDataBase(IAmRoutingSend *interface, IAmDatabaseHandler *databaseHandler) + : mInterface(interface) + , mpDatabaseHandler(databaseHandler) {} + virtual ~handleDataBase() {} + virtual am_Error_e writeDataToDatabase() = 0; //!< function to write the handle data to the database + + IAmRoutingSend *returnInterface() {return mInterface;} + private: + IAmRoutingSend *mInterface; + protected: + IAmDatabaseHandler *mpDatabaseHandler; + }; + + class handleVolumeBase : public handleDataBase + { + public: + handleVolumeBase(IAmRoutingSend *interface, IAmDatabaseHandler *databaseHandler, am_volume_t volume) + : handleDataBase(interface, databaseHandler) + , mVolume(volume) {} + virtual ~handleVolumeBase(){} + am_volume_t returnVolume() { return mVolume; } + private: + am_volume_t mVolume; + }; + + class handleSinkSoundProperty : public handleDataBase + { + public: + handleSinkSoundProperty(IAmRoutingSend *interface, const am_sinkID_t sinkID, const am_SoundProperty_s &soundProperty, IAmDatabaseHandler *databaseHandler) + : handleDataBase(interface, databaseHandler) + , mSinkID(sinkID) + , mSoundProperty(soundProperty) {} + ~handleSinkSoundProperty() {} + am_Error_e writeDataToDatabase(); + + private: + am_sinkID_t mSinkID; + am_SoundProperty_s mSoundProperty; + }; + + class handleSinkSoundProperties : public handleDataBase + { + public: + handleSinkSoundProperties(IAmRoutingSend *interface, const am_sinkID_t sinkID, const std::vector<am_SoundProperty_s> &listSoundProperties, IAmDatabaseHandler *databaseHandler) + : handleDataBase(interface, databaseHandler) + , mSinkID(sinkID) + , mlistSoundProperties(listSoundProperties) {} + ~handleSinkSoundProperties() {} + am_Error_e writeDataToDatabase(); + + private: + am_sinkID_t mSinkID; + std::vector<am_SoundProperty_s> mlistSoundProperties; + }; + + class handleSourceSoundProperty : public handleDataBase + { + public: + handleSourceSoundProperty(IAmRoutingSend *interface, const am_sourceID_t sourceID, const am_SoundProperty_s &soundProperty, IAmDatabaseHandler *databaseHandler) + : handleDataBase(interface, databaseHandler) + , mSourceID(sourceID) + , mSoundProperty(soundProperty) {} + ~handleSourceSoundProperty() {} + am_Error_e writeDataToDatabase(); + + private: + am_sourceID_t mSourceID; + am_SoundProperty_s mSoundProperty; + }; + + class handleSourceSoundProperties : public handleDataBase + { + public: + handleSourceSoundProperties(IAmRoutingSend *interface, const am_sourceID_t sourceID, const std::vector<am_SoundProperty_s> &listSoundProperties, IAmDatabaseHandler *databaseHandler) + : handleDataBase(interface, databaseHandler) + , mSourceID(sourceID) + , mlistSoundProperties(listSoundProperties) {} + ~handleSourceSoundProperties(){} + am_Error_e writeDataToDatabase(); + + private: + am_sourceID_t mSourceID; + std::vector<am_SoundProperty_s> mlistSoundProperties; + }; + + class handleSourceState : public handleDataBase + { + public: + handleSourceState(IAmRoutingSend *interface, const am_sourceID_t sourceID, const am_SourceState_e &state, IAmDatabaseHandler *databaseHandler) + : handleDataBase(interface, databaseHandler) + , mSourceID(sourceID) + , mSourceState(state) {} + ~handleSourceState() {} + am_Error_e writeDataToDatabase(); + + private: + am_sourceID_t mSourceID; + am_SourceState_e mSourceState; + }; + + class handleSourceVolume : public handleVolumeBase + { + public: + handleSourceVolume(IAmRoutingSend *interface, const am_sourceID_t sourceID, IAmDatabaseHandler *databaseHandler, const am_volume_t &volume) + : handleVolumeBase(interface, databaseHandler, volume) + , mSourceID(sourceID) {} + ~handleSourceVolume() {} + am_Error_e writeDataToDatabase(); + + private: + am_sourceID_t mSourceID; + }; + + class handleSinkVolume : public handleVolumeBase + { + public: + handleSinkVolume(IAmRoutingSend *interface, const am_sinkID_t sinkID, IAmDatabaseHandler *databaseHandler, const am_volume_t &volume) + : handleVolumeBase(interface, databaseHandler, volume) + , mSinkID(sinkID) {} + ~handleSinkVolume() {} + am_Error_e writeDataToDatabase(); + + private: + am_sinkID_t mSinkID; + }; + + class handleCrossFader : public handleDataBase + { + public: + handleCrossFader(IAmRoutingSend *interface, const am_crossfaderID_t crossfaderID, const am_HotSink_e &hotSink, IAmDatabaseHandler *databaseHandler) + : handleDataBase(interface, databaseHandler) + , mCrossfaderID(crossfaderID) + , mHotSink(hotSink) {} + ~handleCrossFader() {} + am_Error_e writeDataToDatabase(); + + private: + am_crossfaderID_t mCrossfaderID; + am_HotSink_e mHotSink; + }; + + class handleConnect : public handleDataBase + { + public: + handleConnect(IAmRoutingSend *interface, const am_connectionID_t connectionID, IAmDatabaseHandler *databaseHandler) + : handleDataBase(interface, databaseHandler) + , mConnectionID(connectionID) + , mConnectionPending(true) {} + ~handleConnect(); + am_Error_e writeDataToDatabase(); + + private: + am_connectionID_t mConnectionID; + bool mConnectionPending; + }; + + class handleDisconnect : public handleDataBase + { + public: + handleDisconnect(IAmRoutingSend *interface, const am_connectionID_t connectionID, IAmDatabaseHandler *databaseHandler, CAmRoutingSender *routingSender) + : handleDataBase(interface, databaseHandler) + , mConnectionID(connectionID) + , mRoutingSender(routingSender){} + ~handleDisconnect(); + am_Error_e writeDataToDatabase(); + + private: + am_connectionID_t mConnectionID; + CAmRoutingSender *mRoutingSender; + }; + + class handleSetVolumes : public handleDataBase + { + public: + handleSetVolumes(IAmRoutingSend *interface, const std::vector<am_Volumes_s> listVolumes, IAmDatabaseHandler *databaseHandler) + : handleDataBase(interface, databaseHandler) + , mlistVolumes(listVolumes) {} + ~handleSetVolumes() {} + am_Error_e writeDataToDatabase(); + + private: + std::vector<am_Volumes_s> mlistVolumes; + }; + + class handleSetSinkNotificationConfiguration : public handleDataBase + { + public: + handleSetSinkNotificationConfiguration(IAmRoutingSend *interface, const am_sinkID_t sinkID, const am_NotificationConfiguration_s notificationConfiguration, IAmDatabaseHandler *databaseHandler) + : handleDataBase(interface, databaseHandler) + , mSinkID(sinkID) + , mNotificationConfiguration(notificationConfiguration){} + ~handleSetSinkNotificationConfiguration() {} + am_Error_e writeDataToDatabase(); + + private: + am_sinkID_t mSinkID; + am_NotificationConfiguration_s mNotificationConfiguration; + }; + + class handleSetSourceNotificationConfiguration : public handleDataBase + { + public: + handleSetSourceNotificationConfiguration(IAmRoutingSend *interface, const am_sourceID_t sourceID, const am_NotificationConfiguration_s notificationConfiguration, IAmDatabaseHandler *databaseHandler) + : handleDataBase(interface, databaseHandler) + , mSourceID(sourceID) + , mNotificationConfiguration(notificationConfiguration) {} + ~handleSetSourceNotificationConfiguration() {} + am_Error_e writeDataToDatabase(); + + private: + am_sourceID_t mSourceID; + am_NotificationConfiguration_s mNotificationConfiguration; + }; + am_Error_e writeToDatabaseAndRemove(const am_Handle_s handle); //!< write data to Database and remove handle void checkVolume(const am_Handle_s handle, const am_volume_t volume); bool handleExists(const am_Handle_s handle); //!< returns true if the handle exists -#ifdef UNIT_TEST //this is needed to test RoutingSender +#ifdef UNIT_TEST // this is needed to test RoutingSender friend class IAmRoutingBackdoor; #endif private: struct comparator //!< is needed to sort the handles in the map { - bool operator()(const am_Handle_s& a, const am_Handle_s& b) const + bool operator()(const am_Handle_s &a, const am_Handle_s &b) const { - return (a.handle<b.handle || (a.handle==b.handle && a.handleType<b.handleType)); + return (a.handle < b.handle || (a.handle == b.handle && a.handleType < b.handleType)); } + }; - void loadPlugins(const std::vector<std::string>& listOfPluginDirectories); + void loadPlugins(const std::vector<std::string> &listOfPluginDirectories); am_Handle_s createHandle(std::shared_ptr<handleDataBase> handleData, const am_Handle_e type); //!< creates a handle - void unloadLibraries(void); //!< unloads all loaded plugins - - typedef std::map<am_domainID_t, IAmRoutingSend*> DomainInterfaceMap; //!< maps domains to interfaces - typedef std::map<am_sinkID_t, IAmRoutingSend*> SinkInterfaceMap; //!< maps sinks to interfaces - typedef std::map<am_sourceID_t, IAmRoutingSend*> SourceInterfaceMap; //!< maps sources to interfaces - typedef std::map<am_crossfaderID_t, IAmRoutingSend*> CrossfaderInterfaceMap; //!< maps crossfaders to interfaces - typedef std::map<am_connectionID_t, IAmRoutingSend*> ConnectionInterfaceMap; //!< maps connections to interfaces - typedef std::map<am_Handle_s, std::shared_ptr<handleDataBase>, comparator> HandlesMap; //!< maps handleData to handles - - int16_t mHandleCount; //!< is used to create handles - HandlesMap mlistActiveHandles; //!< list of all currently "running" handles. - std::vector<void*> mListLibraryHandles; //!< list of all loaded pluginInterfaces - std::vector<InterfaceNamePairs> mListInterfaces; //!< list of busname/interface relation - CrossfaderInterfaceMap mMapCrossfaderInterface; //!< map of crossfaders to interface - ConnectionInterfaceMap mMapConnectionInterface; //!< map of connection to interfaces - DomainInterfaceMap mMapDomainInterface; //!< map of domains to interfaces - SinkInterfaceMap mMapSinkInterface; //!< map of sinks to interfaces - SourceInterfaceMap mMapSourceInterface; //!< map of sources to interfaces - CAmRoutingReceiver *mpRoutingReceiver; //!< pointer to routing receiver - IAmDatabaseHandler* mpDatabaseHandler; //!< pointer to the databaseHandler + void unloadLibraries(void); //!< unloads all loaded plugins + + typedef std::map<am_domainID_t, IAmRoutingSend *> DomainInterfaceMap; //!< maps domains to interfaces + typedef std::map<am_sinkID_t, IAmRoutingSend *> SinkInterfaceMap; //!< maps sinks to interfaces + typedef std::map<am_sourceID_t, IAmRoutingSend *> SourceInterfaceMap; //!< maps sources to interfaces + typedef std::map<am_crossfaderID_t, IAmRoutingSend *> CrossfaderInterfaceMap; //!< maps crossfaders to interfaces + typedef std::map<am_connectionID_t, IAmRoutingSend *> ConnectionInterfaceMap; //!< maps connections to interfaces + typedef std::map<am_Handle_s, std::shared_ptr<handleDataBase>, comparator> HandlesMap; //!< maps handleData to handles + + int16_t mHandleCount; //!< is used to create handles + HandlesMap mlistActiveHandles; //!< list of all currently "running" handles. + std::vector<void *> mListLibraryHandles; //!< list of all loaded pluginInterfaces + std::vector<InterfaceNamePairs> mListInterfaces; //!< list of busname/interface relation + CrossfaderInterfaceMap mMapCrossfaderInterface; //!< map of crossfaders to interface + ConnectionInterfaceMap mMapConnectionInterface; //!< map of connection to interfaces + DomainInterfaceMap mMapDomainInterface; //!< map of domains to interfaces + SinkInterfaceMap mMapSinkInterface; //!< map of sinks to interfaces + SourceInterfaceMap mMapSourceInterface; //!< map of sources to interfaces + CAmRoutingReceiver *mpRoutingReceiver; //!< pointer to routing receiver + IAmDatabaseHandler *mpDatabaseHandler; //!< pointer to the databaseHandler }; } |