C++: Implement InputFormat::get_options()
This commit is contained in:
parent
6e5240f418
commit
43942280bb
|
@ -1128,6 +1128,19 @@ string InputFormat::get_description()
|
|||
return valid_string(sr_input_description_get(structure));
|
||||
}
|
||||
|
||||
map<string, shared_ptr<Option>> InputFormat::get_options()
|
||||
{
|
||||
const struct sr_option *option = sr_input_options_get(structure);
|
||||
auto option_array = shared_ptr<const struct sr_option>(
|
||||
option, [=](const struct sr_option *) {
|
||||
sr_input_options_free(structure); });
|
||||
map<string, shared_ptr<Option>> result;
|
||||
for (; option->id; option++)
|
||||
result[option->id] = shared_ptr<Option>(
|
||||
new Option(option, option_array), Option::Deleter());
|
||||
return result;
|
||||
}
|
||||
|
||||
shared_ptr<Input> InputFormat::create_input(
|
||||
map<string, Glib::VariantBase> options)
|
||||
{
|
||||
|
|
|
@ -825,6 +825,7 @@ protected:
|
|||
void operator()(Option *option) { delete option; }
|
||||
};
|
||||
friend class Deleter;
|
||||
friend class InputFormat;
|
||||
friend class OutputFormat;
|
||||
};
|
||||
|
||||
|
|
Loading…
Reference in New Issue