33 #ifndef IOSS_Ioad_AdiosWrapper_h 34 #define IOSS_Ioad_AdiosWrapper_h 42 class AdiosWrapper :
private adios2::ADIOS,
private adios2::IO,
private adios2::Engine
52 void DefineMetaVariable(
const std::string &meta_name,
const std::string &variable_name =
"");
55 void DefineVariable(
const std::string &
name,
const adios2::Dims &shape = adios2::Dims(),
56 const adios2::Dims &start = adios2::Dims(),
57 const adios2::Dims &count = adios2::Dims(),
58 const bool constantDims =
false);
59 template <
typename T>
void Put(
const std::string &
name,
const T *value);
63 template <
typename T>
void InquireAndPut(
const std::string &
name,
const T *value);
65 T
GetAttribute(
const std::string &attribute_name,
bool ignore_missing =
false,
66 T default_value = T());
68 template <
typename T>
void GetSync(adios2::Variable<T> var, T *
data);
70 template <
typename T>
void GetSync(std::string var_name, T *
data);
72 template <
typename T>
void GetSync(adios2::Variable<T> var, T &
data);
73 template <
typename T>
void GetSync(std::string var_name, T &
data);
77 const std::string &variable_name =
"");
79 T
GetMetaVariable(
const std::string &meta_name,
const std::string &variable_name =
"");
82 const std::string &variable_name =
"")
const;
86 using adios2::Engine::AllStepsBlocksInfo;
87 using adios2::IO::AvailableVariables;
88 using adios2::IO::InquireAttribute;
89 using adios2::IO::InquireVariable;
93 adios2::Engine
EngineInit(
const std::string &filename,
bool is_input);
107 #include "adios/AdiosWrapper.hpp" bool m_OpenStep
Definition: AdiosWrapper.h:100
T GetAttribute(const std::string &attribute_name, bool ignore_missing=false, T default_value=T())
int count_real_begin
Definition: AdiosWrapper.h:102
T GetMetaVariable(const std::string &meta_name, const std::string &variable_name="")
std::string EncodeMetaVariable(const std::string &meta_name, const std::string &variable_name="") const
Definition: AdiosWrapper.C:146
const std::string m_MetaSeparator
Definition: AdiosWrapper.h:95
void PutMetaVariable(const std::string &meta_name, T value, const std::string &variable_name="")
void Put(const std::string &name, const T *value)
void DefineVariable(const std::string &name, const adios2::Dims &shape=adios2::Dims(), const adios2::Dims &start=adios2::Dims(), const adios2::Dims &count=adios2::Dims(), const bool constantDims=false)
~AdiosWrapper()
Definition: AdiosWrapper.C:118
Definition: AdiosWrapper.h:42
const int m_Rank
Definition: AdiosWrapper.h:97
void EndStep()
Definition: AdiosWrapper.C:138
adios2::IO IOInit(const Ioss::PropertyManager &properties, bool is_input)
Definition: AdiosWrapper.C:47
const MPI_Comm m_Communicator
Definition: AdiosWrapper.h:98
void GetSync(adios2::Variable< T > var, T *data)
adios2::StepStatus BeginStep()
Definition: AdiosWrapper.C:124
A namespace for the adios database format.
Definition: AdiosWrapper.C:37
void InquireAndPut(const std::string &name, const T *value)
bool m_IsStreaming
Definition: AdiosWrapper.h:101
void DefineMetaVariable(const std::string &meta_name, const std::string &variable_name="")
void DefineAttribute(const std::string &name, const T &value)
int rank
Definition: Iocgns_DecompositionData.C:55
std::vector< char > data
Definition: cth_pressure_map.C:73
bool IsStreaming() const
Definition: AdiosWrapper.h:84
std::string name(Ioss::GroupingEntity *entity)
Definition: io_info.C:87
int MPI_Comm
Definition: Ioss_CodeTypes.h:88
AdiosWrapper(MPI_Comm communicator, const std::string &filename, bool is_input, unsigned long rank, const Ioss::PropertyManager &properties)
Definition: AdiosWrapper.C:39
A collection of Ioss::Property objects.
Definition: Ioss_PropertyManager.h:49
adios2::Engine EngineInit(const std::string &filename, bool is_input)
Definition: AdiosWrapper.C:109
std::pair< std::string, std::string > DecodeMetaName(std::string name) const
Definition: AdiosWrapper.C:157