From 9761783c2a98202c76b9bfd59345bd3c1d86a001 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Franz=20P=C3=B6schel?= Date: Tue, 21 May 2024 15:47:03 +0200 Subject: [PATCH 1/2] Add API to reset memory selection --- bindings/CXX11/adios2/cxx11/Variable.h | 2 +- source/adios2/core/VariableBase.cpp | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/bindings/CXX11/adios2/cxx11/Variable.h b/bindings/CXX11/adios2/cxx11/Variable.h index b2263a5780..ded48baded 100644 --- a/bindings/CXX11/adios2/cxx11/Variable.h +++ b/bindings/CXX11/adios2/cxx11/Variable.h @@ -214,7 +214,7 @@ class Variable * variable.Count() = {Ny,Nx}, then memoryCount = {Ny+2,Nx+2} * */ - void SetMemorySelection(const adios2::Box &memorySelection); + void SetMemorySelection(const adios2::Box &memorySelection = {{}, {}}); /** * Sets a step selection modifying current startStep, countStep diff --git a/source/adios2/core/VariableBase.cpp b/source/adios2/core/VariableBase.cpp index 2eb3442c0c..4e1d861b4b 100644 --- a/source/adios2/core/VariableBase.cpp +++ b/source/adios2/core/VariableBase.cpp @@ -221,6 +221,13 @@ void VariableBase::SetMemorySelection(const Box &memorySelection) const Dims &memoryStart = memorySelection.first; const Dims &memoryCount = memorySelection.second; + if(memoryStart.empty() && memoryCount.empty()) + { + m_MemoryStart.clear(); + m_MemoryCount.clear(); + return; + } + if (m_SingleValue) { helper::Throw("Core", "VariableBase", "SetMemorySelection", From 591f017f3aca5b096b6c070ec6bfff4dd47cf373 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Franz=20P=C3=B6schel?= Date: Wed, 22 May 2024 16:03:09 +0200 Subject: [PATCH 2/2] clang-format --- source/adios2/core/VariableBase.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/adios2/core/VariableBase.cpp b/source/adios2/core/VariableBase.cpp index 4e1d861b4b..0bb9311471 100644 --- a/source/adios2/core/VariableBase.cpp +++ b/source/adios2/core/VariableBase.cpp @@ -221,7 +221,7 @@ void VariableBase::SetMemorySelection(const Box &memorySelection) const Dims &memoryStart = memorySelection.first; const Dims &memoryCount = memorySelection.second; - if(memoryStart.empty() && memoryCount.empty()) + if (memoryStart.empty() && memoryCount.empty()) { m_MemoryStart.clear(); m_MemoryCount.clear();