8 #ifndef FILEIO_IODAIO_H_ 9 #define FILEIO_IODAIO_H_ 13 #include "oops/util/Printable.h" 69 class IodaIO :
public util::Printable {
74 virtual void ReadVar(
const std::string & VarName,
int* VarData) = 0;
75 virtual void ReadVar(
const std::string & VarName,
float* VarData) = 0;
76 virtual void ReadVar(
const std::string & VarName,
double* VarData) = 0;
78 virtual void WriteVar(
const std::string & VarName,
int* VarData) = 0;
79 virtual void WriteVar(
const std::string & VarName,
float* VarData) = 0;
80 virtual void WriteVar(
const std::string & VarName,
double* VarData) = 0;
82 virtual void ReadDateTime(
int* VarDate,
int* VarTime)= 0;
85 std::string
fname()
const;
86 std::string
fmode()
const;
121 #endif // FILEIO_IODAIO_H_ std::size_t nobs_
number of unique observations
std::string fname() const
virtual void ReadVar(const std::string &VarName, int *VarData)=0
std::size_t nlocs_
number of unique locations
std::string fname_
file name
File access class for IODA.
virtual void WriteVar(const std::string &VarName, int *VarData)=0
std::string fmode() const
virtual void ReadDateTime(int *VarDate, int *VarTime)=0
std::string fmode_
file mode ("r" -> read, "w" -> overwrite, "W" -> create and write)
std::size_t nrecs_
number of unique records
std::size_t nvars_
number of unique variables