Shamrock 2025.10.0
Astrophysical Code
Loading...
Searching...
No Matches
shammodels::sph::modules::RenderFieldGetter< Tvec, Tfield, SPHKernel > Class Template Reference
Collaboration diagram for shammodels::sph::modules::RenderFieldGetter< Tvec, Tfield, SPHKernel >:

Public Types

using Tscal = shambase::VecComponent<Tvec>
using Kernel = SPHKernel<Tscal>
using Config = SolverConfig<Tvec, SPHKernel>
using Storage = SolverStorage<Tvec, u32>
using field_getter_t
using lamda_runner = std::function<sham::DeviceBuffer<Tfield>(std::function<field_getter_t>)>

Public Member Functions

 RenderFieldGetter (ShamrockCtx &context, Config &solver_config, Storage &storage)
shamrock::solvergraph::Field< Tfield > build_field (std::string field_name, std::optional< std::function< py::array_t< Tfield >(size_t, pybind11::dict &)> > custom_getter=std::nullopt)
sham::DeviceBuffer< Tfield > runner_function (std::string field_name, lamda_runner lambda, std::optional< std::function< py::array_t< Tfield >(size_t, pybind11::dict &)> > custom_getter=std::nullopt)

Public Attributes

ShamrockCtxcontext
Config & solver_config
Storage & storage

Static Public Attributes

static constexpr u32 dim = shambase::VectorProperties<Tvec>::dimension

Detailed Description

template<class Tvec, class Tfield, template< class > class SPHKernel>
class shammodels::sph::modules::RenderFieldGetter< Tvec, Tfield, SPHKernel >

Definition at line 31 of file RenderFieldGetter.hpp.

Member Typedef Documentation

◆ Config

template<class Tvec, class Tfield, template< class > class SPHKernel>
using shammodels::sph::modules::RenderFieldGetter< Tvec, Tfield, SPHKernel >::Config = SolverConfig<Tvec, SPHKernel>

Definition at line 37 of file RenderFieldGetter.hpp.

◆ field_getter_t

template<class Tvec, class Tfield, template< class > class SPHKernel>
using shammodels::sph::modules::RenderFieldGetter< Tvec, Tfield, SPHKernel >::field_getter_t
Initial value:
A buffer allocated in USM (Unified Shared Memory).
PatchDataLayer container class, the layout is described in patchdata_layout.
Patch object that contain generic patch information.
Definition Patch.hpp:33

Definition at line 47 of file RenderFieldGetter.hpp.

◆ Kernel

template<class Tvec, class Tfield, template< class > class SPHKernel>
using shammodels::sph::modules::RenderFieldGetter< Tvec, Tfield, SPHKernel >::Kernel = SPHKernel<Tscal>

Definition at line 35 of file RenderFieldGetter.hpp.

◆ lamda_runner

template<class Tvec, class Tfield, template< class > class SPHKernel>
using shammodels::sph::modules::RenderFieldGetter< Tvec, Tfield, SPHKernel >::lamda_runner = std::function<sham::DeviceBuffer<Tfield>(std::function<field_getter_t>)>

Definition at line 50 of file RenderFieldGetter.hpp.

◆ Storage

template<class Tvec, class Tfield, template< class > class SPHKernel>
using shammodels::sph::modules::RenderFieldGetter< Tvec, Tfield, SPHKernel >::Storage = SolverStorage<Tvec, u32>

Definition at line 38 of file RenderFieldGetter.hpp.

◆ Tscal

template<class Tvec, class Tfield, template< class > class SPHKernel>
using shammodels::sph::modules::RenderFieldGetter< Tvec, Tfield, SPHKernel >::Tscal = shambase::VecComponent<Tvec>

Definition at line 33 of file RenderFieldGetter.hpp.

Constructor & Destructor Documentation

◆ RenderFieldGetter()

template<class Tvec, class Tfield, template< class > class SPHKernel>
shammodels::sph::modules::RenderFieldGetter< Tvec, Tfield, SPHKernel >::RenderFieldGetter ( ShamrockCtx & context,
Config & solver_config,
Storage & storage )
inline

Definition at line 44 of file RenderFieldGetter.hpp.

Member Function Documentation

◆ build_field()

template<class Tvec, class Tfield, template< class > class SPHKernel>
shamrock::solvergraph::Field< Tfield > shammodels::sph::modules::RenderFieldGetter< Tvec, Tfield, SPHKernel >::build_field ( std::string field_name,
std::optional< std::function< py::array_t< Tfield >(size_t, pybind11::dict &)> > custom_getter = std::nullopt )

Definition at line 32 of file RenderFieldGetter.cpp.

◆ runner_function()

template<class Tvec, class Tfield, template< class > class SPHKernel>
auto shammodels::sph::modules::RenderFieldGetter< Tvec, Tfield, SPHKernel >::runner_function ( std::string field_name,
lamda_runner lambda,
std::optional< std::function< py::array_t< Tfield >(size_t, pybind11::dict &)> > custom_getter = std::nullopt )

Definition at line 208 of file RenderFieldGetter.cpp.

Member Data Documentation

◆ context

template<class Tvec, class Tfield, template< class > class SPHKernel>
ShamrockCtx& shammodels::sph::modules::RenderFieldGetter< Tvec, Tfield, SPHKernel >::context

Definition at line 40 of file RenderFieldGetter.hpp.

◆ dim

template<class Tvec, class Tfield, template< class > class SPHKernel>
u32 shammodels::sph::modules::RenderFieldGetter< Tvec, Tfield, SPHKernel >::dim = shambase::VectorProperties<Tvec>::dimension
staticconstexpr

Definition at line 34 of file RenderFieldGetter.hpp.

◆ solver_config

template<class Tvec, class Tfield, template< class > class SPHKernel>
Config& shammodels::sph::modules::RenderFieldGetter< Tvec, Tfield, SPHKernel >::solver_config

Definition at line 41 of file RenderFieldGetter.hpp.

◆ storage

template<class Tvec, class Tfield, template< class > class SPHKernel>
Storage& shammodels::sph::modules::RenderFieldGetter< Tvec, Tfield, SPHKernel >::storage

Definition at line 42 of file RenderFieldGetter.hpp.


The documentation for this class was generated from the following files: