Arcane  4.1.12.0
Developer documentation
Loading...
Searching...
No Matches
Arcane::IVariableMngInternal Class Referenceabstract

Interface of the variable manager. More...

#include <arcane/core/internal/IVariableMngInternal.h>

Inheritance diagram for Arcane::IVariableMngInternal:
Collaboration diagram for Arcane::IVariableMngInternal:

Public Member Functions

virtual ~IVariableMngInternal ()=default
 Releases resources.
virtual void build ()=0
 Constructs the instance members.
virtual void initialize ()=0
 Initializes the instance. The instance is not usable until this method has been called.
virtual void removeAllVariables ()=0
 Removes and destroys the variables managed by this manager.
virtual void removeAllShMemVariables ()=0
virtual void detachMeshVariables (IMesh *mesh)=0
 Detaches variables associated with the mesh mesh.
virtual void addVariableRef (VariableRef *var)=0
 Adds a reference to a variable.
virtual void removeVariableRef (VariableRef *var)=0
 Removes a reference to a variable.
virtual void addVariable (IVariable *var)=0
 Adds a variable.
virtual void removeVariable (IVariable *var)=0
 Removes a variable.
virtual void initializeVariables (bool is_continue)=0
 Initializes the variables.
virtual void addAutoDestroyVariable (VariableRef *var)=0
 Adds the variable to the list of variables that are kept until the end of execution.
virtual ISubDomaininternalSubDomain () const =0
 Temporary internal function to retrieve the subdomain.
virtual IAcceleratorMngacceleratorMng () const =0
 Manager for accelerators.
virtual void setAcceleratorMng (Ref< IAcceleratorMng > v)=0
 Sets the accelerator manager.

Detailed Description

Interface of the variable manager.

This manager contains the list of variables declared in the associated subdomain subDomain(). It maintains the list of variables and allows them to be read or written.

Definition at line 35 of file IVariableMngInternal.h.

Member Function Documentation

◆ acceleratorMng()

virtual IAcceleratorMng * Arcane::IVariableMngInternal::acceleratorMng ( ) const
pure virtual

Manager for accelerators.

Implemented in Arcane::VariableMng::InternalApi.

◆ addAutoDestroyVariable()

virtual void Arcane::IVariableMngInternal::addAutoDestroyVariable ( VariableRef * var)
pure virtual

Adds the variable to the list of variables that are kept until the end of execution.

The variable will be destroyed by calling the operator delete() when calling IVariableMng::removeAllVariables().

Implemented in Arcane::VariableMng::InternalApi.

Referenced by Arcane::VtkMeshIOService::_readData().

Here is the caller graph for this function:

◆ addVariable()

virtual void Arcane::IVariableMngInternal::addVariable ( IVariable * var)
pure virtual

Adds a variable.

Adds the variable var.

The variable validity is not checked (void checkVariable()).

Precondition
var != 0
var must not already be referenced.
Returns
the implementation associated with var.

Implemented in Arcane::VariableMng::InternalApi.

◆ addVariableRef()

virtual void Arcane::IVariableMngInternal::addVariableRef ( VariableRef * var)
pure virtual

Adds a reference to a variable.

Adds the reference var to the manager.

Precondition
var != 0
var must not already be referenced.
Returns
the implementation associated with var.

Implemented in Arcane::VariableMng::InternalApi.

◆ build()

virtual void Arcane::IVariableMngInternal::build ( )
pure virtual

Constructs the instance members.

The instance is not usable until this method has been called. This method must be called before initialize().

Warning
This method must only be called once.

Implemented in Arcane::VariableMng::InternalApi.

◆ detachMeshVariables()

virtual void Arcane::IVariableMngInternal::detachMeshVariables ( IMesh * mesh)
pure virtual

Detaches variables associated with the mesh mesh.

Implemented in Arcane::VariableMng::InternalApi.

◆ initialize()

virtual void Arcane::IVariableMngInternal::initialize ( )
pure virtual

Initializes the instance. The instance is not usable until this method has been called.

Warning
This method must only be called once.

Implemented in Arcane::VariableMng::InternalApi.

◆ initializeVariables()

virtual void Arcane::IVariableMngInternal::initializeVariables ( bool is_continue)
pure virtual

Initializes the variables.

Iterates through the list of variables and initializes them. Only variables from a used module are initialized.

Parameters
is_continuetrue if resuming.

Implemented in Arcane::VariableMng::InternalApi.

Referenced by Arcane::CodeService::initCase().

Here is the caller graph for this function:

◆ internalSubDomain()

virtual ISubDomain * Arcane::IVariableMngInternal::internalSubDomain ( ) const
pure virtual

Temporary internal function to retrieve the subdomain.

Implemented in Arcane::VariableMng::InternalApi.

Referenced by Arcane::mesh::DynamicMeshFactoryBase::createMesh(), and Arcane::PolyhedralMeshFactory::createMesh().

Here is the caller graph for this function:

◆ removeAllShMemVariables()

virtual void Arcane::IVariableMngInternal::removeAllShMemVariables ( )
pure virtual

Removes and destroys variables having the PInShMem property, managed by this manager.

Implemented in Arcane::VariableMng::InternalApi.

◆ removeAllVariables()

virtual void Arcane::IVariableMngInternal::removeAllVariables ( )
pure virtual

Removes and destroys the variables managed by this manager.

Implemented in Arcane::VariableMng::InternalApi.

◆ removeVariable()

virtual void Arcane::IVariableMngInternal::removeVariable ( IVariable * var)
pure virtual

Removes a variable.

Removes the variable var.

After calling this method, the variable must no longer be used.

Precondition
var != 0
var must have a single reference.

Implemented in Arcane::VariableMng::InternalApi.

Referenced by Arcane::Variable::removeVariableRef().

Here is the caller graph for this function:

◆ removeVariableRef()

virtual void Arcane::IVariableMngInternal::removeVariableRef ( VariableRef * var)
pure virtual

Removes a reference to a variable.

Removes the reference var from the manager.

If var is not referenced by the manager, nothing is done.

Precondition
var != 0

Implemented in Arcane::VariableMng::InternalApi.

◆ setAcceleratorMng()

virtual void Arcane::IVariableMngInternal::setAcceleratorMng ( Ref< IAcceleratorMng > v)
pure virtual

Sets the accelerator manager.

Implemented in Arcane::VariableMng::InternalApi.


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