diff options
| author | Claudius "keldu" Holeksa <mail@keldu.de> | 2026-07-23 17:28:51 +0200 |
|---|---|---|
| committer | Claudius "keldu" Holeksa <mail@keldu.de> | 2026-07-23 17:28:51 +0200 |
| commit | c8bea2d6a8c6cd6b0950d75646eef0becf1fce1e (patch) | |
| tree | 81e00012524b5b303770e0977769c24716d1f181 /modules/core/c++/abstract/schema.hpp | |
| parent | da8cb1c7dd40ef18b85685f99369a31ee36370a1 (diff) | |
| parent | 3489ac1d725c0eadb7d75329f9e6074ed177d125 (diff) | |
| download | libs-lbm-c8bea2d6a8c6cd6b0950d75646eef0becf1fce1e.tar.gz | |
Merge branch 'dev'
Diffstat (limited to 'modules/core/c++/abstract/schema.hpp')
| -rw-r--r-- | modules/core/c++/abstract/schema.hpp | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/modules/core/c++/abstract/schema.hpp b/modules/core/c++/abstract/schema.hpp index 8305005..8bc23b4 100644 --- a/modules/core/c++/abstract/schema.hpp +++ b/modules/core/c++/abstract/schema.hpp @@ -4,6 +4,7 @@ #include "templates.hpp" namespace kel { +namespace lbm { namespace sch { struct Void {}; @@ -26,6 +27,27 @@ struct Primitive { static constexpr uint64_t Bytes = N; }; +using UInt8 = Primitive<UnsignedInteger,1u>; +using UInt16 = Primitive<UnsignedInteger,2u>; +using UInt32 = Primitive<UnsignedInteger,4u>; +using UInt64 = Primitive<UnsignedInteger,8u>; + +using Int8 = Primitive<SignedInteger,1u>; +using Int16 = Primitive<SignedInteger,2u>; +using Int32 = Primitive<SignedInteger,4u>; +using Int64 = Primitive<SignedInteger,8u>; + +using Float8 = Primitive<FloatingPoint,1u>; +using Float16 = Primitive<FloatingPoint,2u>; +using Float32 = Primitive<FloatingPoint,4u>; +using Float64 = Primitive<FloatingPoint,8u>; + +template<typename Sch, uint64_t StorageBytes, uint64_t InterfaceBytes> +struct MixedPrecision { + using Meta = Void; + using Inner = Sch; +}; + template<typename T, uint64_t... Dims> struct FixedArray { using Meta = Void; @@ -37,7 +59,7 @@ template<typename T, uint64_t Dims> struct Array { using Meta = FixedArray<UInt64,Dims>; using Inner = T; - static constexpr std::array<uint64_t,sizeof...(Dims)> Dimensions{Dims}; + static constexpr std::array<uint64_t,1u> Dimensions{Dims}; }; template<typename... T> @@ -58,3 +80,4 @@ struct schema { }; } +} |
