AlexaClientSDK  3.0.0
A cross-platform, modular SDK for interacting with the Alexa Voice Service
AlexaLauncherInterface.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 ACSDKALEXALAUNCHERINTERFACES_ALEXALAUNCHERINTERFACE_H_
17 #define ACSDKALEXALAUNCHERINTERFACES_ALEXALAUNCHERINTERFACE_H_
18 
19 #include <string>
20 #include <memory>
21 
24 
25 namespace alexaClientSDK {
26 namespace acsdkAlexaLauncherInterfaces {
27 
41 public:
45  struct Response {
49  enum class Type {
51  SUCCESS,
52 
55 
58 
61 
65 
68 
72  };
73 
76  }
77 
84  Response(Type responseType, std::string message) : type(responseType), errorMessage(std::move(message)) {
85  }
86 
89 
92  };
93 
97  virtual ~AlexaLauncherInterface() = default;
98 
108  virtual Response launchTarget(const acsdkAlexaLauncherInterfaces::TargetState& targetState) = 0;
109 
121 
132  virtual bool addObserver(const std::weak_ptr<AlexaLauncherObserverInterface>& observer) = 0;
133 
139  virtual void removeObserver(const std::weak_ptr<AlexaLauncherObserverInterface>& observer) = 0;
140 };
141 
142 } // namespace acsdkAlexaLauncherInterfaces
143 } // namespace alexaClientSDK
144 
145 #endif // ACSDKALEXALAUNCHERINTERFACES_ALEXALAUNCHERINTERFACE_H_
virtual void removeObserver(const std::weak_ptr< AlexaLauncherObserverInterface > &observer)=0
::std::string string
Definition: gtest-port.h:1097
Definition: CapabilityConfiguration.h:190
Indicates an additional confirmation must occur before the requested action can be completed...
Response()
Default Constructor.
Definition: AlexaLauncherInterface.h:75
Response(Type responseType, std::string message)
Definition: AlexaLauncherInterface.h:84
virtual acsdkAlexaLauncherInterfaces::TargetState getLauncherTargetState()=0
The operation can&#39;t be performed because the endpoint is already in operation.
virtual bool addObserver(const std::weak_ptr< AlexaLauncherObserverInterface > &observer)=0
Definition: AlexaLauncherTargetState.h:27
Whether or not curl logs should be emitted.
Definition: AVSConnectionManager.h:36
Type type
The AlexaLauncher response type.
Definition: AlexaLauncherInterface.h:88
std::string errorMessage
The error message for logging if the AlexaLauncher response type is any other than SUCCESS...
Definition: AlexaLauncherInterface.h:91
virtual Response launchTarget(const acsdkAlexaLauncherInterfaces::TargetState &targetState)=0
tuple message
Definition: gtest_output_test.py:331
const T & move(const T &t)
Definition: gtest-port.h:1317

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