24 #include "openPMD/config.hpp" 25 #if openPMD_HAVE_ADIOS2 26 #include "openPMD/Datatype.hpp" 40 using bool_representation =
unsigned char;
44 static std::string type( );
49 static std::string type( );
52 template <
typename T,
size_t n >
55 static std::string type( );
60 static std::string type( );
65 template <
typename T > std::string operator( )( );
68 template <
int n > std::string operator( )( );
76 Datatype fromADIOS2Type( std::string
const & dt );
80 static typename std::vector< T >::size_type
81 getSize( adios2::IO &, std::string
const & attributeName );
86 static typename std::vector< long double >::size_type
87 getSize( adios2::IO &, std::string
const & )
89 throw std::runtime_error(
90 "[ADIOS2] Internal error: no support for long double complex attribute types" );
96 static typename std::vector< T >::size_type
97 getSize( adios2::IO &, std::string
const & attributeName );
102 static typename std::vector< std::complex< long double > >::size_type
103 getSize( adios2::IO &, std::string
const & )
105 throw std::runtime_error(
106 "[ADIOS2] Internal error: no support for long double complex vector attribute types" );
110 template <
typename T, std::
size_t n >
113 static typename std::vector< T >::size_type
114 getSize( adios2::IO & IO, std::string
const & attributeName )
122 static typename std::vector< bool_representation >::size_type
123 getSize( adios2::IO &, std::string
const & attributeName );
128 template <
typename T >
129 typename std::vector< T >::size_type
130 operator( )( adios2::IO &, std::string
const & attributeName );
132 template <
int n,
typename... Params >
133 size_t operator( )( Params &&... );
136 Datatype attributeInfo( adios2::IO &, std::string
const & attributeName );
141 #endif // openPMD_HAVE_ADIOS2 Definition: ADIOS2Auxiliary.hpp:63
Definition: ADIOS2Auxiliary.hpp:126
Datatype
Concrete datatype of an object available at runtime.
Definition: Datatype.hpp:42
Definition: Container.cpp:51
Public definitions of openPMD-api.
Definition: Date.cpp:28
Definition: ADIOS2Auxiliary.hpp:78
Definition: ADIOS2Auxiliary.hpp:42