22 struct VariableCreationParameters;
26 namespace python_bindings {
29 template <
class C = Variable>
37 return parent_->template isA<T>();
42 template <
class C = Variable>
52 parent_->template read<T>(vals, mem_selection, file_selection);
58 template <
class C = Variable>
65 Eigen::Array<T, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor>
read(
68 Eigen::Array<T, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor> vals;
70 parent_->readWithEigenRegular(vals, mem_selection, file_selection);
72 parent_->template readWithEigenRegular(vals, mem_selection, file_selection);
79 template <
class C = Variable>
88 parent_->template write<T>(vals, mem_selection, file_selection);
93 template <
class C = Variable>
100 void write(
const Eigen::Array<T, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor>& vals,
104 parent_->writeWithEigenRegular(vals, mem_selection, file_selection);
106 parent_->template writeWithEigenRegular(vals, mem_selection, file_selection);
112 template <
class C = Variable>
118 inline void attach(
unsigned int DimensionNumber,
const C& scale) {
119 parent_->attachDimensionScale(DimensionNumber, scale);
121 inline void detach(
unsigned int DimensionNumber,
const C& scale) {
122 parent_->detachDimensionScale(DimensionNumber, scale);
125 inline void set(
const std::vector<C>& scales) {
parent_->setDimScale(scales); }
131 inline bool isAttached(
unsigned int DimensionNumber,
const C& scale)
const {
132 return parent_->isDimensionScaleAttached(DimensionNumber, scale);
137 template <
class C = Variable>
145 parent_->template setFillValue<T>(fill);
Dataspace selections for reading and writing ioda::Variable data.
A Selection represents the bounds of the data, in ioda or in userspace, that you are reading or writi...
VariableCreationFillValues(C *p)
void setFillValue(T fill) const
Eigen::Array< T, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor > read(const Selection &mem_selection=Selection::all, const Selection &file_selection=Selection::all) const
VariableReadNPArray(C *p)
std::vector< T > read(const Selection &mem_selection=Selection::all, const Selection &file_selection=Selection::all) const
bool isAttached(unsigned int DimensionNumber, const C &scale) const
std::string getScaleName() const
void detach(unsigned int DimensionNumber, const C &scale)
void setIsScale(const std::string &name)
void set(const std::vector< C > &scales)
void attach(unsigned int DimensionNumber, const C &scale)
void write(const Eigen::Array< T, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor > &vals, const Selection &mem_selection=Selection::all, const Selection &file_selection=Selection::all) const
VariableWriteNPArray(C *p)
void write(const std::vector< T > &vals, const Selection &mem_selection=Selection::all, const Selection &file_selection=Selection::all) const
VariableWriteVector(C *p)
static IODA_DL const Selection all