diff options
Diffstat (limited to 'lib/sycl/c++')
| -rw-r--r-- | lib/sycl/c++/data.hpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/lib/sycl/c++/data.hpp b/lib/sycl/c++/data.hpp index 0206833..71627de 100644 --- a/lib/sycl/c++/data.hpp +++ b/lib/sycl/c++/data.hpp @@ -278,6 +278,10 @@ public: return data<InnerSchema,kel::lbm::encode::Sycl<Encode>>::get_dims(); } + static constexpr auto ghost_meta() { + return data<InnerSchema,kel::lbm::encode::Sycl<Encode>>::meta(); + } + data<ValueSchema, Encode>& at(const data<schema::FixedArray<schema::UInt64,sizeof...(Sides)>>& index){ std::decay_t<decltype(index)> ind; for(uint64_t i = 0u; i < sizeof...(Sides); ++i){ @@ -298,6 +302,10 @@ public: return data<schema::FixedArray<schema::UInt64, sizeof...(Sides)>,Encode>{{Sides...}}; } + static constexpr auto meta(){ + return data<schema::FixedArray<schema::UInt64, sizeof...(Sides)>,Encode>{{Sides...}}; + } + auto flat_data() const { return values_.flat_data(); } @@ -345,6 +353,10 @@ public: return data<InnerSchema,kel::lbm::encode::Sycl<Encode>>::get_dims(); } + static constexpr auto ghost_meta() { + return data<InnerSchema,kel::lbm::encode::Sycl<Encode>>::meta(); + } + data<ValueSchema, Encode>& at(const data<schema::FixedArray<schema::UInt64,sizeof...(Sides)>>& index){ std::decay_t<decltype(index)> ind; for(uint64_t i = 0u; i < sizeof...(Sides); ++i){ @@ -361,6 +373,10 @@ public: return values_.at(ind); } + static constexpr auto meta(){ + return data<schema::FixedArray<schema::UInt64, sizeof...(Sides)>,Encode>{{Sides...}}; + } + static constexpr auto get_dims(){ return data<schema::FixedArray<schema::UInt64, sizeof...(Sides)>,Encode>{{Sides...}}; } |
