19 YARP_LOG_COMPONENT(AudioFromFileDeviceParamsCOMPONENT,
"yarp.device.AudioFromFileDevice")
30 std::vector<std::string> params;
31 params.push_back(
"use_params_from_file");
32 params.push_back(
"file_name");
33 params.push_back(
"period");
34 params.push_back(
"driver_frame_size");
35 params.push_back(
"reset_on_stop");
42 if (paramName ==
"use_params_from_file")
45 else paramValue =
"false";
48 if (paramName ==
"file_name")
53 if (paramName ==
"period")
55 paramValue = std::to_string(
m_period);
58 if (paramName ==
"driver_frame_size")
63 if (paramName ==
"reset_on_stop")
66 else paramValue =
"false";
70 yError() <<
"parameter '" << paramName <<
"' was not found";
89 if (config.
check(
"help"))
98 if (config.
check(
"use_params_from_file"))
107 prop_check.
unput(
"use_params_from_file");
112 if (config.
check(
"file_name"))
115 yCInfo(AudioFromFileDeviceParamsCOMPONENT) <<
"Parameter 'file_name' using value:" <<
m_file_name;
119 yCInfo(AudioFromFileDeviceParamsCOMPONENT) <<
"Parameter 'file_name' using DEFAULT value:" <<
m_file_name;
121 prop_check.
unput(
"file_name");
126 if (config.
check(
"period"))
129 yCInfo(AudioFromFileDeviceParamsCOMPONENT) <<
"Parameter 'period' using value:" <<
m_period;
133 yCInfo(AudioFromFileDeviceParamsCOMPONENT) <<
"Parameter 'period' using DEFAULT value:" <<
m_period;
135 prop_check.
unput(
"period");
140 if (config.
check(
"driver_frame_size"))
147 yCInfo(AudioFromFileDeviceParamsCOMPONENT) <<
"Parameter 'driver_frame_size' using DEFAULT value:" <<
m_driver_frame_size;
149 prop_check.
unput(
"driver_frame_size");
154 if (config.
check(
"reset_on_stop"))
157 yCInfo(AudioFromFileDeviceParamsCOMPONENT) <<
"Parameter 'reset_on_stop' using value:" <<
m_reset_on_stop;
161 yCInfo(AudioFromFileDeviceParamsCOMPONENT) <<
"Parameter 'reset_on_stop' using DEFAULT value:" <<
m_reset_on_stop;
163 prop_check.
unput(
"reset_on_stop");
198 doc = doc + std::string(
"\n=============================================\n");
199 doc = doc + std::string(
"This is the help for device: AudioFromFileDevice\n");
200 doc = doc + std::string(
"\n");
201 doc = doc + std::string(
"This is the list of the parameters accepted by the device:\n");
202 doc = doc + std::string(
"'use_params_from_file': If set to true, recording params (e.g. channels, freq etc. are taken from file. Otherwise are AUDIO_BASE parameters are used and the file is converted to the specified format\n");
203 doc = doc + std::string(
"'file_name': The name of the file opened by the module\n");
204 doc = doc + std::string(
"'period': the period of thread which processes the file\n");
205 doc = doc + std::string(
"'driver_frame_size': the number of samples to process on each iteration of the thread\n");
206 doc = doc + std::string(
"'reset_on_stop': if enabled, the file is played back from the beginning every stop. Otherwise on start the previous position is resumed\n");
207 doc = doc + std::string(
"\n");
208 doc = doc + std::string(
"Here are some examples of invocation command with yarpdev, with all params:\n");
209 doc = doc +
" yarpdev --device audioFromFileDevice --use_params_from_file true --file_name audio.wav --period 0.010 --driver_frame_size 512 --reset_on_stop false\n";
210 doc = doc + std::string(
"Using only mandatory params:\n");
211 doc = doc +
" yarpdev --device audioFromFileDevice\n";
212 doc = doc + std::string(
"=============================================\n\n");
return doc;
bool getParamValue(const std::string ¶mName, std::string ¶mValue) const override
Return the value (represented as a string) of the requested parameter.
std::string m_provided_configuration
bool m_use_params_from_file
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.
std::string getConfiguration() const override
Return the configuration of the device.
AudioFromFileDevice_ParamsParser()
bool parseParams(const yarp::os::Searchable &config) override
Parse the DeviceDriver parameters.
A class for storing options and configuration information.
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.
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 Value & find(const std::string &key) const =0
Gets a value corresponding to a given keyword.
#define yCInfo(component,...)
#define YARP_LOG_COMPONENT(name,...)