ARTS 2.5.11 (git: 725533f0)
|
Handling of workspace memory. More...
#include <workspace_memory_handler.h>
Public Member Functions | |
WorkspaceMemoryHandler () | |
std::shared_ptr< void > | allocate (Index group_index) |
Allocate workspace WSV of given group. | |
std::shared_ptr< void > | duplicate (Index group_index, const std::shared_ptr< void > &ptr) |
Duplicate workspace variable of given group. | |
void | initialize () |
Initialization dispatch functions. | |
Handling of workspace memory.
The WorkspaceMemoryHandler class is the interface between the workspace and the implementations of the WS group classes. It dispatches calls to create, destroy and duplicate workspace variables to the corresponding classes.
Definition at line 20 of file workspace_memory_handler.h.
|
inline |
Definition at line 22 of file workspace_memory_handler.h.
|
inline |
Allocate workspace WSV of given group.
group_index | Index of the group to allocate. |
Definition at line 28 of file workspace_memory_handler.h.
Referenced by Workspace::duplicate(), and Workspace::emplace().
|
inline |
Duplicate workspace variable of given group.
group_index | The index of the group of the WSV. |
Pointer | to the WSV. WSV group with the given Index. |
Definition at line 35 of file workspace_memory_handler.h.
Referenced by Workspace::deepcopy(), and Workspace::duplicate().
void WorkspaceMemoryHandler::initialize | ( | ) |
Initialization dispatch functions.
Definition at line 622 of file workspace_memory_handler.cc.
References allocate_wsvg_AbsorptionLines(), allocate_wsvg_Agenda(), allocate_wsvg_Any(), allocate_wsvg_ArrayOfAbsorptionLines(), allocate_wsvg_ArrayOfAgenda(), allocate_wsvg_ArrayOfArrayOfAbsorptionLines(), allocate_wsvg_ArrayOfArrayOfGriddedField1(), allocate_wsvg_ArrayOfArrayOfGriddedField2(), allocate_wsvg_ArrayOfArrayOfGriddedField3(), allocate_wsvg_ArrayOfArrayOfIndex(), allocate_wsvg_ArrayOfArrayOfMatrix(), allocate_wsvg_ArrayOfArrayOfPropagationMatrix(), allocate_wsvg_ArrayOfArrayOfRadiationVector(), allocate_wsvg_ArrayOfArrayOfScatteringMetaData(), allocate_wsvg_ArrayOfArrayOfSingleScatteringData(), allocate_wsvg_ArrayOfArrayOfSpeciesTag(), allocate_wsvg_ArrayOfArrayOfStokesVector(), allocate_wsvg_ArrayOfArrayOfString(), allocate_wsvg_ArrayOfArrayOfTensor3(), allocate_wsvg_ArrayOfArrayOfTensor6(), allocate_wsvg_ArrayOfArrayOfTime(), allocate_wsvg_ArrayOfArrayOfTransmissionMatrix(), allocate_wsvg_ArrayOfArrayOfVector(), allocate_wsvg_ArrayOfCIARecord(), allocate_wsvg_ArrayOfGriddedField1(), allocate_wsvg_ArrayOfGriddedField2(), allocate_wsvg_ArrayOfGriddedField3(), allocate_wsvg_ArrayOfGriddedField4(), allocate_wsvg_ArrayOfIndex(), allocate_wsvg_ArrayOfJacobianTarget(), allocate_wsvg_ArrayOfMatrix(), allocate_wsvg_ArrayOfPpath(), allocate_wsvg_ArrayOfPropagationMatrix(), allocate_wsvg_ArrayOfQuantumIdentifier(), allocate_wsvg_ArrayOfRadiationVector(), allocate_wsvg_ArrayOfRetrievalQuantity(), allocate_wsvg_ArrayOfScatteringMetaData(), allocate_wsvg_ArrayOfSingleScatteringData(), allocate_wsvg_ArrayOfSparse(), allocate_wsvg_ArrayOfSpeciesTag(), allocate_wsvg_ArrayOfStokesVector(), allocate_wsvg_ArrayOfString(), allocate_wsvg_ArrayOfSun(), allocate_wsvg_ArrayOfTelsemAtlas(), allocate_wsvg_ArrayOfTensor3(), allocate_wsvg_ArrayOfTensor4(), allocate_wsvg_ArrayOfTensor5(), allocate_wsvg_ArrayOfTensor6(), allocate_wsvg_ArrayOfTensor7(), allocate_wsvg_ArrayOfTime(), allocate_wsvg_ArrayOfTransmissionMatrix(), allocate_wsvg_ArrayOfVector(), allocate_wsvg_ArrayOfXsecRecord(), allocate_wsvg_CallbackFunction(), allocate_wsvg_CIARecord(), allocate_wsvg_CovarianceMatrix(), allocate_wsvg_EnergyLevelMap(), allocate_wsvg_GasAbsLookup(), allocate_wsvg_GriddedField1(), allocate_wsvg_GriddedField2(), allocate_wsvg_GriddedField3(), allocate_wsvg_GriddedField4(), allocate_wsvg_GriddedField5(), allocate_wsvg_GriddedField6(), allocate_wsvg_GridPos(), allocate_wsvg_HitranRelaxationMatrixData(), allocate_wsvg_Index(), allocate_wsvg_JacobianTarget(), allocate_wsvg_MapOfErrorCorrectedSuddenData(), allocate_wsvg_Matrix(), allocate_wsvg_MCAntenna(), allocate_wsvg_Numeric(), allocate_wsvg_Ppath(), allocate_wsvg_PredefinedModelData(), allocate_wsvg_PropagationMatrix(), allocate_wsvg_QuantumIdentifier(), allocate_wsvg_RadiationVector(), allocate_wsvg_Rational(), allocate_wsvg_ScatteringMetaData(), allocate_wsvg_SingleScatteringData(), allocate_wsvg_Sparse(), allocate_wsvg_SpeciesIsotopologueRatios(), allocate_wsvg_SpectralRadianceProfileOperator(), allocate_wsvg_StokesVector(), allocate_wsvg_String(), allocate_wsvg_TelsemAtlas(), allocate_wsvg_Tensor3(), allocate_wsvg_Tensor4(), allocate_wsvg_Tensor5(), allocate_wsvg_Tensor6(), allocate_wsvg_Tensor7(), allocate_wsvg_TessemNN(), allocate_wsvg_Time(), allocate_wsvg_Timer(), allocate_wsvg_TransmissionMatrix(), allocate_wsvg_Vector(), allocate_wsvg_Verbosity(), duplicate_wsvg_AbsorptionLines(), duplicate_wsvg_Agenda(), duplicate_wsvg_Any(), duplicate_wsvg_ArrayOfAbsorptionLines(), duplicate_wsvg_ArrayOfAgenda(), duplicate_wsvg_ArrayOfArrayOfAbsorptionLines(), duplicate_wsvg_ArrayOfArrayOfGriddedField1(), duplicate_wsvg_ArrayOfArrayOfGriddedField2(), duplicate_wsvg_ArrayOfArrayOfGriddedField3(), duplicate_wsvg_ArrayOfArrayOfIndex(), duplicate_wsvg_ArrayOfArrayOfMatrix(), duplicate_wsvg_ArrayOfArrayOfPropagationMatrix(), duplicate_wsvg_ArrayOfArrayOfRadiationVector(), duplicate_wsvg_ArrayOfArrayOfScatteringMetaData(), duplicate_wsvg_ArrayOfArrayOfSingleScatteringData(), duplicate_wsvg_ArrayOfArrayOfSpeciesTag(), duplicate_wsvg_ArrayOfArrayOfStokesVector(), duplicate_wsvg_ArrayOfArrayOfString(), duplicate_wsvg_ArrayOfArrayOfTensor3(), duplicate_wsvg_ArrayOfArrayOfTensor6(), duplicate_wsvg_ArrayOfArrayOfTime(), duplicate_wsvg_ArrayOfArrayOfTransmissionMatrix(), duplicate_wsvg_ArrayOfArrayOfVector(), duplicate_wsvg_ArrayOfCIARecord(), duplicate_wsvg_ArrayOfGriddedField1(), duplicate_wsvg_ArrayOfGriddedField2(), duplicate_wsvg_ArrayOfGriddedField3(), duplicate_wsvg_ArrayOfGriddedField4(), duplicate_wsvg_ArrayOfIndex(), duplicate_wsvg_ArrayOfJacobianTarget(), duplicate_wsvg_ArrayOfMatrix(), duplicate_wsvg_ArrayOfPpath(), duplicate_wsvg_ArrayOfPropagationMatrix(), duplicate_wsvg_ArrayOfQuantumIdentifier(), duplicate_wsvg_ArrayOfRadiationVector(), duplicate_wsvg_ArrayOfRetrievalQuantity(), duplicate_wsvg_ArrayOfScatteringMetaData(), duplicate_wsvg_ArrayOfSingleScatteringData(), duplicate_wsvg_ArrayOfSparse(), duplicate_wsvg_ArrayOfSpeciesTag(), duplicate_wsvg_ArrayOfStokesVector(), duplicate_wsvg_ArrayOfString(), duplicate_wsvg_ArrayOfSun(), duplicate_wsvg_ArrayOfTelsemAtlas(), duplicate_wsvg_ArrayOfTensor3(), duplicate_wsvg_ArrayOfTensor4(), duplicate_wsvg_ArrayOfTensor5(), duplicate_wsvg_ArrayOfTensor6(), duplicate_wsvg_ArrayOfTensor7(), duplicate_wsvg_ArrayOfTime(), duplicate_wsvg_ArrayOfTransmissionMatrix(), duplicate_wsvg_ArrayOfVector(), duplicate_wsvg_ArrayOfXsecRecord(), duplicate_wsvg_CallbackFunction(), duplicate_wsvg_CIARecord(), duplicate_wsvg_CovarianceMatrix(), duplicate_wsvg_EnergyLevelMap(), duplicate_wsvg_GasAbsLookup(), duplicate_wsvg_GriddedField1(), duplicate_wsvg_GriddedField2(), duplicate_wsvg_GriddedField3(), duplicate_wsvg_GriddedField4(), duplicate_wsvg_GriddedField5(), duplicate_wsvg_GriddedField6(), duplicate_wsvg_GridPos(), duplicate_wsvg_HitranRelaxationMatrixData(), duplicate_wsvg_Index(), duplicate_wsvg_JacobianTarget(), duplicate_wsvg_MapOfErrorCorrectedSuddenData(), duplicate_wsvg_Matrix(), duplicate_wsvg_MCAntenna(), duplicate_wsvg_Numeric(), duplicate_wsvg_Ppath(), duplicate_wsvg_PredefinedModelData(), duplicate_wsvg_PropagationMatrix(), duplicate_wsvg_QuantumIdentifier(), duplicate_wsvg_RadiationVector(), duplicate_wsvg_Rational(), duplicate_wsvg_ScatteringMetaData(), duplicate_wsvg_SingleScatteringData(), duplicate_wsvg_Sparse(), duplicate_wsvg_SpeciesIsotopologueRatios(), duplicate_wsvg_SpectralRadianceProfileOperator(), duplicate_wsvg_StokesVector(), duplicate_wsvg_String(), duplicate_wsvg_TelsemAtlas(), duplicate_wsvg_Tensor3(), duplicate_wsvg_Tensor4(), duplicate_wsvg_Tensor5(), duplicate_wsvg_Tensor6(), duplicate_wsvg_Tensor7(), duplicate_wsvg_TessemNN(), duplicate_wsvg_Time(), duplicate_wsvg_Timer(), duplicate_wsvg_TransmissionMatrix(), duplicate_wsvg_Vector(), and duplicate_wsvg_Verbosity().
Referenced by main().