YARP
Yet Another Robot Platform
 
Loading...
Searching...
No Matches
WhisperDevice_ParamsParser.cpp
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2023-2023 Istituto Italiano di Tecnologia (IIT)
3 * SPDX-License-Identifier: LGPL-2.1-or-later
4 */
5
6
7// Generated by yarpDeviceParamParserGenerator (1.0)
8// This is an automatically generated file. Please do not edit it.
9// It will be re-generated if the cmake flag ALLOW_DEVICE_PARAM_PARSER_GERNERATION is ON.
10
11// Generated on: Wed May 14 14:48:03 2025
12
13
15#include <yarp/os/LogStream.h>
16#include <yarp/os/Value.h>
17
18namespace {
19 YARP_LOG_COMPONENT(WhisperDeviceParamsCOMPONENT, "yarp.device.WhisperDevice")
20}
21
22
26
27
28std::vector<std::string> WhisperDevice_ParamsParser::getListOfParams() const
29{
30 std::vector<std::string> params;
31 params.push_back("ENVS::end_point_name");
32 params.push_back("ENVS::deployment_id_name");
33 params.push_back("ENVS::api_key_name");
34 params.push_back("ENVS::api_version_name");
35 return params;
36}
37
38
40{
41 //Check for --help option
42 if (config.check("help"))
43 {
44 yCInfo(WhisperDeviceParamsCOMPONENT) << getDocumentationOfDeviceParams();
45 }
46
47 std::string config_string = config.toString();
48 yarp::os::Property prop_check(config_string.c_str());
49 //Parser of parameter ENVS::end_point_name
50 {
51 yarp::os::Bottle sectionp;
52 sectionp = config.findGroup("ENVS");
53 if (sectionp.check("end_point_name"))
54 {
55 m_ENVS_end_point_name = sectionp.find("end_point_name").asString();
56 yCInfo(WhisperDeviceParamsCOMPONENT) << "Parameter 'ENVS::end_point_name' using value:" << m_ENVS_end_point_name;
57 }
58 else
59 {
60 yCInfo(WhisperDeviceParamsCOMPONENT) << "Parameter 'ENVS::end_point_name' using DEFAULT value:" << m_ENVS_end_point_name;
61 }
62 prop_check.unput("ENVS::end_point_name");
63 }
64
65 //Parser of parameter ENVS::deployment_id_name
66 {
67 yarp::os::Bottle sectionp;
68 sectionp = config.findGroup("ENVS");
69 if (sectionp.check("deployment_id_name"))
70 {
71 m_ENVS_deployment_id_name = sectionp.find("deployment_id_name").asString();
72 yCInfo(WhisperDeviceParamsCOMPONENT) << "Parameter 'ENVS::deployment_id_name' using value:" << m_ENVS_deployment_id_name;
73 }
74 else
75 {
76 yCInfo(WhisperDeviceParamsCOMPONENT) << "Parameter 'ENVS::deployment_id_name' using DEFAULT value:" << m_ENVS_deployment_id_name;
77 }
78 prop_check.unput("ENVS::deployment_id_name");
79 }
80
81 //Parser of parameter ENVS::api_key_name
82 {
83 yarp::os::Bottle sectionp;
84 sectionp = config.findGroup("ENVS");
85 if (sectionp.check("api_key_name"))
86 {
87 m_ENVS_api_key_name = sectionp.find("api_key_name").asString();
88 yCInfo(WhisperDeviceParamsCOMPONENT) << "Parameter 'ENVS::api_key_name' using value:" << m_ENVS_api_key_name;
89 }
90 else
91 {
92 yCInfo(WhisperDeviceParamsCOMPONENT) << "Parameter 'ENVS::api_key_name' using DEFAULT value:" << m_ENVS_api_key_name;
93 }
94 prop_check.unput("ENVS::api_key_name");
95 }
96
97 //Parser of parameter ENVS::api_version_name
98 {
99 yarp::os::Bottle sectionp;
100 sectionp = config.findGroup("ENVS");
101 if (sectionp.check("api_version_name"))
102 {
103 m_ENVS_api_version_name = sectionp.find("api_version_name").asString();
104 yCInfo(WhisperDeviceParamsCOMPONENT) << "Parameter 'ENVS::api_version_name' using value:" << m_ENVS_api_version_name;
105 }
106 else
107 {
108 yCInfo(WhisperDeviceParamsCOMPONENT) << "Parameter 'ENVS::api_version_name' using DEFAULT value:" << m_ENVS_api_version_name;
109 }
110 prop_check.unput("ENVS::api_version_name");
111 }
112
113 /*
114 //This code check if the user set some parameter which are not check by the parser
115 //If the parser is set in strict mode, this will generate an error
116 if (prop_check.size() > 0)
117 {
118 bool extra_params_found = false;
119 for (auto it=prop_check.begin(); it!=prop_check.end(); it++)
120 {
121 if (m_parser_is_strict)
122 {
123 yCError(WhisperDeviceParamsCOMPONENT) << "User asking for parameter: "<<it->name <<" which is unknown to this parser!";
124 extra_params_found = true;
125 }
126 else
127 {
128 yCWarning(WhisperDeviceParamsCOMPONENT) << "User asking for parameter: "<< it->name <<" which is unknown to this parser!";
129 }
130 }
131
132 if (m_parser_is_strict && extra_params_found)
133 {
134 return false;
135 }
136 }
137 */
138 return true;
139}
140
141
143{
144 std::string doc;
145 doc = doc + std::string("\n=============================================\n");
146 doc = doc + std::string("This is the help for device: WhisperDevice\n");
147 doc = doc + std::string("\n");
148 doc = doc + std::string("This is the list of the parameters accepted by the device:\n");
149 doc = doc + std::string("'ENVS::end_point_name': The name of the environmental variable that stores the APIs endpoint\n");
150 doc = doc + std::string("'ENVS::deployment_id_name': The name of the environmental variable that stores the deployment ID\n");
151 doc = doc + std::string("'ENVS::api_key_name': The name of the environmental variable that stores the APIs access key\n");
152 doc = doc + std::string("'ENVS::api_version_name': The name of the environmental variable that stores the APIs version used\n");
153 doc = doc + std::string("\n");
154 doc = doc + std::string("Here are some examples of invocation command with yarpdev, with all params:\n");
155 doc = doc + " yarpdev --device whisperDevice --ENVS::end_point_name AZURE_ENDPOINT --ENVS::deployment_id_name DEPLOYMENT_WHISPER_ID --ENVS::api_key_name AZURE_API_KEY --ENVS::api_version_name AZURE_API_VERSION_TTS\n";
156 doc = doc + std::string("Using only mandatory params:\n");
157 doc = doc + " yarpdev --device whisperDevice\n";
158 doc = doc + std::string("=============================================\n\n"); return doc;
159}
bool parseParams(const yarp::os::Searchable &config) override
Parse the DeviceDriver parameters.
std::string getDocumentationOfDeviceParams() const override
Get the documentation of the DeviceDriver's parameters.
std::vector< std::string > getListOfParams() const override
Return a list of all params used by the device.
A simple collection of objects that can be described and transmitted in a portable way.
Definition Bottle.h:64
bool check(const std::string &key) const override
Check if there exists a property of the given name.
Definition Bottle.cpp:277
Value & find(const std::string &key) const override
Gets a value corresponding to a given keyword.
Definition Bottle.cpp:287
A class for storing options and configuration information.
Definition Property.h:33
void unput(const std::string &key)
Remove the association from the given key to a value, if present.
A base class for nested structures that can be searched.
Definition Searchable.h:31
virtual bool check(const std::string &key) const =0
Check if there exists a property of the given name.
virtual std::string toString() const =0
Return a standard text representation of the content of the object.
virtual Bottle & findGroup(const std::string &key) const =0
Gets a list corresponding to a given keyword.
virtual std::string asString() const
Get string value.
Definition Value.cpp:234
#define yCInfo(component,...)
#define YARP_LOG_COMPONENT(name,...)