Peano
Loading...
Searching...
No Matches
dastgen2.aspects.MPIForSmartPointers.MPIForSmartPointers Class Reference

Represents the MPI aspect injected into a DaStGen model. More...

Inheritance diagram for dastgen2.aspects.MPIForSmartPointers.MPIForSmartPointers:
Collaboration diagram for dastgen2.aspects.MPIForSmartPointers.MPIForSmartPointers:

Public Member Functions

 __init__ (self, data_model)
 This constructor has to know the underlying data model.
 
 get_include (self)
 
 get_attributes (self)
 
 get_method_declarations (self, full_qualified_name)
 
 get_implementation (self, full_qualified_name)
 
- Public Member Functions inherited from dastgen2.aspects.Aspect.Aspect
 set_model (self, data_model)
 Inform aspect about model.
 

Protected Attributes

 _data_model
 
- Protected Attributes inherited from dastgen2.aspects.Aspect.Aspect
 _data_model
 

Detailed Description

Represents the MPI aspect injected into a DaStGen model.

This object replaces the MPI aspect when we stream a DaStGen object onto disk. The aspect makes the object behave like a non-persistent wrapper: The very moment we issue a send or a receive, we start to hold an instance of the flattened object to which we delegate all function calls.

The routine replacing the generic MPI aspect with this one is typically peano4.api.datamodel.DaStGen2GeneratorForObjectsWithSmartPointers.

Definition at line 11 of file MPIForSmartPointers.py.

Constructor & Destructor Documentation

◆ __init__()

dastgen2.aspects.MPIForSmartPointers.MPIForSmartPointers.__init__ (   self,
  data_model 
)

This constructor has to know the underlying data model.

So you have to tell it to which object you attach the aspect to.

If we replace an existing MPI aspect with an instance of this object, we can pass in aspect._data_model as argument. For peano4.api.datamodel.DaStGen2, this reads as

for aspect in old_aspects:
if isinstance(aspect,dastgen2.aspects.MPI):
self._data.data._aspects.append( dastgen2.aspects.MPIForSmartPointers(aspect._data_model) )
Represents the MPI aspect injected into a DaStGen model.
Represents the MPI aspect injected into a DaStGen model.
Definition MPI.py:9

Reimplemented from dastgen2.aspects.Aspect.Aspect.

Definition at line 26 of file MPIForSmartPointers.py.

Member Function Documentation

◆ get_attributes()

dastgen2.aspects.MPIForSmartPointers.MPIForSmartPointers.get_attributes (   self)

Reimplemented from dastgen2.aspects.Aspect.Aspect.

Definition at line 58 of file MPIForSmartPointers.py.

◆ get_implementation()

◆ get_include()

◆ get_method_declarations()

dastgen2.aspects.MPIForSmartPointers.MPIForSmartPointers.get_method_declarations (   self,
  full_qualified_name 
)

Reimplemented from dastgen2.aspects.Aspect.Aspect.

Definition at line 66 of file MPIForSmartPointers.py.

Field Documentation

◆ _data_model


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