ARTS 2.5.4 (git: 31ce4f0e)
methods.h File Reference

Declaration of the class MdRecord. More...

#include <iosfwd>
#include "matpackI.h"
#include "messages.h"

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

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)
 

Detailed Description

Declaration of the class MdRecord.

The class MdRecord contains all information for one workspace method.

Author
Stefan Buehler
Date
1999-07-27

Definition in file methods.h.

Macro Definition Documentation

◆ NODEF

#define NODEF   "@@THIS_KEYWORD_HAS_NO_DEFAULT_VALUE@@"

Definition at line 35 of file methods.h.

Function Documentation

◆ define_md_data_raw()

void define_md_data_raw ( )

Add all the agenda-setting methods below here:

Special method that has to look through some of the above methods for changes

Special method that has to look through some of the above methods for changes

Definition at line 190 of file methods.cc.

References a, AGENDAMETHOD, ARTS_ASSERT, AUTHORS, b, create_mdrecord(), 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, Array< base >::nelem(), NODEF, OUT, PASSWORKSPACE, PASSWSVNAMES, SETMETHOD, swap(), USES_TEMPLATES, and global_data::wsv_groups.

Referenced by main().

◆ define_md_map()

void define_md_map ( )

Define MdMap.

MdMap can be used to find method data by method name.

Definition at line 475 of file methods_aux.cc.

References MdRecord::ActualGroups(), ARTS_ASSERT, DEBUG_ONLY, global_data::md_data, global_data::MdMap, MdRecord::Name(), Array< base >::nelem(), MdRecord::Supergeneric(), and global_data::wsv_groups.

Referenced by main().

◆ define_md_raw_map()

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 511 of file methods_aux.cc.

References global_data::md_data_raw, and global_data::MdRawMap.

Referenced by main().

◆ expand_md_data_raw_to_md_data()

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 412 of file methods_aux.cc.

References ARTS_ASSERT, get_wsv_group_id(), MdRecord::GInSpecType(), MdRecord::GOutSpecType(), Constant::k, 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_groups.

Referenced by main().

◆ format_paragraph()

bool format_paragraph ( String s,
const String indent,
const size_t  linelen,
const size_t  offset = 0 
)

Definition at line 520 of file methods_aux.cc.

◆ get_short_wsv_description()

void get_short_wsv_description ( String s,
const String desc 
)

Definition at line 554 of file methods_aux.cc.

References my_basic_string< char >::npos.