Arcane  4.1.12.0
Developer documentation
Loading...
Searching...
No Matches
IVariableMngInternal.h
1// -*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
2//-----------------------------------------------------------------------------
3// Copyright 2000-2026 CEA (www.cea.fr) IFPEN (www.ifpenergiesnouvelles.com)
4// See the top-level COPYRIGHT file for details.
5// SPDX-License-Identifier: Apache-2.0
6//-----------------------------------------------------------------------------
7/*---------------------------------------------------------------------------*/
8/* IVariableMngInternal.h (C) 2000-2026 */
9/* */
10/* Internal part of IVariableMng in Arcane. */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCANE_CORE_INTERNAL_IVARIABLEMNG_H
13#define ARCANE_CORE_INTERNAL_IVARIABLEMNG_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
18
19/*---------------------------------------------------------------------------*/
20/*---------------------------------------------------------------------------*/
21
22namespace Arcane
23{
24
25/*---------------------------------------------------------------------------*/
26/*---------------------------------------------------------------------------*/
27
35class ARCANE_CORE_EXPORT IVariableMngInternal
36{
37 public:
38
39 virtual ~IVariableMngInternal() = default;
40
41 public:
42
50 virtual void build() = 0;
51
58 virtual void initialize() = 0;
59
61 virtual void removeAllVariables() = 0;
62
65 virtual void removeAllShMemVariables() = 0;
66
68 virtual void detachMeshVariables(IMesh* mesh) = 0;
69
70 public:
71
81 virtual void addVariableRef(VariableRef* var) = 0;
82
91 virtual void removeVariableRef(VariableRef* var) = 0;
92
104 virtual void addVariable(IVariable* var) = 0;
105
116 virtual void removeVariable(IVariable* var) = 0;
117
126 virtual void initializeVariables(bool is_continue) = 0;
127
135 virtual void addAutoDestroyVariable(VariableRef* var) = 0;
136
137 public:
138
140 virtual ISubDomain* internalSubDomain() const = 0;
141
143 virtual IAcceleratorMng* acceleratorMng() const = 0;
144
147};
148
149/*---------------------------------------------------------------------------*/
150/*---------------------------------------------------------------------------*/
151
152} // End namespace Arcane
153
154/*---------------------------------------------------------------------------*/
155/*---------------------------------------------------------------------------*/
156
157#endif
Declarations of Arcane's general types.
Interface of the subdomain manager.
Definition ISubDomain.h:75
Interface of the variable manager.
virtual void removeVariableRef(VariableRef *var)=0
Removes a reference to a variable.
virtual void addVariableRef(VariableRef *var)=0
Adds a reference to a variable.
virtual void detachMeshVariables(IMesh *mesh)=0
Detaches variables associated with the mesh mesh.
virtual void addAutoDestroyVariable(VariableRef *var)=0
Adds the variable to the list of variables that are kept until the end of execution.
virtual void setAcceleratorMng(Ref< IAcceleratorMng > v)=0
Sets the accelerator manager.
virtual void removeVariable(IVariable *var)=0
Removes a variable.
virtual void removeAllVariables()=0
Removes and destroys the variables managed by this manager.
virtual void initializeVariables(bool is_continue)=0
Initializes the variables.
virtual ~IVariableMngInternal()=default
Releases resources.
virtual void addVariable(IVariable *var)=0
Adds a variable.
virtual void removeAllShMemVariables()=0
virtual void initialize()=0
Initializes the instance. The instance is not usable until this method has been called.
virtual void build()=0
Constructs the instance members.
virtual IAcceleratorMng * acceleratorMng() const =0
Manager for accelerators.
virtual ISubDomain * internalSubDomain() const =0
Temporary internal function to retrieve the subdomain.
Interface of a variable.
Definition IVariable.h:40
Reference to an instance.
Reference to a variable.
Definition VariableRef.h:56
-- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature --