\doxysection{Metadata.\+h} \hypertarget{_metadata_8h_source}{}\label{_metadata_8h_source}\index{src/dobj/public/Metadata.h@{src/dobj/public/Metadata.h}} \mbox{\hyperlink{_metadata_8h}{Go to the documentation of this file.}} \begin{DoxyCode}{0} \DoxyCodeLine{00001\ \textcolor{preprocessor}{\#ifndef\ METADATA\_H}} \DoxyCodeLine{00002\ \textcolor{preprocessor}{\#define\ METADATA\_H}} \DoxyCodeLine{00003\ } \DoxyCodeLine{00004\ \textcolor{preprocessor}{\#if\ defined(\_\_APPLE\_\_)\ ||\ defined(\_\_linux\_\_)}} \DoxyCodeLine{00005\ \textcolor{preprocessor}{\#define\ EXPORT\_SYMBOL\ \_\_attribute\_\_((visibility("{}default"{})))}} \DoxyCodeLine{00006\ \textcolor{preprocessor}{\#else}} \DoxyCodeLine{00007\ \textcolor{preprocessor}{\#define\ EXPORT\_SYMBOL}} \DoxyCodeLine{00008\ \textcolor{preprocessor}{\#endif}} \DoxyCodeLine{00009\ } \DoxyCodeLine{00010\ \textcolor{preprocessor}{\#include\ }} \DoxyCodeLine{00011\ \textcolor{preprocessor}{\#include\ }} \DoxyCodeLine{00012\ \textcolor{preprocessor}{\#include\ }} \DoxyCodeLine{00013\ \textcolor{preprocessor}{\#include\ }} \DoxyCodeLine{00014\ } \DoxyCodeLine{00022\ } \DoxyCodeLine{00031\ \textcolor{keyword}{class\ }EXPORT\_SYMBOL\ \mbox{\hyperlink{class_metadata_ae849560667461008cb72e83919c20be0}{Metadata}}\ \{} \DoxyCodeLine{00032\ \textcolor{keyword}{public}:} \DoxyCodeLine{00036\ \ \ \ \ \mbox{\hyperlink{class_metadata_ae849560667461008cb72e83919c20be0}{Metadata}}()\ =\ \textcolor{keywordflow}{default};} \DoxyCodeLine{00037\ } \DoxyCodeLine{00046\ \ \ \ \ \mbox{\hyperlink{class_metadata_ae849560667461008cb72e83919c20be0}{Metadata}}(std::size\_t\ byteSize,\ std::string\ dataType,\ std::vector\ dimensions,\ \textcolor{keywordtype}{bool}\ debugFlag\ =\ \textcolor{keyword}{false});} \DoxyCodeLine{00047\ } \DoxyCodeLine{00052\ \ \ \ \ [[nodiscard]]\ std::size\_t\ \mbox{\hyperlink{class_metadata_ac7980d1efdd6ae434f0115f83d08348e}{getByteSize}}()\ const\ noexcept;} \DoxyCodeLine{00053\ } \DoxyCodeLine{00058\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_metadata_a07035de7b0c780ef340e1a11c60a4d2b}{setByteSize}}(std::\textcolor{keywordtype}{size\_t}\ byteSize)\ noexcept;} \DoxyCodeLine{00059\ } \DoxyCodeLine{00064\ \ \ \ \ [[nodiscard]]\ const\ std::\textcolor{keywordtype}{string}\&\ \mbox{\hyperlink{class_metadata_aeed7f22ccc61d9a3d6425441d381dcdc}{getDataType}}()\ const\ noexcept;} \DoxyCodeLine{00065\ } \DoxyCodeLine{00070\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_metadata_a88f4f57d443e2b7664e75e57a29dfbf0}{setDataType}}(const\ std::\textcolor{keywordtype}{string}\&\ dataType);} \DoxyCodeLine{00071\ } \DoxyCodeLine{00076\ \ \ \ \ [[nodiscard]]\ const\ std::vector\&\ \mbox{\hyperlink{class_metadata_a412c0c0b8754d85f9edbbdcd637f3b20}{getDimensions}}()\ const\ noexcept;} \DoxyCodeLine{00077\ } \DoxyCodeLine{00082\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_metadata_af5264d1666839e69c192b565b5cfa606}{setDimensions}}(const\ std::vector\&\ dimensions);} \DoxyCodeLine{00083\ } \DoxyCodeLine{00088\ \ \ \ \ [[nodiscard]]\ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{class_metadata_abe52c81e04665628666b4140cd346b69}{isDebugEnabled}}()\ const\ noexcept;} \DoxyCodeLine{00089\ } \DoxyCodeLine{00094\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_metadata_a365c4594ad65c3b10b40a1cf4f4aea26}{setDebugEnabled}}(\textcolor{keywordtype}{bool}\ debugFlag)\ noexcept;} \DoxyCodeLine{00095\ } \DoxyCodeLine{00103\ \ \ \ \ friend\ std::ostream\&\ operator<<(std::ostream\&\ os,\ const\ \mbox{\hyperlink{class_metadata_ae849560667461008cb72e83919c20be0}{Metadata}}\&\ metadata);} \DoxyCodeLine{00104\ } \DoxyCodeLine{00105\ private:} \DoxyCodeLine{00106\ \ \ \ \ std::\textcolor{keywordtype}{size\_t}\ byteSize\_\ =\ 0;\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ } \DoxyCodeLine{00107\ \ \ \ \ std::\textcolor{keywordtype}{string}\ dataType\_;\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ } \DoxyCodeLine{00108\ \ \ \ \ std::vector\ dimensions\_;\ \ \ \ \ \ \ \ \ \ \ } \DoxyCodeLine{00109\ \ \ \ \ \textcolor{keywordtype}{bool}\ debugFlag\_\ =\ false;\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ } \DoxyCodeLine{00110\ \};} \DoxyCodeLine{00111\ } \DoxyCodeLine{00112\ \textcolor{preprocessor}{\#endif\ }\textcolor{comment}{//\ METADATA\_H}} \end{DoxyCode}