Shamrock 2025.10.0
Astrophysical Code
Loading...
Searching...
No Matches
Public Member Functions | List of all members
shamrock::solvergraph::IFieldRefs< T > Class Template Referenceabstract

Interface for a solver graph edge representing a field as references to the underlying patch fields. More...

#include <shamrock/include/shamrock/solvergraph/IFieldRefs.hpp>

+ Inheritance diagram for shamrock::solvergraph::IFieldRefs< T >:
+ Collaboration diagram for shamrock::solvergraph::IFieldRefs< T >:

Public Member Functions

virtual DDPatchDataFieldRef< T > & get_refs ()=0
 Get the DistributedData of PatchDataFieldRefs.
 
virtual const DDPatchDataFieldRef< T > & get_refs () const =0
 Const variant of get_refs.
 
PatchDataField< T > & get_field (u64 id) const
 Get the underlying PatchDataField at the given id.
 
- Public Member Functions inherited from shamrock::solvergraph::IFieldSpan< T >
virtual DDPatchDataFieldSpanPointer< T > & get_spans ()=0
 Get the DistributedData of spans attached to the underlying field.
 
virtual const DDPatchDataFieldSpanPointer< T > & get_spans () const =0
 Const variant of get_spans.
 
virtual void check_sizes (const shambase::DistributedData< u32 > &sizes) const =0
 Check that the sizes of the patches in the field match the given sizes.
 
virtual void ensure_sizes (const shambase::DistributedData< u32 > &sizes)=0
 Ensure that the sizes of the patches in the field match the given sizes (Can resize the underlying fields).
 
 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 void free_alloc ()=0
 Free allocated memory.
 
virtual ~IFreeable ()
 Virtual destructor.
 

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::IFieldRefs< T >

Interface for a solver graph edge representing a field as references to the underlying patch fields.

A field refer to a field that is distributed over several patches.

Template Parameters
TThe primitive type of the field

Definition at line 43 of file IFieldRefs.hpp.

Member Function Documentation

◆ get_field()

template<class T >
PatchDataField< T > & shamrock::solvergraph::IFieldRefs< T >::get_field ( u64  id) const
inline

Get the underlying PatchDataField at the given id.

Definition at line 54 of file IFieldRefs.hpp.

+ Here is the call graph for this function:

◆ get_refs() [1/2]

template<class T >
virtual const DDPatchDataFieldRef< T > & shamrock::solvergraph::IFieldRefs< T >::get_refs ( ) const
pure virtual

◆ get_refs() [2/2]

template<class T >
virtual DDPatchDataFieldRef< T > & shamrock::solvergraph::IFieldRefs< T >::get_refs ( )
pure virtual

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