Alexa Auto SDK  2.0.0
AlexaConfiguration.h
1 /*
2  * Copyright 2017-2019 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 AACE_ALEXA_ALEXA_CONFIGURATION_H
17 #define AACE_ALEXA_ALEXA_CONFIGURATION_H
18 
19 #include <fstream>
20 #include <iostream>
21 #include <string>
22 #include <vector>
23 #include <sstream>
24 #include <memory>
25 #include <chrono>
26 
27 #include "AACE/Core/EngineConfiguration.h"
28 #include "AlexaEngineInterfaces.h"
29 
32 namespace aace {
33 namespace alexa {
34 namespace config {
35 
40 public:
41 
62  static std::shared_ptr<aace::core::config::EngineConfiguration> createDeviceInfoConfig( const std::string& deviceSerialNumber, const std::string& clientId, const std::string& productId );
63 
81  static std::shared_ptr<aace::core::config::EngineConfiguration> createAlertsConfig( const std::string& databaseFilePath );
82 
100  static std::shared_ptr<aace::core::config::EngineConfiguration> createNotificationsConfig( const std::string& databaseFilePath );
101 
119  static std::shared_ptr<aace::core::config::EngineConfiguration> createCertifiedSenderConfig( const std::string& databaseFilePath );
120 
144  static std::shared_ptr<aace::core::config::EngineConfiguration> createCurlConfig( const std::string &certsPath, const std::string &iface = "" );
145 
166  static std::shared_ptr<aace::core::config::EngineConfiguration> createSettingsConfig( const std::string& databaseFilePath, const std::string& locale = "en-US" );
167 
185  static std::shared_ptr<aace::core::config::EngineConfiguration> createMiscStorageConfig( const std::string& databaseFilePath );
186 
204  static std::shared_ptr<aace::core::config::EngineConfiguration> createSystemConfig( uint32_t firmwareVersion );
205 
225  static std::shared_ptr<aace::core::config::EngineConfiguration> createSpeechRecognizerConfig( const std::string& encoderName );
226 
235 
240 
245 
246  };
247 
251  using TemplateRuntimeTimeout = std::pair<TemplateRuntimeTimeoutType, std::chrono::milliseconds>;
252 
275  static std::shared_ptr<aace::core::config::EngineConfiguration> createTemplateRuntimeTimeoutConfig( const std::vector<TemplateRuntimeTimeout>& timeoutList );
276 
294  static std::shared_ptr<aace::core::config::EngineConfiguration> createExternalMediaPlayerConfig( const std::string& agent );
295 
302 
310 
368  static std::shared_ptr<aace::core::config::EngineConfiguration> createEqualizerControllerConfig(
369  const std::vector<EqualizerBand>& supportedBands = {},
370  int minLevel = -6,
371  int maxLevel = 6,
372  const std::vector<EqualizerBandLevel>& defaultBandLevels = {} );
373 };
374 
375 } // aace::alexa::config
376 } // aace::alexa
377 } // aace
378 
379 #endif // AACE_ALEXA_ALEXA_CONFIGURATION_H
std::pair< EqualizerBand, int > EqualizerBandLevel
Definition: AlexaEngineInterfaces.h:439
Definition: AlexaConfiguration.h:39
TemplateRuntimeTimeoutType
Definition: AlexaConfiguration.h:230
static std::shared_ptr< aace::core::config::EngineConfiguration > createMiscStorageConfig(const std::string &databaseFilePath)
aace::alexa::EqualizerControllerEngineInterface::EqualizerBandLevel EqualizerBandLevel
Definition: AlexaConfiguration.h:309
Definition: AddressBook.h:26
static std::shared_ptr< aace::core::config::EngineConfiguration > createExternalMediaPlayerConfig(const std::string &agent)
static std::shared_ptr< aace::core::config::EngineConfiguration > createAlertsConfig(const std::string &databaseFilePath)
std::pair< TemplateRuntimeTimeoutType, std::chrono::milliseconds > TemplateRuntimeTimeout
Definition: AlexaConfiguration.h:251
static std::shared_ptr< aace::core::config::EngineConfiguration > createSystemConfig(uint32_t firmwareVersion)
static std::shared_ptr< aace::core::config::EngineConfiguration > createTemplateRuntimeTimeoutConfig(const std::vector< TemplateRuntimeTimeout > &timeoutList)
static std::shared_ptr< aace::core::config::EngineConfiguration > createSpeechRecognizerConfig(const std::string &encoderName)
static std::shared_ptr< aace::core::config::EngineConfiguration > createDeviceInfoConfig(const std::string &deviceSerialNumber, const std::string &clientId, const std::string &productId)
static std::shared_ptr< aace::core::config::EngineConfiguration > createEqualizerControllerConfig(const std::vector< EqualizerBand > &supportedBands={}, int minLevel=-6, int maxLevel=6, const std::vector< EqualizerBandLevel > &defaultBandLevels={})
static std::shared_ptr< aace::core::config::EngineConfiguration > createCertifiedSenderConfig(const std::string &databaseFilePath)
static std::shared_ptr< aace::core::config::EngineConfiguration > createSettingsConfig(const std::string &databaseFilePath, const std::string &locale="en-US")
static std::shared_ptr< aace::core::config::EngineConfiguration > createCurlConfig(const std::string &certsPath, const std::string &iface="")
EqualizerBand
Definition: AlexaEngineInterfaces.h:426
static std::shared_ptr< aace::core::config::EngineConfiguration > createNotificationsConfig(const std::string &databaseFilePath)

Alexa Auto SDK 2.0.0 - Copyright 2017-2019 Amazon.com, Inc. or its affiliates. All Rights Reserved. Licensed under the Apache License, Version 2.0