From 9eb3a90df3681586b58146b47eea7f3848c348a0 Mon Sep 17 00:00:00 2001 From: Naveen Bobbili Date: Mon, 25 Feb 2019 17:24:29 -0800 Subject: Refactored VSHL into vshl-core and vshl-capabilities. vshl-core: This API is responsible for request arbitration. Verbs exposed are 1. startListening 2. cancelListening 3. subscribe 4. enumerateVoiceAgents 5. setDefaultVoiceAgent Used by applications to subscribe to dialog, connection and auth states of underlying low level voiceagent bindings. Used by applications to trigger voice recognition routine of the underlying low level voiceagent binding. vshl-capabilities: This API exposes publish and subscribe methods for all the speech framework domains/capabilities. For eg. navigation, phonecontrol etc. This API is used by apps and low level voice agent binding to subscribe and publish these capability messages whenever applicable. The code for this is agl-service-voice-high-capabilities repository. This specific commit is for vshl-core API. Change-Id: I1101db19b57ee918482a178843641b088508ac5d Signed-off-by: Naveen Bobbili --- src/plugins/voiceagents/VoiceAgentsDataManager.h | 32 +++++++++++++----------- 1 file changed, 18 insertions(+), 14 deletions(-) (limited to 'src/plugins/voiceagents/VoiceAgentsDataManager.h') diff --git a/src/plugins/voiceagents/VoiceAgentsDataManager.h b/src/plugins/voiceagents/VoiceAgentsDataManager.h index a4c9143..a91d7eb 100644 --- a/src/plugins/voiceagents/VoiceAgentsDataManager.h +++ b/src/plugins/voiceagents/VoiceAgentsDataManager.h @@ -27,8 +27,7 @@ #include "interfaces/voiceagents/IVoiceAgentsChangeObserver.h" #include "voiceagents/include/VoiceAgent.h" #include "voiceagents/include/VoiceAgentEventsHandler.h" - -namespace vshl { +namespace vshlcore { namespace voiceagents { /* * This class implements the data model for voiceagents. @@ -39,8 +38,8 @@ class VoiceAgentsDataManager { public: // Create a VoiceAgentsDataManager. static std::unique_ptr create( - shared_ptr logger, - shared_ptr afbApi); + shared_ptr logger, + shared_ptr afbApi); /** * Activates the list of voiceagents. @@ -84,22 +83,22 @@ public: bool removeVoiceAgent(const string& voiceAgentId); // Returns the set of all voice agents in @c VoiceAgentsDataManger cache - std::set> getAllVoiceAgents(); + std::set> getAllVoiceAgents(); // Returns the event filter that belongs to the core module. - shared_ptr getEventFilter() const; + shared_ptr getEventFilter() const; // Subscribe to an event coming from the voiceagent. bool subscribeToVshlEventFromVoiceAgent( - vshl::common::interfaces::IAFBRequest& request, + vshlcore::common::interfaces::IAFBRequest& request, const string eventName, const string voiceagentId); // Adds a new voiceagent change observer. - bool addVoiceAgentsChangeObserver(shared_ptr observer); + bool addVoiceAgentsChangeObserver(shared_ptr observer); // Removes the voiceagent change observer from the list. - bool removeVoiceAgentsChangeObserver(shared_ptr observer); + bool removeVoiceAgentsChangeObserver(shared_ptr observer); // Destructor ~VoiceAgentsDataManager(); @@ -107,14 +106,17 @@ public: private: // Constructor VoiceAgentsDataManager( - shared_ptr logger, - shared_ptr afbApi); + shared_ptr logger, + shared_ptr afbApi); + + // Sets the voiceagent ID + bool sendVoiceAgentIdToVA(const shared_ptr& voiceAgent); // Binding API reference - shared_ptr mAfbApi; + shared_ptr mAfbApi; // A list of all the voiceagent change observers - unordered_set> mVoiceAgentChangeObservers; + unordered_set> mVoiceAgentChangeObservers; // A map of voiceagents grouped by ID unordered_map> mVoiceAgents; @@ -126,7 +128,9 @@ private: string mDefaultVoiceAgentId; // Logger - shared_ptr mLogger; + shared_ptr mLogger; + + bool mAlreadyPeformedSubscriptions; }; } // namespace voiceagents -- cgit 1.2.3-korg