|
IODA
|
#include <Has_Attributes.h>

Public Member Functions | |
| virtual | ~Has_Attributes_Base () |
| virtual detail::Type_Provider * | getTypeProvider () const |
| Query the backend and get the type provider. More... | |
General Functions | |
| virtual std::vector< std::string > | list () const |
| std::vector< std::string > | operator() () const |
| virtual bool | exists (const std::string &attname) const |
| Does an Attribute with the specified name exist? More... | |
| virtual void | remove (const std::string &attname) |
| Delete an Attribute with the specified name. More... | |
| virtual Attribute | open (const std::string &name) const |
| Open an Attribute by name. More... | |
| Attribute | operator[] (const std::string &name) const |
| Open Attribute by name. More... | |
| virtual std::vector< std::pair< std::string, Attribute > > | openAll () const |
| Open all attributes in an object. More... | |
| virtual Attribute | create (const std::string &attrname, const Type &in_memory_dataType, const std::vector< Dimensions_t > &dimensions={1}) |
| Create an Attribute without setting its data. More... | |
| Attribute | _create_py (const std::string &attrname, BasicTypes dataType, const std::vector< Dimensions_t > &dimensions={1}) |
| Python compatability function. More... | |
| template<class DataType , class TypeWrapper = Types::GetType_Wrapper<DataType>> | |
| Attribute | create (const std::string &attrname, const std::vector< Dimensions_t > &dimensions={1}) |
| Create an Attribute without setting its data. More... | |
| virtual void | rename (const std::string &oldName, const std::string &newName) |
| Rename an Attribute. More... | |
Protected Member Functions | |
| Has_Attributes_Base (std::shared_ptr< Has_Attributes_Backend >) | |
Private Attributes | |
| std::shared_ptr< Has_Attributes_Backend > | backend_ |
| Using an opaque object to implement the backend. More... | |
Friends | |
| class | Group_Backend |
| class | Variable_Backend |
Definition at line 271 of file Has_Attributes.h.
|
protected |
Definition at line 12 of file Has_Attributes.cpp.
|
virtualdefault |
|
inline |
Python compatability function.
Definition at line 333 of file Has_Attributes.h.

|
inline |
Create an Attribute without setting its data.
| DataType | is the type of the data. I.e. float, int, uint16_t, std::string, etc. |
| attrname | is the name of the Attribute. |
| dimensions | is a vector representing the size of the metadata. Each element of the vector is a dimension with a certain size. |
Definition at line 345 of file Has_Attributes.h.
|
virtual |
Create an Attribute without setting its data.
| attrname | is the name of the Attribute. |
| dimensions | is a vector representing the size of the metadata. Each element of the vector is a dimension with a certain size. |
| in_memory_datatype | is the runtime description of the Attribute's data type. |
Reimplemented in ioda::Engines::ObsStore::ObsStore_HasAttributes_Backend, and ioda::detail::Engines::HH::HH_HasAttributes.
Definition at line 114 of file Has_Attributes.cpp.

|
virtual |
Does an Attribute with the specified name exist?
| attname | is the name of the Attribute that we are looking for. |
Reimplemented in ioda::Engines::ObsStore::ObsStore_HasAttributes_Backend, and ioda::detail::Engines::HH::HH_HasAttributes.
Definition at line 30 of file Has_Attributes.cpp.

|
virtual |
Query the backend and get the type provider.
Reimplemented in ioda::Engines::ObsStore::ObsStore_HasAttributes_Backend, and ioda::detail::Engines::HH::HH_HasAttributes.
Definition at line 103 of file Has_Attributes.cpp.
|
virtual |
List all attributes
Reimplemented in ioda::Engines::ObsStore::ObsStore_HasAttributes_Backend, and ioda::detail::Engines::HH::HH_HasAttributes.
Definition at line 18 of file Has_Attributes.cpp.

|
virtual |
Open an Attribute by name.
| name | is the name of the Attribute to be opened. |
Reimplemented in ioda::detail::Engines::HH::HH_HasAttributes, and ioda::Engines::ObsStore::ObsStore_HasAttributes_Backend.
Definition at line 54 of file Has_Attributes.cpp.

|
virtual |
Open all attributes in an object.
This is a collective call, optimized for performance.
Reimplemented in ioda::detail::Has_Attributes_Backend.
Definition at line 66 of file Has_Attributes.cpp.

|
inline |
List all attributes
Definition at line 298 of file Has_Attributes.h.
|
inline |
Open Attribute by name.
| name | is the name of the Attribute to be opened. |
Definition at line 316 of file Has_Attributes.h.
|
virtual |
Delete an Attribute with the specified name.
| attname | is the name of the Attribute that we are deleting. |
| jedi::xError | if no such attribute exists. |
Reimplemented in ioda::Engines::ObsStore::ObsStore_HasAttributes_Backend, and ioda::detail::Engines::HH::HH_HasAttributes.
Definition at line 42 of file Has_Attributes.cpp.

|
virtual |
Rename an Attribute.
| oldName | is the name of the Attribute to be changed. |
| newName | is the new name of the Attribute. |
| jedi::xError | if oldName is not found. |
| jedi::xError | if newName already exists. |
Reimplemented in ioda::Engines::ObsStore::ObsStore_HasAttributes_Backend, and ioda::detail::Engines::HH::HH_HasAttributes.
Definition at line 91 of file Has_Attributes.cpp.

|
friend |
Definition at line 277 of file Has_Attributes.h.
|
friend |
Definition at line 278 of file Has_Attributes.h.
|
private |
Using an opaque object to implement the backend.
Definition at line 274 of file Has_Attributes.h.