diff options
Diffstat (limited to 'c++/descriptor.h')
-rw-r--r-- | c++/descriptor.h | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/c++/descriptor.h b/c++/descriptor.h new file mode 100644 index 0000000..f0f7f28 --- /dev/null +++ b/c++/descriptor.h @@ -0,0 +1,31 @@ +#pragma once + +#include <forstio/codec/schema.h> + +namespace kel { +namespace lbm { +namespace schema { +using namespace saw::schema; + +template<typename T, uint64_t D, uint64_t Q> +struct Descriptor {}; + +template<typename T, uint64_t D, uint64_t Q, uint64_t SC, uint64_t DC, uint64_t QC> +using CellType = FixedArray<T,SC+D*DC+Q*QC>; + +/** + * T... is restricted to Member schemas + */ +template<typename... CellT> +using CellData = Struct< + CellT... +>; + +/** + * T is an array of CellData + */ +template<size_t D, typename T> +using Lattice = Array<T, D>; +} +} +} |