Implements autorouting algorithm for connecting sinks and sources via different audio domains.
More...
|
| CAmRouter (IAmDatabaseHandler *iDatabaseHandler, CAmControlSender *iSender) |
|
| ~CAmRouter () |
|
unsigned | getMaxAllowedCycles () |
|
void | setMaxAllowedCycles (unsigned count) |
|
unsigned | getMaxPathCount () |
|
void | setMaxPathCount (unsigned count) |
|
bool | getUpdateGraphNodesAction () |
|
am_Error_e | getRoute (const bool onlyfree, const am_sourceID_t sourceID, const am_sinkID_t sinkID, std::vector< am_Route_s > &returnList) |
| Find first mMaxPathCount paths between given source and sink. More...
|
|
am_Error_e | getRoute (const bool onlyfree, const am_Source_s &source, const am_Sink_s &sink, std::vector< am_Route_s > &listRoutes) |
|
am_Error_e | getRouteFromLoadedNodes (const bool onlyfree, const am_sourceID_t sourceID, const am_sinkID_t sinkID, std::vector< am_Route_s > &returnList) |
| Find first mMaxPathCount paths between given source and sink after the nodes have been loaded. More...
|
|
am_Error_e | getRouteFromLoadedNodes (const bool onlyfree, const am_Source_s &aSource, const am_Sink_s &aSink, std::vector< am_Route_s > &listRoutes) |
|
am_Error_e | getFirstNShortestPaths (const bool onlyfree, const unsigned cycles, const unsigned maxPathCount, CAmRoutingNode &source, CAmRoutingNode &sink, std::vector< am_Route_s > &resultPath) |
| Find first mMaxPathCount paths between given source and sink. More...
|
|
am_Error_e | getShortestPath (CAmRoutingNode &source, CAmRoutingNode &sink, std::vector< am_Route_s > &resultPath) |
| Find the shortest path between given source and sink. More...
|
|
bool | shouldGoInDomain (const std::vector< am_domainID_t > &visitedDomains, const am_domainID_t nodeDomainID) |
|
CAmRoutingNode * | sinkNodeWithID (const am_sinkID_t sinkID) |
| Returns a sink node with given sinkID. More...
|
|
CAmRoutingNode * | sinkNodeWithID (const am_sinkID_t sinkID, const am_domainID_t domainID) |
|
CAmRoutingNode * | sourceNodeWithID (const am_sourceID_t sourceID) |
| Returns a source node with given sourceID. More...
|
|
CAmRoutingNode * | sourceNodeWithID (const am_sourceID_t sourceID, const am_domainID_t domainID) |
|
CAmRoutingNode * | converterNodeWithSinkID (const am_sinkID_t sinkID, const am_domainID_t domainID) |
| Returns a converter node for given sinkID. More...
|
|
CAmRoutingNode * | gatewayNodeWithSinkID (const am_sinkID_t sinkID) |
| Returns a gateway node for given sinkID. More...
|
|
void | load () |
|
void | clear () |
|
am_Error_e | getAllPaths (CAmRoutingNode &aSource, CAmRoutingNode &aSink, std::vector< am_Route_s > &resultPath, std::vector< std::vector< CAmRoutingNode * >> &resultNodesPath, const bool includeCycles=false, const bool onlyFree=false) __attribute__((deprecated("You should use am_Error_e getFirstNShortestPaths( const bool onlyFree |
| DEPRECATED! More...
|
|
Public Member Functions inherited from am::CAmDatabaseHandlerMap::AmDatabaseObserverCallbacks |
| AmDatabaseObserverCallbacks () |
|
virtual | ~AmDatabaseObserverCallbacks () |
|
|
static bool | getAllowedFormatsFromConvMatrix (const std::vector< bool > &convertionMatrix, const std::vector< am_CustomConnectionFormat_t > &listSourceFormats, const std::vector< am_CustomConnectionFormat_t > &listSinkFormats, std::vector< am_CustomConnectionFormat_t > &sourceFormats, std::vector< am_CustomConnectionFormat_t > &sinkFormats) |
|
static void | listPossibleConnectionFormats (std::vector< am_CustomConnectionFormat_t > &inListSourceFormats, std::vector< am_CustomConnectionFormat_t > &inListSinkFormats, std::vector< am_CustomConnectionFormat_t > &outListFormats) |
|
static bool | getRestrictedOutputFormats (const std::vector< bool > &convertionMatrix, const std::vector< am_CustomConnectionFormat_t > &listSourceFormats, const std::vector< am_CustomConnectionFormat_t > &listSinkFormats, const am_CustomConnectionFormat_t connectionFormat, std::vector< am_CustomConnectionFormat_t > &listFormats) |
|
static am_Error_e | getSourceSinkPossibleConnectionFormats (std::vector< CAmRoutingNode * >::iterator iteratorSource, std::vector< CAmRoutingNode * >::iterator iteratorSink, std::vector< am_CustomConnectionFormat_t > &outConnectionFormats) |
|
static bool | shouldGoInDomain (const std::vector< am_domainID_t > &visitedDomains, const am_domainID_t nodeDomainID, const unsigned maxCyclesNumber) |
|
|
Protected Attributes inherited from am::CAmDatabaseHandlerMap::AmDatabaseObserverCallbacks |
std::function< void()> | dboNumberOfSinkClassesChanged |
|
std::function< void()> | dboNumberOfSourceClassesChanged |
|
std::function< void(const am_Sink_s &)> | dboNewSink |
|
std::function< void(const am_Source_s &)> | dboNewSource |
|
std::function< void(const am_Domain_s &)> | dboNewDomain |
|
std::function< void(const am_Gateway_s &)> | dboNewGateway |
|
std::function< void(const am_Converter_s &)> | dboNewConverter |
|
std::function< void(const am_Crossfader_s &)> | dboNewCrossfader |
|
std::function< void(const am_MainConnectionType_s &)> | dboNewMainConnection |
|
std::function< void(const am_mainConnectionID_t)> | dboRemovedMainConnection |
|
std::function< void(const am_sinkID_t, const bool)> | dboRemovedSink |
|
std::function< void(const am_sourceID_t, const bool)> | dboRemovedSource |
|
std::function< void(const am_domainID_t)> | dboRemoveDomain |
|
std::function< void(const am_gatewayID_t)> | dboRemoveGateway |
|
std::function< void(const am_converterID_t)> | dboRemoveConverter |
|
std::function< void(const am_crossfaderID_t)> | dboRemoveCrossfader |
|
std::function< void(const am_mainConnectionID_t, const am_ConnectionState_e)> | dboMainConnectionStateChanged |
|
std::function< void(const am_sinkID_t, const am_MainSoundProperty_s &)> | dboMainSinkSoundPropertyChanged |
|
std::function< void(const am_sourceID_t, const am_MainSoundProperty_s &)> | dboMainSourceSoundPropertyChanged |
|
std::function< void(const am_sinkID_t, const am_Availability_s &)> | dboSinkAvailabilityChanged |
|
std::function< void(const am_sourceID_t, const am_Availability_s &)> | dboSourceAvailabilityChanged |
|
std::function< void(const am_sinkID_t, const am_mainVolume_t)> | dboVolumeChanged |
|
std::function< void(const am_sinkID_t, const am_MuteState_e)> | dboSinkMuteStateChanged |
|
std::function< void(const am_SystemProperty_s &)> | dboSystemPropertyChanged |
|
std::function< void(const am_mainConnectionID_t, const am_timeSync_t)> | dboTimingInformationChanged |
|
std::function< void(const am_sinkID_t, const am_sinkClass_t, const std::vector< am_MainSoundProperty_s > &, const bool)> | dboSinkUpdated |
|
std::function< void(const am_sourceID_t, const am_sourceClass_t, const std::vector< am_MainSoundProperty_s > &, const bool)> | dboSourceUpdated |
|
std::function< void(const am_sinkID_t, const am_NotificationConfiguration_s)> | dboSinkMainNotificationConfigurationChanged |
|
std::function< void(const am_sourceID_t, const am_NotificationConfiguration_s)> | dboSourceMainNotificationConfigurationChanged |
|
CAmDatabaseHandlerMap * | mpDatabaseHandler |
|
Implements autorouting algorithm for connecting sinks and sources via different audio domains.
Definition at line 159 of file CAmRouter.h.