diff options
author | Aleksander Donchev <aleksander.donchev@partner.bmw.de> | 2013-07-10 14:05:44 +0200 |
---|---|---|
committer | Aleksander Donchev <aleksander.donchev@partner.bmw.de> | 2013-07-10 14:59:18 +0200 |
commit | 7b4ad13452dac45128209d54ebc2e1e83ecd5beb (patch) | |
tree | d487e0da36ff4b79887e1996591806bbe43d3708 /AudioManagerDaemon/include/CAmDatabaseHandlerSQLite.h | |
parent | 9dfa70416411055a86a9fd7eba828c65bea48325 (diff) | |
download | audiomanager-7b4ad13452dac45128209d54ebc2e1e83ecd5beb.tar.gz |
Created an abstract interface for the database handlers.
Renamed CAmDatabaseHandler to CAmDatabaseHandlerSQLite and CAmMapHandler to CAmDatabaseHandlerMap.
Changed std::map to std::unordered_map.
Added to the cmake configuration a definition, which defines the capacity of the source and sink maps.
Signed-off-by: Christian Linke <christian.linke@bmw.de>
Diffstat (limited to 'AudioManagerDaemon/include/CAmDatabaseHandlerSQLite.h')
-rw-r--r-- | AudioManagerDaemon/include/CAmDatabaseHandlerSQLite.h | 27 |
1 files changed, 18 insertions, 9 deletions
diff --git a/AudioManagerDaemon/include/CAmDatabaseHandlerSQLite.h b/AudioManagerDaemon/include/CAmDatabaseHandlerSQLite.h index 1adc4d6..dc845fd 100644 --- a/AudioManagerDaemon/include/CAmDatabaseHandlerSQLite.h +++ b/AudioManagerDaemon/include/CAmDatabaseHandlerSQLite.h @@ -14,7 +14,7 @@ * * \author Christian Mueller, christian.ei.mueller@bmw.de BMW 2011,2012 * - * \file CAmDatabaseHandler.h + * \file CAmDatabaseHandlerSQLite.h * For further information see http://www.genivi.org/. * */ @@ -22,7 +22,7 @@ #ifndef DATABASEHANDLER_H_ #define DATABASEHANDLER_H_ -#include "CAmDatabaseHandlerInterface.h" +#include "IAmDatabaseHandler.h" #include <map> #include <sqlite3.h> @@ -44,20 +44,28 @@ class CAmRoutingTreeItem; /** * This class handles and abstracts the database */ -class CAmDatabaseHandler : public CAmDatabaseHandlerInterface +class CAmDatabaseHandlerSQLite : public IAmDatabaseHandler { private: am_timeSync_t calculateMainConnectionDelay(const am_mainConnectionID_t mainConnectionID) const; //!< calculates a new main connection delay + + CAmDatabaseObserver *mpDatabaseObserver; //!< pointer to the Observer + bool mFirstStaticSink; //!< bool for dynamic range handling + bool mFirstStaticSource; //!< bool for dynamic range handling + bool mFirstStaticGateway; //!< bool for dynamic range handling + bool mFirstStaticSinkClass; //!< bool for dynamic range handling + bool mFirstStaticSourceClass; //!< bool for dynamic range handling + bool mFirstStaticCrossfader; //!< bool for dynamic range handling + ListConnectionFormat mListConnectionFormat; //!< list of connection formats + sqlite3 *mpDatabase; //!< pointer to the database + std::string mPath; //!< path to the database bool sqQuery(const std::string& query); //!< queries the database bool openDatabase(); //!< opens the database void createTables(); //!< creates all tables from the static table - sqlite3 *mpDatabase; //!< pointer to the database - std::string mPath; //!< path to the database - public: - CAmDatabaseHandler(); - CAmDatabaseHandler(std::string databasePath); - ~CAmDatabaseHandler(); + CAmDatabaseHandlerSQLite(); + CAmDatabaseHandlerSQLite(std::string databasePath); + virtual ~CAmDatabaseHandlerSQLite(); am_Error_e enterDomainDB(const am_Domain_s& domainData, am_domainID_t& domainID); am_Error_e enterMainConnectionDB(const am_MainConnection_s& mainConnectionData, am_mainConnectionID_t& connectionID); am_Error_e enterSinkDB(const am_Sink_s& sinkData, am_sinkID_t& sinkID); @@ -169,6 +177,7 @@ public: void registerObserver(CAmDatabaseObserver *iObserver); bool sourceVisible(const am_sourceID_t sourceID) const; bool sinkVisible(const am_sinkID_t sinkID) const; + void dump( std::ostream & output) { output << __FUNCTION__ << " not implemented!"; }; }; } |