29 #ifndef _ARTS_ARTS_API_CLASS_H_ 30 #define _ARTS_ARTS_API_CLASS_H_ 35 #define DLL_PUBLIC __attribute__((visibility("default"))) 36 #define REMOVE_DLL_PUBLIC 1 38 #define REMOVE_DLL_PUBLIC 0 41 #define BasicInterfaceCAPI(TYPE) \ 42 __attribute__((visibility("default"))) \ 43 void * create##TYPE(); \ 44 __attribute__((visibility("default"))) \ 45 void delete##TYPE(void * data); \ 46 __attribute__((visibility("default"))) \ 47 void print##TYPE(void * data); 50 #define GetterSetterCAPI(TYPE, VALUE, BASETYPE) \ 51 __attribute__((visibility("default"))) \ 52 BASETYPE get##VALUE##TYPE(void * data); \ 53 __attribute__((visibility("default"))) \ 54 void set##VALUE##TYPE(void * data, BASETYPE newval); 57 #define EnumGetterSetterCAPI(TYPE, VALUE, ENUM) \ 58 __attribute__((visibility("default"))) \ 59 Index get##VALUE##TYPE(void * data); \ 60 __attribute__((visibility("default"))) \ 61 Index set##VALUE##TYPE(void * data, Index newval); \ 62 __attribute__((visibility("default"))) \ 63 Index string2index##VALUE##TYPE(void * data, char * newval); 66 #define VoidGetterCAPI(TYPE, VALUE) \ 67 __attribute__((visibility("default"))) \ 68 void * get##VALUE##TYPE(void * data); 71 #define VoidStructGetterCAPI(TYPE, VALUE) \ 72 __attribute__((visibility("default"))) \ 73 void * get##VALUE##TYPE(void * data); 76 #define BasicInputOutputCAPI(TYPE) \ 77 __attribute__((visibility("default"))) \ 78 Index xmlread##TYPE(void * data, char * filepath); \ 79 __attribute__((visibility("default"))) \ 80 Index xmlsave##TYPE(void * data, char * filepath, Index filetype, Index clobber); 83 #define VoidArrayCAPI(TYPE) \ 84 __attribute__((visibility("default"))) \ 85 Index size##TYPE(void * data); \ 86 __attribute__((visibility("default"))) \ 87 void resize##TYPE(Index n, void * data); \ 88 __attribute__((visibility("default"))) \ 89 void * getelem##TYPE(Index i, void * data); 92 #define VoidArrayElemCAPI(TYPE, ELEM) \ 93 __attribute__((visibility("default"))) \ 94 Index size##ELEM##TYPE(void * data); \ 95 __attribute__((visibility("default"))) \ 96 void resize##ELEM##TYPE(Index n, void * data); \ 97 __attribute__((visibility("default"))) \ 98 void * getelem##ELEM##TYPE(Index i, void * data); 202 DLL_PUBLIC Index setSpeciesTag(
void *,
char *);
231 DLL_PUBLIC void printmetaAbsorptionLines(
void *);
280 DLL_PUBLIC void resizeTensor3(Index, Index, Index,
void *);
295 DLL_PUBLIC void resizeTensor4(Index, Index, Index, Index,
void *);
311 DLL_PUBLIC void resizeTensor5(Index, Index, Index, Index, Index,
void *);
328 DLL_PUBLIC void resizeTensor6(Index, Index, Index, Index, Index, Index,
void *);
346 DLL_PUBLIC void resizeTensor7(Index, Index, Index, Index, Index, Index, Index,
void *);
366 DLL_PUBLIC Index stokesPropagationMatrix(
void *);
454 DLL_PUBLIC Numeric * getMat1TransmissionMatrix(Index,
void *);
471 DLL_PUBLIC Numeric * getVec1RadiationVector(Index,
void *);
488 DLL_PUBLIC Index get_dimGriddedField1(
void * data);
510 DLL_PUBLIC Index get_dimGriddedField2(
void * data);
532 DLL_PUBLIC Index get_dimGriddedField3(
void * data);
551 DLL_PUBLIC Index get_dimGriddedField4(
void * data);
567 DLL_PUBLIC Index get_dimGriddedField5(
void * data);
583 DLL_PUBLIC Index get_dimGriddedField6(
void * data);
599 DLL_PUBLIC void initSpeciesAuxData(
void * data);
612 DLL_PUBLIC Index getSpecies1CIARecord(
void *);
726 DLL_PUBLIC Numeric getA0_K0TelsemAtlas(Index,
void*);
779 DLL_PUBLIC Index getSpeciesXsecRecord(
void *);
788 DLL_PUBLIC void resizeSparse(Index, Index,
void *);
833 DLL_PUBLIC Index getTypeRetrievalQuantity(
void *);
849 DLL_PUBLIC Index get_matrix_typeBlock(
void *);
892 DLL_PUBLIC Index string2filetypeindex(
char *);
897 #undef BasicInterfaceCAPI 898 #undef GetterSetterCAPI 899 #undef EnumGetterSetterCAPI 900 #undef VoidGetterCAPI 901 #undef VoidStructGetterCAPI 902 #undef BasicInputOutputCAPI 904 #undef VoidArrayElemCAPI 907 #if REMOVE_DLL_PUBLIC 910 #undef REMOVE_DLL_PUBLIC 912 #endif // _ARTS_ARTS_API_CLASS_H_ DLL_PUBLIC int * rowsptrSparse(void *)
INDEX Index
The type to use for all integer numbers and indices.
DLL_PUBLIC Index get_extentRange(void *)
DLL_PUBLIC Numeric getA1_EVEHTelsemAtlas(Index, void *)
saa aag G DLL_PUBLIC Index getTypeMCAntenna(void *)
void *DLL_PUBLIC Index vitrinesTensor6(void *)
DLL_PUBLIC Index getcputime_start_cutimeTimer(void *)
G0 G2 FVC Y DV Numeric E0
DLL_PUBLIC Index colsTensor4(void *)
DLL_PUBLIC void setRadiationVector(void *, Index, Index)
DLL_PUBLIC Index shelvesTensor7(void *)
Class to keep track of Transmission Matrices for Stokes Dim 1-4.
DLL_PUBLIC char * get_nameGriddedField1(void *data)
Computations and data for a single absorption line.
DLL_PUBLIC void set_grid_nameGriddedField1(Index i, void *data, char *newdata)
MirroringType
Spectral line catalog data.
DLL_PUBLIC void setrealtime_endTimer(void *, Index)
DLL_PUBLIC Index setTypeFromIndexSpeciesAuxData(void *data, Index s, Index i, Index t)
DLL_PUBLIC Index getcputime_start_cstimeTimer(void *)
DLL_PUBLIC void setcputime_start_stimeTimer(void *, Index)
DLL_PUBLIC Index get_grid_typeIndexGriddedField5(Index i, void *data)
DLL_PUBLIC void setcputime_start_utimeTimer(void *, Index)
DLL_PUBLIC Index getSpecies2CIARecord(void *)
DLL_PUBLIC Index booksTensor5(void *)
DLL_PUBLIC Numeric getB1_EVEHTelsemAtlas(Index, void *)
QuantumIdentifier::QType Isotopologue
DLL_PUBLIC void set_nameGriddedField2(void *data, char *newdata)
Numeric void *DLL_PUBLIC bool equalTime(void *, void *)
DLL_PUBLIC Index azimuthsPropagationMatrix(void *)
void *DLL_PUBLIC Numeric * getVec2RadiationVector(Index, void *)
DLL_PUBLIC Index colsMatrix(void *)
DLL_PUBLIC Numeric getA0_K2TelsemAtlas(Index, void *)
DLL_PUBLIC Numeric * getDataVector(void *)
NormalizationType
Describes the type of normalization line effects.
DLL_PUBLIC Numeric * getDataMatrix(void *)
DLL_PUBLIC void * get_string_gridGriddedField5(Index i, void *data)
DLL_PUBLIC bool checksizeGriddedField6(void *data)
#define GetterSetterCAPI(TYPE, VALUE, BASETYPE)
G0 G2 FVC Y DV Numeric Numeric Numeric Zeeman LowerQuantumNumbers void *DLL_PUBLIC Index sizeQuantumNumbers()
DLL_PUBLIC char * get_grid_nameGriddedField1(Index i, void *data)
DLL_PUBLIC Index get_grid_typeIndexGriddedField1(Index i, void *data)
DLL_PUBLIC void setSpeciesCIARecord(void *, Index, Index)
DLL_PUBLIC void setrunningTimer(void *, bool)
DLL_PUBLIC void setVerbosity(void *, Index, Index, Index, bool)
DLL_PUBLIC Index getrealtime_startTimer(void *)
DLL_PUBLIC void setcputime_end_utimeTimer(void *, Index)
bool Absorption::CutoffType Mirroring
DLL_PUBLIC Index frequenciesPropagationMatrix(void *)
bool Absorption::CutoffType Absorption::MirroringType Normalization
Class to handle time in ARTS.
DLL_PUBLIC void * dataGriddedField3(void *data)
DLL_PUBLIC Index booksTensor6(void *)
DLL_PUBLIC void set_nameGriddedField6(void *data, char *newdata)
DLL_PUBLIC void setcputime_start_cutimeTimer(void *, Index)
Main line shape model class.
DLL_PUBLIC Index string2quantumnumbersindex(char *)
DLL_PUBLIC void * get_string_gridGriddedField3(Index i, void *data)
DLL_PUBLIC Index vitrinesTensor7(void *)
DLL_PUBLIC bool getOKStokesVector(void *)
DLL_PUBLIC void * get_string_gridGriddedField1(Index i, void *data)
DLL_PUBLIC Index pagesTensor6(void *)
void *DLL_PUBLIC Index pagesTensor3(void *)
DLL_PUBLIC void * get_numeric_gridGriddedField4(Index i, void *data)
DLL_PUBLIC Index pagesTensor5(void *)
DLL_PUBLIC void * get_string_gridGriddedField2(Index i, void *data)
DLL_PUBLIC Index rowsTensor6(void *)
cmplx FADDEEVA() w(cmplx z, double relerr)
DLL_PUBLIC void set_gridGriddedField3(Index i, void *data, void *newdata, bool NumericType)
DLL_PUBLIC bool checksizeGriddedField2(void *data)
DLL_PUBLIC Index rowsTensor4(void *)
DLL_PUBLIC Numeric * getDataTensor6(void *)
DLL_PUBLIC void setNumeric(void *data, Numeric newval)
DLL_PUBLIC Index get_grid_typeIndexGriddedField6(Index i, void *data)
DLL_PUBLIC char * get_grid_nameGriddedField5(Index i, void *data)
DLL_PUBLIC void set_grid_nameGriddedField5(Index i, void *data, char *newdata)
Stokes vector is as Propagation matrix but only has 4 possible values.
DLL_PUBLIC bool getfinishedTimer(void *)
DLL_PUBLIC Numeric * getDataTensor5(void *)
G0 G2 FVC Y DV Numeric Numeric Numeric Zeeman LowerQuantumNumbers void * data
DLL_PUBLIC bool checksizeGriddedField3(void *data)
DLL_PUBLIC void set_nameGriddedField4(void *data, char *newdata)
DLL_PUBLIC Index colsTensor6(void *)
DLL_PUBLIC Numeric getA2_EVEHTelsemAtlas(Index, void *)
DLL_PUBLIC Index getStokesDimRadiationVector(void *)
DLL_PUBLIC void setcputime_end_stimeTimer(void *, Index)
DLL_PUBLIC Index pagesTensor4(void *)
DLL_PUBLIC void setrealtime_startTimer(void *, Index)
QuantumIdentifier::QType Index LowerQuantumNumbers Index Numeric Index Index char *DLL_PUBLIC Index validSpecies(Index)
DLL_PUBLIC void setcputime_start_cstimeTimer(void *, Index)
DLL_PUBLIC Numeric getB3_EVEHTelsemAtlas(Index, void *)
DLL_PUBLIC void set_gridGriddedField5(Index i, void *data, void *newdata, bool NumericType)
DLL_PUBLIC char * getString(void *data)
DLL_PUBLIC Index pagesTensor7(void *)
DLL_PUBLIC void * dataGriddedField4(void *data)
void *DLL_PUBLIC Index rowsSparse(void *)
DLL_PUBLIC Index get_grid_sizeGriddedField2(Index i, void *data)
DLL_PUBLIC char * get_grid_nameGriddedField3(Index i, void *data)
CutoffType
Describes the type of cutoff calculations.
DLL_PUBLIC Index booksTensor7(void *)
Structure to store a grid position.
DLL_PUBLIC int * colsptrSparse(void *)
DLL_PUBLIC Index getFileVerbosity(void *)
Deals with internal derivatives, Jacobian definition, and OEM calculations.
DLL_PUBLIC Index colsTensor5(void *)
DLL_PUBLIC Numeric getA3_EVEHTelsemAtlas(Index, void *)
DLL_PUBLIC Numeric * getDataSparse(void *)
DLL_PUBLIC Index get_grid_typeIndexGriddedField3(Index i, void *data)
Implements Zeeman modeling.
DLL_PUBLIC Index zenithsStokesVector(void *)
DLL_PUBLIC char * get_nameGriddedField2(void *data)
DLL_PUBLIC Index get_grid_sizeGriddedField4(Index i, void *data)
DLL_PUBLIC void * get_numeric_gridGriddedField5(Index i, void *data)
DLL_PUBLIC Index tickTimer()
DLL_PUBLIC void * get_list_of_all_workspace_classes()
Computations of line shape derived parameters.
QuantumIdentifier::QType Index LowerQuantumNumbers Species
#define BasicInputOutputCAPI(TYPE)
DLL_PUBLIC void setIndex(void *, Index)
DLL_PUBLIC Index isAbsorptionLinesOK(void *)
DLL_PUBLIC void set_nameGriddedField5(void *data, char *newdata)
DLL_PUBLIC void set_nameGriddedField3(void *data, char *newdata)
DLL_PUBLIC Index getFrequenciesRadiationVector(void *)
bool Absorption::CutoffType Absorption::MirroringType Absorption::NormalizationType CutoffFreqValue
DLL_PUBLIC bool supportTimer()
DLL_PUBLIC void set_gridGriddedField4(Index i, void *data, void *newdata, bool NumericType)
DLL_PUBLIC Index getrealtime_endTimer(void *)
Implements rational numbers to work with other ARTS types.
DLL_PUBLIC Index setStokesVector(void *, Index, Index, Index, Index, Numeric)
DLL_PUBLIC Index get_grid_sizeGriddedField1(Index i, void *data)
DLL_PUBLIC void set_gridGriddedField2(Index i, void *data, void *newdata, bool NumericType)
#define VoidArrayCAPI(TYPE)
DLL_PUBLIC void set_matrixBlock(void *, void *, bool)
DLL_PUBLIC void * getDataSpeciesAuxData(void *data, Index s, Index i)
DLL_PUBLIC Index setTypeRetrievalQuantity(void *, Index)
DLL_PUBLIC Index get_grid_sizeGriddedField6(Index i, void *data)
A tag group can consist of the sum of several of these.
DLL_PUBLIC void set_indicesBlock(void *, Index, Index)
DLL_PUBLIC Index getcputime_end_cstimeTimer(void *)
DLL_PUBLIC bool getOKPropagationMatrix(void *)
DLL_PUBLIC void * get_numeric_gridGriddedField6(Index i, void *data)
An absorption lookup table.
Class to identify and match lines by their quantum numbers.
DLL_PUBLIC Numeric getB2_EVEHTelsemAtlas(Index, void *)
DLL_PUBLIC Index getcputime_end_cutimeTimer(void *)
#define VoidArrayElemCAPI(TYPE, ELEM)
DLL_PUBLIC Index azimuthsStokesVector(void *)
DLL_PUBLIC void set_grid_nameGriddedField2(Index i, void *data, char *newdata)
#define BasicInterfaceCAPI(TYPE)
DLL_PUBLIC Index validAllIsotopologues(Index, Index)
DLL_PUBLIC bool checksizeGriddedField4(void *data)
DLL_PUBLIC Index get_grid_typeIndexGriddedField4(Index i, void *data)
DLL_PUBLIC Index rowsTensor5(void *)
void *DLL_PUBLIC Index booksTensor4(void *)
NUMERIC Numeric
The type to use for all floating point numbers.
DLL_PUBLIC bool validindexSpeciesAuxData(void *data, Index s, Index i)
idx idx dim constant start_pos start_lstep los lstep end_los nreal gp_p gp_lon void *DLL_PUBLIC Numeric * getMat2TransmissionMatrix(Index, void *)
#define VoidStructGetterCAPI(TYPE, VALUE)
DLL_PUBLIC void * get_numeric_gridGriddedField3(Index i, void *data)
DLL_PUBLIC Index get_strideRange(void *)
PopulationType
Describes the type of population level counter.
An Antenna object used by MCGeneral.
DLL_PUBLIC Index getcputime_end_stimeTimer(void *)
DLL_PUBLIC void * getSpeciesNameAbsorptionLines(void *)
Radiation Vector for Stokes dimension 1-4.
DLL_PUBLIC void * get_numeric_gridGriddedField1(Index i, void *data)
DLL_PUBLIC void setSpeciesXsecRecord(void *, Index)
DLL_PUBLIC char * get_grid_nameGriddedField6(Index i, void *data)
DLL_PUBLIC Index colsSparse(void *)
DLL_PUBLIC Index sizeSparse(void *)
DLL_PUBLIC Numeric * getVec4RadiationVector(Index, void *)
DLL_PUBLIC Index colsTensor7(void *)
DLL_PUBLIC Index getcputime_end_utimeTimer(void *)
DLL_PUBLIC Index zenithsPropagationMatrix(void *)
Container class for Quantum Numbers.
DLL_PUBLIC Index get_grid_typeIndexGriddedField2(Index i, void *data)
DLL_PUBLIC Index getcputime_start_utimeTimer(void *)
This can be used to make arrays out of anything.
get_blocks MainTag SubSubTag Analytical Grids TransformationFunc Transformation Integration
DLL_PUBLIC Numeric * getMat4TransmissionMatrix(Index, void *)
DLL_PUBLIC Index validContinuum(Index, Index)
DLL_PUBLIC Index getLineShapeModelParametersType(char *)
DLL_PUBLIC Index get_index2Block(void *)
DLL_PUBLIC void setcputime_end_cstimeTimer(void *, Index)
DLL_PUBLIC void set_nameGriddedField1(void *data, char *newdata)
DLL_PUBLIC void * dataGriddedField2(void *data)
DLL_PUBLIC Index get_grid_sizeGriddedField3(Index i, void *data)
DLL_PUBLIC Numeric getB0_EVEHTelsemAtlas(Index, void *)
DLL_PUBLIC char * get_nameGriddedField3(void *data)
DLL_PUBLIC Index getScreenVerbosity(void *)
DLL_PUBLIC Index getcputime_start_stimeTimer(void *)
DLL_PUBLIC void * get_string_gridGriddedField6(Index i, void *data)
DLL_PUBLIC void set_grid_nameGriddedField4(Index i, void *data, char *newdata)
DLL_PUBLIC Index colsTensor3(void *)
#define EnumGetterSetterCAPI(TYPE, VALUE, ENUM)
QuantumIdentifier::QType Index LowerQuantumNumbers Index Uf
DLL_PUBLIC Numeric * getDataTensor3(void *)
DLL_PUBLIC void * dataGriddedField1(void *data)
DLL_PUBLIC void setcputime_end_cutimeTimer(void *, Index)
DLL_PUBLIC char * get_nameGriddedField4(void *data)
DLL_PUBLIC Numeric getRAPPORT43_32TelsemAtlas(Index, void *)
DLL_PUBLIC Index rowsTensor7(void *)
DLL_PUBLIC Index getStokesDimTransmissionMatrix(void *)
DLL_PUBLIC Index get_grid_sizeGriddedField5(Index i, void *data)
DLL_PUBLIC char * get_nameGriddedField5(void *data)
DLL_PUBLIC void setTransmissionMatrix(void *, Index, Index)
DLL_PUBLIC Index validIsotopologue(Index, Index)
CIA data for a single pair of molecules.
DLL_PUBLIC Numeric * getVec3RadiationVector(Index, void *)
Structure to store a grid position for higher order interpolation.
void *DLL_PUBLIC Index nelemVector(void *)
DLL_PUBLIC void set_gridGriddedField1(Index i, void *data, void *newdata, bool NumericType)
DLL_PUBLIC void set_gridGriddedField6(Index i, void *data, void *newdata, bool NumericType)
#define VoidGetterCAPI(TYPE, VALUE)
DLL_PUBLIC Numeric * getDataTensor7(void *)
DLL_PUBLIC bool getMainVerbosity(void *)
DLL_PUBLIC Index getFrequenciesTransmissionMatrix(void *)
DLL_PUBLIC void * get_numeric_gridGriddedField2(Index i, void *data)
DLL_PUBLIC Index setTypeMCAntenna(void *, Index)
DLL_PUBLIC void * dataGriddedField6(void *data)
The structure to describe a propagation path and releated quantities.
DLL_PUBLIC bool checksizeGriddedField1(void *data)
Auxiliary data for isotopologues.
Namespace to contain things required for absorption calculations.
DLL_PUBLIC Index frequenciesStokesVector(void *)
DLL_PUBLIC char * get_grid_nameGriddedField4(Index i, void *data)
DLL_PUBLIC Numeric * getDataTensor4(void *)
DLL_PUBLIC void set_grid_nameGriddedField3(Index i, void *data, char *newdata)
DLL_PUBLIC void setRange(void *, Index, Index, Index)
QuantumIdentifier::QType Index LowerQuantumNumbers Index Numeric CIASecond
void *DLL_PUBLIC Index rowsMatrix(void *)
DLL_PUBLIC Numeric * getMat3TransmissionMatrix(Index, void *)
void *DLL_PUBLIC Index shelvesTensor5(void *)
DataCount Name Lat FirstCells Emis_err Classes1 Cellnumber void *DLL_PUBLIC Numeric getA0_K1TelsemAtlas(Index, void *)
DLL_PUBLIC Numeric getRAPPORT54_43TelsemAtlas(Index, void *)
DLL_PUBLIC Index rowsTensor3(void *)
DLL_PUBLIC void printLineShapeModelParameters(void *)
Compute the line shape parameters for a single broadening species.
DLL_PUBLIC Numeric getA0_EVEHTelsemAtlas(Index, void *)
DLL_PUBLIC char * get_grid_nameGriddedField2(Index i, void *data)
DLL_PUBLIC void setDataSparse(void *, Index, Index, Numeric)
DLL_PUBLIC Index shelvesTensor6(void *)
DLL_PUBLIC char * get_nameGriddedField6(void *data)
A placeholder for any type.
DLL_PUBLIC void setfinishedTimer(void *, bool)
DLL_PUBLIC void set_grid_nameGriddedField6(Index i, void *data, char *newdata)
G0 G2 FVC Y DV Numeric Numeric g_upp
void *DLL_PUBLIC Index librariesTensor7(void *)
DLL_PUBLIC Index get_index1Block(void *)
DLL_PUBLIC void * dataGriddedField5(void *data)
DLL_PUBLIC Index setPropagationMatrix(void *, Index, Index, Index, Index, Numeric)
DLL_PUBLIC void * get_string_gridGriddedField4(Index i, void *data)
DLL_PUBLIC bool lessTime(void *, void *)
DLL_PUBLIC bool checksizeGriddedField5(void *data)
DLL_PUBLIC Index getTypeSpeciesAuxData(void *data, Index s, Index i)