Skip to content
Snippets Groups Projects
Commit 272803ad authored by Podhorszki, Norbert's avatar Podhorszki, Norbert
Browse files

Address more PR comments before merging

parent a270975d
No related branches found
No related tags found
1 merge request!102Variables3
...@@ -48,13 +48,13 @@ int main(int argc, char *argv[]) ...@@ -48,13 +48,13 @@ int main(int argc, char *argv[])
{ {
// Define variable and local size // Define variable and local size
adios::Variable<double> &ioMyDoubles = adios::Variable<double> &ioMyDoubles =
adios.DefineLocalArray<double>("myDoubles", false, {Nx}); adios.DefineVariable<double>("myDoubles", {}, {}, {Nx});
adios::Variable<float> &ioMyMatrix = adios::Variable<float> &ioMyMatrix = adios.DefineVariable<float>(
adios.DefineLocalArray<float>("myMatrix", true, {rows, columns}); "myMatrix", {adios::JoinedDim, columns}, {}, {rows, columns});
adios::Variable<float> &ioMyMatrix2 = adios::Variable<float> &ioMyMatrix2 =
adios.DefineLocalArray<float>("myMatrix2", false, {rows, columns}); adios.DefineVariable<float>("myMatrix2", {}, {}, {rows, columns});
// Define method for engine creation, it is basically straight-forward // Define method for engine creation, it is basically straight-forward
// parameters // parameters
......
...@@ -40,11 +40,11 @@ int main(int /*argc*/, char ** /*argv*/) ...@@ -40,11 +40,11 @@ int main(int /*argc*/, char ** /*argv*/)
{ {
// Define variable and local size // Define variable and local size
adios::Variable<double> &ioMyDoubles = adios::Variable<double> &ioMyDoubles =
adios.DefineVariable<double>("myDoubles", {Nx}); adios.DefineVariable<double>("myDoubles", {}, {}, {Nx});
adios::Variable<float> &ioMyMatrix = adios::Variable<float> &ioMyMatrix = adios.DefineVariable<float>(
adios.DefineVariable<float>("myMatrix", {rows, columns}); "myMatrix", {adios::JoinedDim, columns}, {}, {rows, columns});
adios::Variable<float> &ioMyMatrix2 = adios::Variable<float> &ioMyMatrix2 =
adios.DefineVariable<float>("myMatrix2", {rows, columns}); adios.DefineVariable<float>("myMatrix2", {}, {}, {rows, columns});
// Define method for engine creation, it is basically straight-forward // Define method for engine creation, it is basically straight-forward
// parameters // parameters
......
...@@ -104,7 +104,7 @@ public: ...@@ -104,7 +104,7 @@ public:
template <class T> template <class T>
Variable<T> &DefineVariable(const std::string &name, const Dims shape = {}, Variable<T> &DefineVariable(const std::string &name, const Dims shape = {},
const Dims start = {}, const Dims count = {}, const Dims start = {}, const Dims count = {},
bool constantShape = false); const bool constantShape = false);
template <class T> template <class T>
Variable<T> &DefineLocalValue(const std::string &name) Variable<T> &DefineLocalValue(const std::string &name)
...@@ -370,7 +370,7 @@ protected: // no const to allow default empty and copy constructors ...@@ -370,7 +370,7 @@ protected: // no const to allow default empty and copy constructors
#define declare_template_instantiation(T) \ #define declare_template_instantiation(T) \
extern template Variable<T> &ADIOS::DefineVariable<T>( \ extern template Variable<T> &ADIOS::DefineVariable<T>( \
const std::string &name, const Dims, const Dims, const Dims, \ const std::string &name, const Dims, const Dims, const Dims, \
bool constantShape); \ const bool constantShape); \
\ \
extern template Variable<T> &ADIOS::GetVariable<T>(const std::string &); extern template Variable<T> &ADIOS::GetVariable<T>(const std::string &);
......
...@@ -122,7 +122,7 @@ ADIOS::GetVariableMap() ...@@ -122,7 +122,7 @@ ADIOS::GetVariableMap()
template <typename T> template <typename T>
Variable<T> &ADIOS::DefineVariable(const std::string &name, const Dims shape, Variable<T> &ADIOS::DefineVariable(const std::string &name, const Dims shape,
const Dims start, const Dims count, const Dims start, const Dims count,
bool constantShape) const bool constantShape)
{ {
auto &variableMap = GetVariableMap<T>(); auto &variableMap = GetVariableMap<T>();
CheckVariableInput(name, shape); CheckVariableInput(name, shape);
......
...@@ -14,6 +14,7 @@ ...@@ -14,6 +14,7 @@
#include <complex> #include <complex>
#include <cstddef> #include <cstddef>
#include <cstdint> #include <cstdint>
#include <limits>
#include <type_traits> #include <type_traits>
#include "adios2/ADIOSConfig.h" #include "adios2/ADIOSConfig.h"
...@@ -115,9 +116,9 @@ struct TypeInfo<T, typename std::enable_if<std::is_same< ...@@ -115,9 +116,9 @@ struct TypeInfo<T, typename std::enable_if<std::is_same<
}; };
const size_t UnknownDim = 0; const size_t UnknownDim = 0;
const size_t JoinedDim = SIZE_MAX - 1; const size_t JoinedDim = std::numeric_limits<size_t>::max() - 1;
const size_t IrregularDim = JoinedDim - 1;
const size_t LocalValueDim = JoinedDim - 1; const size_t LocalValueDim = JoinedDim - 1;
const size_t IrregularDim = JoinedDim - 2;
const bool ConstantShape = true; const bool ConstantShape = true;
enum class VarClass enum class VarClass
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment