AlexaClientSDK  3.0.0
A cross-platform, modular SDK for interacting with the Alexa Voice Service
RemoteVideoPlayerConfiguration.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 ACSDK_ALEXAREMOTEVIDEOPLAYERINTERFACES_REMOTEVIDEOPLAYERCONFIGURATION_H_
17 #define ACSDK_ALEXAREMOTEVIDEOPLAYERINTERFACES_REMOTEVIDEOPLAYERCONFIGURATION_H_
18 
19 #include <list>
20 #include <set>
21 #include <string>
22 
24 
26 
27 namespace alexaClientSDK {
28 namespace alexaRemoteVideoPlayerInterfaces {
29 
33 struct Configuration {
37  enum class SupportedOperations {
39  PLAY_VIDEO,
42  };
43 
47  struct Catalog {
51  enum class Type {
53  PRIVATE_CATALOG,
55  PUBLIC_CATALOG
56  };
57 
64  Catalog(std::string sourceId = "imdb", Type type = Type::PUBLIC_CATALOG) :
65  sourceId{std::move(sourceId)},
66  type(type) {
67  }
68 
74  };
75 
81  std::list<Catalog> catalogs;
82 
86  Configuration() : catalogs{Catalog()} {
87  }
88 
97  std::set<SupportedOperations> operations,
98  std::set<acsdkAlexaVideoCommon::VideoEntity::EntityType> entityTypes,
99  std::list<Catalog> catalogs) :
100  operations{std::move(operations)},
101  entityTypes{std::move(entityTypes)},
102  catalogs{std::move(catalogs)} {
103  }
104 };
105 
106 } // namespace alexaRemoteVideoPlayerInterfaces
107 } // namespace alexaClientSDK
108 
109 #endif // ACSDK_ALEXAREMOTEVIDEOPLAYERINTERFACES_REMOTEVIDEOPLAYERCONFIGURATION_H_
Configuration(std::set< SupportedOperations > operations, std::set< acsdkAlexaVideoCommon::VideoEntity::EntityType > entityTypes, std::list< Catalog > catalogs)
Definition: RemoteVideoPlayerConfiguration.h:96
::std::string string
Definition: gtest-port.h:1097
Configuration()
Definition: RemoteVideoPlayerConfiguration.h:86
avsCommon::utils::Optional< std::set< acsdkAlexaVideoCommon::VideoEntity::EntityType > > entityTypes
All entity types supported by the skill.
Definition: RemoteVideoPlayerConfiguration.h:79
Type type
Type of Catalog.
Definition: RemoteVideoPlayerConfiguration.h:73
SupportedOperations
Definition: RemoteVideoPlayerConfiguration.h:37
avsCommon::utils::Optional< std::set< SupportedOperations > > operations
All directives supported by the skill. If it is not set, all directives will be assumed supported...
Definition: RemoteVideoPlayerConfiguration.h:77
std::list< Catalog > catalogs
Public and private catalogs supported by the skill.
Definition: RemoteVideoPlayerConfiguration.h:81
Whether or not curl logs should be emitted.
Definition: AVSConnectionManager.h:36
type
Definition: upload.py:443
Catalog(std::string sourceId="imdb", Type type=Type::PUBLIC_CATALOG)
Definition: RemoteVideoPlayerConfiguration.h:64
std::string sourceId
Definition: RemoteVideoPlayerConfiguration.h:71
const T & move(const T &t)
Definition: gtest-port.h:1317
Definition: RemoteVideoPlayerConfiguration.h:33

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