15#include "matpack_data.h"
18#define NODEF "@@THIS_KEYWORD_HAS_NO_DEFAULT_VALUE@@"
47 const char* description,
58 bool set_method =
false,
59 bool agenda_method =
false,
60 bool uses_templates =
false,
61 bool pass_workspace =
false,
62 bool pass_wsv_names =
false);
109 ostream&
PrintTemplate(ostream& os,
bool show_description =
true)
const;
229 const size_t linelen,
230 const size_t offset = 0);
All information for one workspace method.
ArrayOfIndex mgouttype
Generic Workspace Output Type.
ArrayOfArrayOfIndex mginspectype
Generic Workspace Input Types (Contains the valid types if the method.
bool muses_templates
Flag, whether method implementation relies on templates.
const ArrayOfIndex & In() const
bool mpass_workspace
Flag, whether a workspace reference should be passed to the WSM.
ArrayOfIndex moutput
Workspace Output.
MdRecord(MdRecord &&)=default
String mactual_groups
The actual groups of a supergeneric method.
const String & Name() const
void subst_any_with_specific_group(Index g)
Expand supergeneric record for given Index in GOutSpecType and GInSpecType.
const ArrayOfIndex & InOnly() const
ArrayOfString mgindesc
Generic Workspace Input Description.
bool PassWorkspace() const
const ArrayOfIndex & GOutType() const
const Array< String > & GOutDescription() const
String mdescription
A text string describing this method.
ArrayOfString mauthors
Author(s) of this method.
const String & ActualGroups() const
MdRecord & operator=(MdRecord &&m)=default
String mname
The name of this method.
const Array< String > & GInDefault() const
MdRecord()
Default constructor.
bool PassWsvNames() const
ArrayOfIndex minout
Indexes of Input-Output variables.
const ArrayOfArrayOfIndex & GInSpecType() const
ArrayOfString mgindefault
Generic Workspace Input Defaults.
const String & Description() const
const ArrayOfString & GOut() const
ArrayOfIndex minput
Workspace Input.
bool UsesTemplates() const
bool mpass_wsv_names
Flag, whether WSV names should be passed to the WSM.
friend ostream & operator<<(ostream &os, const MdRecord &mdr)
Output operator for MdRecord.
bool AgendaMethod() const
ArrayOfIndex mgintype
Generic Workspace Input.
ArrayOfIndex moutonly
Indexes of Output-only variables.
const Array< String > & GInDescription() const
friend void subst_any_with_group(MdRecord &mdd, Index g)
ArrayOfIndex minonly
Indexes of Input-only variables.
const ArrayOfIndex & InOut() const
bool Supergeneric() const
ostream & PrintTemplate(ostream &os, bool show_description=true) const
Print method template for the control file.
const ArrayOfString & Authors() const
bool mset_method
Flag, whether this is a set method.
ArrayOfString mgin
Generic Workspace Input Names.
const ArrayOfArrayOfIndex & GOutSpecType() const
const ArrayOfIndex & Out() const
const ArrayOfIndex & GInType() const
ArrayOfString mgout
Generic Workspace Output Names.
MdRecord(const MdRecord &)=default
ArrayOfArrayOfIndex mgoutspectype
Generic Workspace Output Types (Contains the valid types if the method.
const ArrayOfString & GIn() const
ArrayOfString mgoutdesc
Generic Workspace Output Description.
MdRecord & operator=(const MdRecord &m)=default
bool magenda_method
Flag, whether this is an agenda method.
const ArrayOfIndex & OutOnly() const
bool msupergeneric
Flag, whether this method is supergeneric.
Declarations having to do with the four output streams.
void define_md_raw_map()
Define MdRawMap.
void define_md_data_raw()
void get_short_wsv_description(String &s, const String &desc)
void define_md_map()
Define MdMap.
void expand_md_data_raw_to_md_data()
Expand supergeneric methods.
bool format_paragraph(String &s, const String &indent, const size_t linelen, const size_t offset=0)