From af0ba5b505b361679c07899187b7043d867742c3 Mon Sep 17 00:00:00 2001 From: christian mueller Date: Tue, 24 Jan 2012 17:07:25 +0100 Subject: * finalized Router implementation * added new generated ControlSendInterface with router support --- AudioManagerDaemon/include/Router.h | 65 +++++++++++++++++++------------------ 1 file changed, 34 insertions(+), 31 deletions(-) (limited to 'AudioManagerDaemon/include') diff --git a/AudioManagerDaemon/include/Router.h b/AudioManagerDaemon/include/Router.h index 7635522..8fb859b 100644 --- a/AudioManagerDaemon/include/Router.h +++ b/AudioManagerDaemon/include/Router.h @@ -27,51 +27,54 @@ #include -namespace am { +namespace am +{ class DatabaseHandler; -class Router { +class Router +{ public: - Router(DatabaseHandler* iDatabaseHandler); - am_Error_e getRoute(const bool onlyfree, const am_sourceID_t sourceID, const am_sinkID_t sinkID, std::vector& returnList); - virtual ~Router(); + Router(DatabaseHandler* iDatabaseHandler); + am_Error_e getRoute(const bool onlyfree, const am_sourceID_t sourceID, const am_sinkID_t sinkID, std::vector& returnList); + virtual ~Router(); private: - am_Error_e findBestWay(std::vector& listRoute,std::vector::iterator routeIterator,std::vector::iterator gatewayIterator,int choiceNumber); - void listPossibleConnectionFormats(const am_sourceID_t sourceID,const am_sinkID_t sinkID,std::vector& listFormats) const; - void listRestrictedOutputFormatsGateways(const am_gatewayID_t gatewayID, const am_ConnectionFormat_e sinkConnectionFormat, std::vector& listFormats) const; - DatabaseHandler* mDatabaseHandler; + am_Error_e findBestWay(std::vector& listRoute, std::vector::iterator routeIterator, std::vector::iterator gatewayIterator, int choiceNumber); + void listPossibleConnectionFormats(const am_sourceID_t sourceID, const am_sinkID_t sinkID, std::vector& listFormats) const; + void listRestrictedOutputFormatsGateways(const am_gatewayID_t gatewayID, const am_ConnectionFormat_e sinkConnectionFormat, std::vector& listFormats) const; + DatabaseHandler* mDatabaseHandler; }; -class RoutingTreeItem { +class RoutingTreeItem +{ public: - RoutingTreeItem(const am_domainID_t domainID, const am_gatewayID_t gatewayID = 0, RoutingTreeItem *parent = 0); - void appendChild(RoutingTreeItem *newChild); - void returnChildItems(std::vector listChildItems); - am_domainID_t returnDomainID() const; - am_gatewayID_t returnGatewayID() const; - virtual ~RoutingTreeItem(); - RoutingTreeItem* returnParent() const; + RoutingTreeItem(const am_domainID_t domainID, const am_gatewayID_t gatewayID = 0, RoutingTreeItem *parent = 0); + void appendChild(RoutingTreeItem *newChild); + void returnChildItems(std::vector listChildItems); + am_domainID_t returnDomainID() const; + am_gatewayID_t returnGatewayID() const; + virtual ~RoutingTreeItem(); + RoutingTreeItem* returnParent() const; private: - std::vector mListChildItems; //!< List of all child items - am_domainID_t mDomainID; //!< the domain ID of the item - am_gatewayID_t mGatewayID; //!< the gateway Id - RoutingTreeItem *mParentItem; //!< pointer to the parent item + std::vector mListChildItems; //!< List of all child items + am_domainID_t mDomainID; //!< the domain ID of the item + am_gatewayID_t mGatewayID; //!< the gateway Id + RoutingTreeItem *mParentItem; //!< pointer to the parent item }; - -class RoutingTree { +class RoutingTree +{ public: - RoutingTree(const am_domainID_t rootDomainID); - RoutingTreeItem* insertItem(const am_domainID_t domainID, const am_gatewayID_t gatewayID, RoutingTreeItem *parent); - void getRoute(RoutingTreeItem* targetItem, std::vector* listGateways); - am_domainID_t returnRootDomainID() const; - RoutingTreeItem* returnRootItem(); - virtual ~RoutingTree(); + RoutingTree(const am_domainID_t rootDomainID); + RoutingTreeItem* insertItem(const am_domainID_t domainID, const am_gatewayID_t gatewayID, RoutingTreeItem *parent); + void getRoute(RoutingTreeItem* targetItem, std::vector* listGateways); + am_domainID_t returnRootDomainID() const; + RoutingTreeItem* returnRootItem(); + virtual ~RoutingTree(); private: - RoutingTreeItem mRootItem; //!< pointer to root item - std::vector mListChild; //!< list of all childs + RoutingTreeItem mRootItem; //!< pointer to root item + std::vector mListChild; //!< list of all childs }; } /* namespace am */ -- cgit v1.2.1