Arcane  4.1.12.0
Developer documentation
Loading...
Searching...
No Matches
AbstractModule.cc
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/* AbstractModule.cc (C) 2000-2021 */
9/* */
10/* Class managing a module. */
11/*---------------------------------------------------------------------------*/
12/*---------------------------------------------------------------------------*/
13
14#include "arcane/utils/String.h"
15
16#include "arcane/core/AbstractModule.h"
17#include "arcane/core/ISubDomain.h"
18#include "arcane/core/ModuleBuildInfo.h"
19
20/*---------------------------------------------------------------------------*/
21/*---------------------------------------------------------------------------*/
22
23namespace Arcane
24{
25
26/*---------------------------------------------------------------------------*/
27/*---------------------------------------------------------------------------*/
28
32, m_session(mbi.subDomain()->session())
34, m_default_mesh_handle(mbi.meshHandle())
35, m_name(mbi.name())
36, m_used(false)
37, m_disabled(false)
38, m_version_info(0, 0, 0)
40{
41}
42
43/*---------------------------------------------------------------------------*/
44/*---------------------------------------------------------------------------*/
45
50
51/*---------------------------------------------------------------------------*/
52/*---------------------------------------------------------------------------*/
53
55parallelMng() const
56{
57 return m_sub_domain->parallelMng();
58}
59
60/*---------------------------------------------------------------------------*/
61/*---------------------------------------------------------------------------*/
62
68
69/*---------------------------------------------------------------------------*/
70/*---------------------------------------------------------------------------*/
71
77
78/*---------------------------------------------------------------------------*/
79/*---------------------------------------------------------------------------*/
80
81} // End namespace Arcane
82
83/*---------------------------------------------------------------------------*/
84/*---------------------------------------------------------------------------*/
ISession * session() const override
Session associated with the module.
bool m_used
true if the module is used
IAcceleratorMng * acceleratorMng() const override
Accelerator manager.
virtual ~AbstractModule()
Destructor.
String name() const override
Module name.
String m_name
Module name.
ITraceMng * traceMng() const override
Trace manager.
MeshHandle m_default_mesh_handle
Default mesh of the module.
VersionInfo m_version_info
Module version.
ISubDomain * subDomain() const override
Sub-domain associated with the module.
ISession * m_session
Session.
ISubDomain * m_sub_domain
sub-domain
bool m_disabled
Module activation status.
IAcceleratorMng * m_accelerator_mng
Accelerator manager.
AbstractModule(const ModuleBuildInfo &)
Constructor from a ModuleBuildInfo.
IParallelMng * parallelMng() const override
Message passing parallelism manager.
Interface of the parallelism manager for a subdomain.
Information for building a module.
TraceAccessor(ITraceMng *m)
Constructs an accessor via the trace manager m.
ITraceMng * traceMng() const
Trace manager.
-- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature --