ARTS
2.2.66
|
Declaration of the class MdRecord. More...
Go to the source code of this file.
Classes | |
class | MdRecord |
All information for one workspace method. More... | |
Macros | |
#define | NODEF "@@THIS_KEYWORD_HAS_NO_DEFAULT_VALUE@@" |
Functions | |
ostream & | operator<< (ostream &os, const MdRecord &mdr) |
Output operator for MdRecord. More... | |
void | define_md_data_raw () |
void | expand_md_data_raw_to_md_data () |
Expand supergeneric methods. More... | |
bool | format_paragraph (String &s, const String &indent, const size_t linelen, const size_t offset=0) |
void | define_md_map () |
Define MdMap. More... | |
void | define_md_raw_map () |
Define MdRawMap. More... | |
void | get_short_wsv_description (String &s, const String &desc) |
Declaration of the class MdRecord.
The class MdRecord contains all information for one workspace method.
Definition in file methods.h.
#define NODEF "@@THIS_KEYWORD_HAS_NO_DEFAULT_VALUE@@" |
Definition at line 36 of file methods.h.
Referenced by define_md_data_raw(), MCIPA(), operator<<(), ArtsParser::parse_method_args(), ArtsParser::set_gin_to_default(), and write_method_header_documentation().
void define_md_data_raw | ( | ) |
Definition at line 126 of file methods.cc.
References AGENDAMETHOD, AUTHORS, DESCRIPTION, get_array_groups_as_string(), GIN, GIN_DEFAULT, GIN_DESC, GIN_TYPE, GOUT, GOUT_DESC, GOUT_TYPE, IN, global_data::md_data_raw, NAME, NODEF, OUT, PASSWORKSPACE, PASSWSVNAMES, SETMETHOD, USES_TEMPLATES, and global_data::wsv_group_names.
Referenced by main().
void define_md_map | ( | ) |
Define MdMap.
MdMap can be used to find method data by method name.
Definition at line 472 of file methods_aux.cc.
References MdRecord::ActualGroups(), DEBUG_ONLY, global_data::md_data, global_data::MdMap, MdRecord::Name(), Array< base >::nelem(), MdRecord::Supergeneric(), and global_data::wsv_group_names.
Referenced by main().
void define_md_raw_map | ( | ) |
Define MdRawMap.
MdRawMap can be used to find method data by method name. In the md_data_raw lookup table. This is the method table before expansion of supergeneric methods.
We add the _sg_Type string to the methodname here, so that supergeneric methods can be picked out for the right type.
Definition at line 514 of file methods_aux.cc.
References global_data::md_data_raw, and global_data::MdRawMap.
Referenced by main().
void expand_md_data_raw_to_md_data | ( | ) |
Expand supergeneric methods.
This creates md_data from md_data_raw, by explicitly expanding supergeneric methods for all groups. That means, e.g., instead of supergeneric method Copy(Any,Any) there will be Copy_sg_Vector(Vector,Vector), Copy_sg_Matrix(Matrix,Matrix), etc..
Not only the GOutType and GInType lists are manipulated, also the method name.
Definition at line 396 of file methods_aux.cc.
References get_wsv_group_id(), MdRecord::GInSpecType(), MdRecord::GOutSpecType(), max, global_data::md_data, global_data::md_data_raw, Array< base >::nelem(), MdRecord::subst_any_with_group(), MdRecord::subst_any_with_specific_group(), MdRecord::Supergeneric(), and global_data::wsv_group_names.
Referenced by main().
bool format_paragraph | ( | String & | s, |
const String & | indent, | ||
const size_t | linelen, | ||
const size_t | offset = 0 |
||
) |
Definition at line 526 of file methods_aux.cc.
Referenced by operator<<().
Definition at line 565 of file methods_aux.cc.
References my_basic_string< charT >::npos.
Referenced by operator<<().
ostream& operator<< | ( | ostream & | os, |
const MdRecord & | mdr | ||
) |
Output operator for MdRecord.
Definition at line 673 of file methods_aux.cc.
References MdRecord::Authors(), MdRecord::Description(), format_paragraph(), get_short_wsv_description(), get_wsv_group_id(), MdRecord::GIn(), MdRecord::GInDefault(), MdRecord::GInDescription(), MdRecord::GInSpecType(), MdRecord::GInType(), MdRecord::GOut(), MdRecord::GOutDescription(), MdRecord::GOutSpecType(), MdRecord::GOutType(), MdRecord::In(), MdRecord::InOnly(), limit_line_length(), MdRecord::Name(), my_basic_string< charT >::nelem(), Array< base >::nelem(), NODEF, MdRecord::Out(), Workspace::wsv_data, and global_data::wsv_group_names.