23 #include "openPMD/backend/Attributable.hpp"
24 #include "openPMD/Dataset.hpp"
27 #ifndef OPENPMD_protected
28 # define OPENPMD_protected protected
47 double unitSI()
const;
84 std::shared_ptr< Dataset > m_dataset;
85 std::shared_ptr< bool > m_isConstant;
98 template<
typename T_RecordComponent >
101 template<
typename T >
103 operator()( T_RecordComponent & rc )
105 rc.makeConstant(
T() );
108 template<
unsigned n,
typename... Args >
110 operator()( Args &&... )
112 throw std::runtime_error(
113 "makeEmpty: Datatype not supported by openPMD." );
Datatype
Concrete datatype of an object available at runtime.
Definition: Datatype.hpp:45
Definition: Attributable.hpp:401
Public definitions of openPMD-api.
Definition: Date.cpp:29
Map-like container that enforces openPMD requirements and handles IO.
Definition: Container.hpp:106
Functor template to be used in combination with switchType::operator() to set a default value for con...
Definition: BaseRecordComponent.hpp:99
Definition: BaseRecordComponent.hpp:34
ChunkTable availableChunks()
Get data chunks that are available to be loaded from the backend.
Definition: BaseRecordComponent.cpp:60
bool constant() const
Returns true if this is a constant record component.
Definition: BaseRecordComponent.cpp:54