Shamrock 2025.10.0
Astrophysical Code
Loading...
Searching...
No Matches
shamrock::solvergraph::FieldRefs< T > Class Template Reference
Inheritance diagram for shamrock::solvergraph::FieldRefs< T >:
Collaboration diagram for shamrock::solvergraph::FieldRefs< T >:

Public Member Functions

virtual DDPatchDataFieldRef< T > & get_refs ()
 Get the DistributedData of PatchDataFieldRefs.
virtual const DDPatchDataFieldRef< T > & get_refs () const
 Const variant of get_refs.
virtual DDPatchDataFieldSpanPointer< T > & get_spans ()
 Get the DistributedData of spans attached to the underlying field.
virtual const DDPatchDataFieldSpanPointer< T > & get_spans () const
 Const variant of get_spans.
virtual void check_sizes (const shambase::DistributedData< u32 > &sizes) const
 Check that the sizes of the patches in the field match the given sizes.
virtual void ensure_sizes (const shambase::DistributedData< u32 > &sizes)
 Ensure that the sizes of the patches in the field match the given sizes (Can resize the underlying fields).
void set_refs (DDPatchDataFieldRef< T > refs)
DDPatchDataFieldRef< T > extract ()
virtual PatchDataField< T > & get (u64 id_patch)
virtual const PatchDataField< T > & get (u64 id_patch) const
virtual void free_alloc ()
 Free allocated memory.
Public Member Functions inherited from shamrock::solvergraph::IFieldRefs< T >
PatchDataField< T > & get_field (u64 id) const
 Get the underlying PatchDataField at the given id.
Public Member Functions inherited from shamrock::solvergraph::IFieldSpan< T >
 IEdgeNamed (std::string name, std::string texsymbol)
Public Member Functions inherited from shamrock::solvergraph::IEdgeNamed
 IEdgeNamed (std::string name, std::string texsymbol)
virtual std::string _impl_get_dot_label () const
virtual std::string _impl_get_tex_symbol () const
Public Member Functions inherited from shamrock::solvergraph::IEdge
std::string get_label () const
std::string get_tex_symbol () const
Public Member Functions inherited from shambase::WithUUID< IEdge, u64 >
u64 get_uuid () const
 Get the uuid of the class.
 WithUUID ()
 Constructor of the class.
Public Member Functions inherited from shamrock::solvergraph::IFreeable
virtual ~IFreeable ()
 Virtual destructor.

Static Public Member Functions

static std::shared_ptr< FieldRefs< T > > make_shared (std::string name, std::string texsymbol)

Additional Inherited Members

Protected Attributes inherited from shambase::WithUUID< IEdge, u64 >
u64 uuid
 The unique identifier of the class.

Detailed Description

template<class T>
class shamrock::solvergraph::FieldRefs< T >

Definition at line 29 of file FieldRefs.hpp.

Member Function Documentation

◆ check_sizes()

template<class T>
virtual void shamrock::solvergraph::FieldRefs< T >::check_sizes ( const shambase::DistributedData< u32 > & sizes) const
inlinevirtual

Check that the sizes of the patches in the field match the given sizes.

Parameters
sizesthe expected sizes

Implements shamrock::solvergraph::IFieldSpan< T >.

Definition at line 53 of file FieldRefs.hpp.

Here is the call graph for this function:

◆ ensure_sizes()

template<class T>
virtual void shamrock::solvergraph::FieldRefs< T >::ensure_sizes ( const shambase::DistributedData< u32 > & sizes)
inlinevirtual

Ensure that the sizes of the patches in the field match the given sizes (Can resize the underlying fields).

Parameters
sizesthe expected sizes

Implements shamrock::solvergraph::IFieldSpan< T >.

Definition at line 80 of file FieldRefs.hpp.

Here is the call graph for this function:

◆ extract()

template<class T>
DDPatchDataFieldRef< T > shamrock::solvergraph::FieldRefs< T >::extract ( )
inline

Definition at line 89 of file FieldRefs.hpp.

◆ free_alloc()

template<class T>
virtual void shamrock::solvergraph::FieldRefs< T >::free_alloc ( )
inlinevirtual

Free allocated memory.

Implements shamrock::solvergraph::IFreeable.

Definition at line 100 of file FieldRefs.hpp.

◆ get() [1/2]

template<class T>
virtual PatchDataField< T > & shamrock::solvergraph::FieldRefs< T >::get ( u64 id_patch)
inlinevirtual

Definition at line 95 of file FieldRefs.hpp.

◆ get() [2/2]

template<class T>
virtual const PatchDataField< T > & shamrock::solvergraph::FieldRefs< T >::get ( u64 id_patch) const
inlinevirtual

Definition at line 96 of file FieldRefs.hpp.

◆ get_refs() [1/2]

template<class T>
virtual DDPatchDataFieldRef< T > & shamrock::solvergraph::FieldRefs< T >::get_refs ( )
inlinevirtual

Get the DistributedData of PatchDataFieldRefs.

Implements shamrock::solvergraph::IFieldRefs< T >.

Definition at line 45 of file FieldRefs.hpp.

◆ get_refs() [2/2]

template<class T>
virtual const DDPatchDataFieldRef< T > & shamrock::solvergraph::FieldRefs< T >::get_refs ( ) const
inlinevirtual

Const variant of get_refs.

Implements shamrock::solvergraph::IFieldRefs< T >.

Definition at line 47 of file FieldRefs.hpp.

◆ get_spans() [1/2]

template<class T>
virtual DDPatchDataFieldSpanPointer< T > & shamrock::solvergraph::FieldRefs< T >::get_spans ( )
inlinevirtual

Get the DistributedData of spans attached to the underlying field.

Implements shamrock::solvergraph::IFieldSpan< T >.

Definition at line 49 of file FieldRefs.hpp.

◆ get_spans() [2/2]

template<class T>
virtual const DDPatchDataFieldSpanPointer< T > & shamrock::solvergraph::FieldRefs< T >::get_spans ( ) const
inlinevirtual

Const variant of get_spans.

Implements shamrock::solvergraph::IFieldSpan< T >.

Definition at line 51 of file FieldRefs.hpp.

◆ make_shared()

template<class T>
std::shared_ptr< FieldRefs< T > > shamrock::solvergraph::FieldRefs< T >::make_shared ( std::string name,
std::string texsymbol )
inlinestatic

Definition at line 102 of file FieldRefs.hpp.

◆ set_refs()

template<class T>
void shamrock::solvergraph::FieldRefs< T >::set_refs ( DDPatchDataFieldRef< T > refs)
inline

Definition at line 84 of file FieldRefs.hpp.


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