AlexaClientSDK  1.23.0
A cross-platform, modular SDK for interacting with the Alexa Voice Service
LocaleAssetsManagerInterface.h
Go to the documentation of this file.
1 /*
2  * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License").
5  * You may not use this file except in compliance with the License.
6  * A copy of the License is located at
7  *
8  * http://aws.amazon.com/apache2.0/
9  *
10  * or in the "license" file accompanying this file. This file is distributed
11  * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
12  * express or implied. See the License for the specific language governing
13  * permissions and limitations under the License.
14  */
15 
16 #ifndef ALEXA_CLIENT_SDK_AVSCOMMON_SDKINTERFACES_INCLUDE_AVSCOMMON_SDKINTERFACES_LOCALEASSETSMANAGERINTERFACE_H_
17 #define ALEXA_CLIENT_SDK_AVSCOMMON_SDKINTERFACES_INCLUDE_AVSCOMMON_SDKINTERFACES_LOCALEASSETSMANAGERINTERFACE_H_
18 
19 #include <map>
20 #include <set>
21 #include <string>
22 #include <vector>
23 
27 
28 namespace alexaClientSDK {
29 namespace avsCommon {
30 namespace sdkInterfaces {
31 
41 public:
46  using Locale = std::string;
47 
52  using LanguageTag = std::string;
53 
57  using WakeWords = std::set<std::string>;
58 
62  using WakeWordsSets = std::set<WakeWords>;
63 
68  using Locales = std::vector<Locale>;
69 
73  using LocaleCombinations = std::set<Locales>;
74 
82  virtual bool changeAssets(const Locales& locales, const WakeWords& wakeWords) = 0;
83 
90  virtual void cancelOngoingChange() = 0;
91 
97  virtual std::set<Locale> getSupportedLocales() const = 0;
98 
108 
114  virtual Locale getDefaultLocale() const = 0;
115 
123  virtual WakeWordsSets getDefaultSupportedWakeWords() const = 0;
124 
132  virtual std::map<LanguageTag, WakeWordsSets> getLanguageSpecificWakeWords() const = 0;
133 
141  virtual std::map<Locale, WakeWordsSets> getLocaleSpecificWakeWords() const = 0;
142 
149  virtual WakeWordsSets getSupportedWakeWords(const Locale& locale) const = 0;
150 
156  virtual void addLocaleAssetsObserver(const std::shared_ptr<LocaleAssetsObserverInterface>& observer) = 0;
157 
163  virtual void removeLocaleAssetsObserver(const std::shared_ptr<LocaleAssetsObserverInterface>& observer) = 0;
164 
170  virtual void setEndpointRegistrationManager(
171  const std::shared_ptr<endpoints::EndpointRegistrationManagerInterface>& manager) = 0;
172 
176  virtual ~LocaleAssetsManagerInterface() = default;
177 };
178 
179 } // namespace sdkInterfaces
180 } // namespace avsCommon
181 } // namespace alexaClientSDK
182 
183 #endif // ALEXA_CLIENT_SDK_AVSCOMMON_SDKINTERFACES_INCLUDE_AVSCOMMON_SDKINTERFACES_LOCALEASSETSMANAGERINTERFACE_H_
virtual bool changeAssets(const Locales &locales, const WakeWords &wakeWords)=0
Definition: CapabilityConfigurationChangeObserverInterface.h:30
virtual void setEndpointRegistrationManager(const std::shared_ptr< endpoints::EndpointRegistrationManagerInterface > &manager)=0
std::set< Locales > LocaleCombinations
Definition: LocaleAssetsManagerInterface.h:73
std::string LanguageTag
Definition: LocaleAssetsManagerInterface.h:52
std::set< std::string > WakeWords
Definition: LocaleAssetsManagerInterface.h:57
std::vector< Locale > Locales
Definition: LocaleAssetsManagerInterface.h:68
virtual void addLocaleAssetsObserver(const std::shared_ptr< LocaleAssetsObserverInterface > &observer)=0
virtual LocaleCombinations getSupportedLocaleCombinations() const =0
virtual std::map< Locale, WakeWordsSets > getLocaleSpecificWakeWords() const =0
std::string Locale
Definition: LocaleAssetsManagerInterface.h:46
virtual std::map< LanguageTag, WakeWordsSets > getLanguageSpecificWakeWords() const =0
Whether or not curl logs should be emitted.
Definition: AVSConnectionManager.h:36
std::set< WakeWords > WakeWordsSets
Definition: LocaleAssetsManagerInterface.h:62
virtual void removeLocaleAssetsObserver(const std::shared_ptr< LocaleAssetsObserverInterface > &observer)=0
virtual WakeWordsSets getSupportedWakeWords(const Locale &locale) const =0

AlexaClientSDK 1.23.0 - Copyright 2016-2021 Amazon.com, Inc. or its affiliates. All Rights Reserved. Licensed under the Apache License, Version 2.0