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

Interface for a solver graph edge representing a field as spans. More...

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

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

Public Member Functions

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

Interface for a solver graph edge representing a field as spans.

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

Template Parameters
TThe primitive type of the field

Definition at line 38 of file IFieldSpan.hpp.

Member Function Documentation

◆ check_sizes()

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

◆ ensure_sizes()

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

◆ get_spans() [1/2]

template<class T >
virtual const DDPatchDataFieldSpanPointer< T > & shamrock::solvergraph::IFieldSpan< T >::get_spans ( ) const
pure virtual

◆ get_spans() [2/2]

template<class T >
virtual DDPatchDataFieldSpanPointer< T > & shamrock::solvergraph::IFieldSpan< T >::get_spans ( )
pure virtual

◆ IEdgeNamed()

template<class T >
shamrock::solvergraph::IEdgeNamed::IEdgeNamed ( std::string  name,
std::string  texsymbol 
)
inline

Definition at line 28 of file IEdgeNamed.hpp.


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