Arcane  4.1.12.0
User documentation
Loading...
Searching...
No Matches
TimeLoop.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/* TimeLoop.h (C) 2000-2025 */
9/* */
10/* Time loop. */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCANE_CORE_TIMELOOP_H
13#define ARCANE_CORE_TIMELOOP_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
17#include "arcane/core/ITimeLoop.h"
18
19/*---------------------------------------------------------------------------*/
20/*---------------------------------------------------------------------------*/
21
22namespace Arcane
23{
24class TimeLoopPrivate;
25
26/*---------------------------------------------------------------------------*/
27/*---------------------------------------------------------------------------*/
28
29/*!
30 * \internal
31 * \brief Time loop.
32 */
33class ARCANE_CORE_EXPORT TimeLoop
34: public ITimeLoop
35{
36 public:
37
38 TimeLoop(IApplication* app, const String& name);
39 ~TimeLoop() override;
40
41 public:
42
43 virtual void build() override;
44
45 public:
46
47 IApplication* application() const override;
48 String name() const override;
49 String title() const override;
50 void setTitle(const String& title) override;
51 String description() const override;
52 void setDescription(const String& description) override;
54 void setRequiredModulesName(const StringCollection& names) override;
56 void setOptionalModulesName(const StringCollection& names) override;
57 TimeLoopEntryPointInfoCollection entryPoints(const String& where) const override;
58 void setEntryPoints(const String& where, const TimeLoopEntryPointInfoCollection& calls) override;
59 StringCollection userClasses() const override;
60 void setUserClasses(const StringCollection& user_classes) override;
61 TimeLoopSingletonServiceInfoCollection singletonServices() const override;
62 void setSingletonServices(const TimeLoopSingletonServiceInfoCollection& c) override;
63 IConfiguration* configuration() override;
64
65 public:
66
67 virtual bool isOldFormat() const;
68 virtual void setOldFormat(bool is_old);
69
70 private:
71
72 TimeLoopPrivate* m_p = nullptr;
73};
74
75/*---------------------------------------------------------------------------*/
76/*---------------------------------------------------------------------------*/
77
78} // namespace Arcane
79
80/*---------------------------------------------------------------------------*/
81/*---------------------------------------------------------------------------*/
82
83#endif
Application interface.
Interface for a configuration.
Interface of a time loop.
Definition ITimeLoop.h:33
void setOptionalModulesName(const StringCollection &names) override
Sets the list of optional modules.
Definition TimeLoop.cc:145
String name() const override
Name of the time loop.
Definition TimeLoop.cc:194
virtual void build() override
Constructs the time loop.
Definition TimeLoop.cc:127
StringCollection requiredModulesName() const override
List of names of required modules.
Definition TimeLoop.cc:236
void setDescription(const String &description) override
Sets the description of the time loop.
Definition TimeLoop.cc:230
IConfiguration * configuration() override
Configuration options.
Definition TimeLoop.cc:275
StringCollection optionalModulesName() const override
List of names of optional modules.
Definition TimeLoop.cc:242
String description() const override
Description of the time loop.
Definition TimeLoop.cc:224
StringCollection userClasses() const override
List of user classes associated with the time loop.
Definition TimeLoop.cc:248
void setTitle(const String &title) override
Sets the title of the time loop.
Definition TimeLoop.cc:206
void setUserClasses(const StringCollection &user_classes) override
Returns the list of classes associated with the time loop.
Definition TimeLoop.cc:179
TimeLoopEntryPointInfoCollection entryPoints(const String &where) const override
List of names of entry points for the call point where.
Definition TimeLoop.cc:154
void setRequiredModulesName(const StringCollection &names) override
Sets the list of required modules.
Definition TimeLoop.cc:136
void setEntryPoints(const String &where, const TimeLoopEntryPointInfoCollection &calls) override
Sets the list of names of entry points for the call point where.
Definition TimeLoop.cc:167
String title() const override
Title of the time loop.
Definition TimeLoop.cc:200
void setSingletonServices(const TimeLoopSingletonServiceInfoCollection &c) override
Sets the list of singleton services.
Definition TimeLoop.cc:266
TimeLoopSingletonServiceInfoCollection singletonServices() const override
List of singleton services.
Definition TimeLoop.cc:257
IApplication * application() const override
Application.
Definition TimeLoop.cc:188
-- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature --
Collection< String > StringCollection
Collection of strings.
Definition UtilsTypes.h:506