16 #ifndef ALEXA_CLIENT_SDK_AVSCOMMON_AVS_INCLUDE_AVSCOMMON_AVS_CAPABILITYCONFIGURATION_H_ 17 #define ALEXA_CLIENT_SDK_AVSCOMMON_AVS_INCLUDE_AVSCOMMON_AVS_CAPABILITYCONFIGURATION_H_ 21 #include <unordered_map> 71 bool isRetrievableIn =
false,
72 bool isProactivelyReportedIn =
false,
73 const std::vector<std::string>& supportedListIn = std::vector<std::string>(),
172 const std::shared_ptr<CapabilityConfiguration>& lhs,
173 const std::shared_ptr<CapabilityConfiguration>& rhs);
183 const std::shared_ptr<CapabilityConfiguration>& lhs,
184 const std::shared_ptr<CapabilityConfiguration>& rhs);
204 struct hash<
std::shared_ptr<alexaClientSDK::avsCommon::avs::CapabilityConfiguration>> {
205 size_t operator()(
const std::shared_ptr<alexaClientSDK::avsCommon::avs::CapabilityConfiguration>& in)
const;
210 #endif // ALEXA_CLIENT_SDK_AVSCOMMON_AVS_INCLUDE_AVSCOMMON_AVS_CAPABILITYCONFIGURATION_H_ static const auto CAPABILITY_INTERFACE_VERSION_KEY
Key for interface version in the CapabilityConfiguration map.
Definition: CapabilityConfiguration.h:35
bool isRetrievable
boolean indicating if the capability properties can be retrieved using the ReportState Directive...
Definition: CapabilityConfiguration.h:54
CapabilityConfiguration()=default
avsCommon::utils::Optional< bool > isNonControllable
The optional nonControllable properties flag.
Definition: CapabilityConfiguration.h:60
static constexpr const char * ALEXA_INTERFACE_TYPE
Alexa interface type.
Definition: CapabilityConfiguration.h:44
std::string interfaceName
The mandatory name of the Alexa interface.
Definition: CapabilityConfiguration.h:118
::std::string string
Definition: gtest-port.h:1097
Definition: CapabilityConfiguration.h:190
static const auto CAPABILITY_INTERFACE_TYPE_KEY
Key for interface type in the CapabilityConfiguration map.
Definition: CapabilityConfiguration.h:31
static const auto CAPABILITY_INTERFACE_CONFIGURATIONS_KEY
Key for interface configurations in the CapabilityConfiguration map.
Definition: CapabilityConfiguration.h:37
bool operator==(const BlockingPolicy &lhs, const BlockingPolicy &rhs)
static const auto CAPABILITY_INTERFACE_NAME_KEY
Key for interface name in the CapabilityConfiguration map.
Definition: CapabilityConfiguration.h:33
bool operator!=(const BlockingPolicy &lhs, const BlockingPolicy &rhs)
Definition: CapabilityConfiguration.h:52
std::string type
The mandatory type of interface for this Capability.
Definition: CapabilityConfiguration.h:116
Properties(bool isRetrievableIn=false, bool isProactivelyReportedIn=false, const std::vector< std::string > &supportedListIn=std::vector< std::string >(), const avsCommon::utils::Optional< bool > &isNonControllableIn=avsCommon::utils::Optional< bool >())
AdditionalConfigurations additionalConfigurations
Definition: CapabilityConfiguration.h:127
avsCommon::utils::Optional< std::string > instanceName
The optional instance name of the Capability.
Definition: CapabilityConfiguration.h:122
avsCommon::utils::Optional< Properties > properties
The optional properties field of the Capability.
Definition: CapabilityConfiguration.h:124
Whether or not curl logs should be emitted.
Definition: AVSConnectionManager.h:36
bool isProactivelyReported
boolean indicating if the capability properties are proactively reported using the ChangeReport Event...
Definition: CapabilityConfiguration.h:56
Definition: CapabilityConfiguration.h:42
std::string version
The mandatory version of the Capability.
Definition: CapabilityConfiguration.h:120
std::vector< std::string > supportedList
The list of supported properties of the capability agent.
Definition: CapabilityConfiguration.h:58
std::map< std::string, std::string > AdditionalConfigurations
Alias for additional configurations.
Definition: CapabilityConfiguration.h:47