IODA
ioda::Has_Variables Class Reference

This class exists inside of ioda::Group and provides the interface to manipulating Variables. More...

#include <Has_Variables.h>

Inheritance diagram for ioda::Has_Variables:
Collaboration diagram for ioda::Has_Variables:

Public Member Functions

virtual ~Has_Variables ()
 
 Has_Variables ()
 
 Has_Variables (std::shared_ptr< detail::Has_Variables_Backend >, std::shared_ptr< const detail::DataLayoutPolicy >=nullptr)
 
- Public Member Functions inherited from ioda::detail::Has_Variables_Base
virtual ~Has_Variables_Base ()
 
virtual void setLayout (std::shared_ptr< const detail::DataLayoutPolicy >)
 
virtual Type_ProvidergetTypeProvider () const
 Query the backend and get the type provider. More...
 
virtual FillValuePolicy getFillValuePolicy () const
 Get the fill value policy used for Variables within this Group. More...
 
virtual bool exists (const std::string &name) const
 Does a Variable with the specified name exist? More...
 
virtual void remove (const std::string &name)
 Delete an Attribute with the specified name. More...
 
virtual Variable open (const std::string &name) const
 Open a Variable by name. More...
 
Variable operator[] (const std::string &name) const
 Open a Variable by name. More...
 
virtual std::vector< std::string > list () const
 
std::vector< std::string > operator() () const
 
void stitchComplementaryVariables (bool removeOriginals=true)
 Combines all complementary variables as specified in the mapping file, opens them, and optionally removes the originals from the ObsGroup. More...
 
void convertVariableUnits (std::ostream &out=std::cerr)
 Converts unit to SI for all eligible variables. If conversion function not defined, stores unit as attribute. More...
 
virtual Variable create (const std::string &name, const Type &in_memory_dataType, const std::vector< Dimensions_t > &dimensions={1}, const std::vector< Dimensions_t > &max_dimensions={}, const VariableCreationParameters &params=VariableCreationParameters())
 Create a Variable without setting its data. More...
 
Variable _create_py (const std::string &name, BasicTypes dataType, const std::vector< Dimensions_t > &cur_dimensions={1}, const std::vector< Dimensions_t > &max_dimensions={}, const std::vector< Variable > &dimension_scales={}, const VariableCreationParameters &params=VariableCreationParameters())
 
Variable create (const std::string &name, const Type &in_memory_dataType, const ioda::Dimensions &dims, const VariableCreationParameters &params=VariableCreationParameters())
 
template<class DataType >
Variable create (const std::string &name, const std::vector< Dimensions_t > &dimensions={1}, const std::vector< Dimensions_t > &max_dimensions={}, const VariableCreationParameters &params=VariableCreationParameters::defaulted< DataType >())
 Create a Variable without setting its data. More...
 
template<class DataType >
Variable create (const std::string &name, const ioda::Dimensions &dims, const VariableCreationParameters &params=VariableCreationParameters::defaulted< DataType >())
 
template<class DataType >
Variable createWithScales (const std::string &name, const std::vector< Variable > &dimension_scales, const VariableCreationParameters &params=VariableCreationParameters::defaulted< DataType >())
 Convenience function to create a Variable from certain dimension scales. More...
 
void createWithScales (const NewVariables_t &newvars)
 Collective function optimized to mass-construct variables and attach scales. More...
 
virtual void attachDimensionScales (const std::vector< std::pair< Variable, std::vector< Variable >>> &mapping)
 Attach dimension scales to many Dimension Numbers in a set of Variables. More...
 

Additional Inherited Members

- Protected Member Functions inherited from ioda::detail::Has_Variables_Base
 Has_Variables_Base (std::shared_ptr< Has_Variables_Backend >, std::shared_ptr< const DataLayoutPolicy >=nullptr)
 

Detailed Description

This class exists inside of ioda::Group and provides the interface to manipulating Variables.

Note
It should only be constructed inside of a Group. It has no meaning elsewhere.
See also
ioda::Variable for the class that represents individual variables.
Exceptions
jedi::xErroron all exceptions.

Definition at line 412 of file Has_Variables.h.

Constructor & Destructor Documentation

◆ ~Has_Variables()

ioda::Has_Variables::~Has_Variables ( )
virtualdefault

◆ Has_Variables() [1/2]

ioda::Has_Variables::Has_Variables ( )

Definition at line 447 of file Has_Variables.cpp.

◆ Has_Variables() [2/2]

ioda::Has_Variables::Has_Variables ( std::shared_ptr< detail::Has_Variables_Backend b,
std::shared_ptr< const detail::DataLayoutPolicy pol = nullptr 
)

Definition at line 448 of file Has_Variables.cpp.


The documentation for this class was generated from the following files: