1
1
// -*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
2
2
// -----------------------------------------------------------------------------
3
- // Copyright 2000-2022 CEA (www.cea.fr) IFPEN (www.ifpenergiesnouvelles.com)
3
+ // Copyright 2000-2024 CEA (www.cea.fr) IFPEN (www.ifpenergiesnouvelles.com)
4
4
// See the top-level COPYRIGHT file for details.
5
5
// SPDX-License-Identifier: Apache-2.0
6
6
// -----------------------------------------------------------------------------
7
7
/* ---------------------------------------------------------------------------*/
8
- /* AlephInterface.h (C) 2000-2011 */
8
+ /* AlephInterface.h (C) 2000-2024 */
9
9
/* */
10
10
/* */
11
11
/* ---------------------------------------------------------------------------*/
12
- #ifndef ARCANE_ALEPH_ALEPHINTERFACE_H_
13
- #define ARCANE_ALEPH_ALEPHINTERFACE_H_
12
+ #ifndef ARCANE_ALEPH_ALEPHINTERFACE_H
13
+ #define ARCANE_ALEPH_ALEPHINTERFACE_H
14
14
/* ---------------------------------------------------------------------------*/
15
15
/* ---------------------------------------------------------------------------*/
16
16
20
20
/* ---------------------------------------------------------------------------*/
21
21
/* ---------------------------------------------------------------------------*/
22
22
23
- ARCANE_BEGIN_NAMESPACE
23
+ namespace Arcane
24
+ {
24
25
25
26
/* ---------------------------------------------------------------------------*/
26
27
/* ---------------------------------------------------------------------------*/
@@ -32,9 +33,11 @@ class AlephVector;
32
33
/* *****************************************************************************
33
34
* IAlephTopology
34
35
*****************************************************************************/
35
- class IAlephTopology : public TraceAccessor
36
+ class IAlephTopology
37
+ : public TraceAccessor
36
38
{
37
39
public:
40
+
38
41
IAlephTopology (ITraceMng* tm ,
39
42
AlephKernel* kernel,
40
43
Integer index,
@@ -57,10 +60,12 @@ class IAlephTopology : public TraceAccessor
57
60
}
58
61
59
62
public:
63
+
60
64
virtual void backupAndInitialize () = 0;
61
65
virtual void restore () = 0;
62
66
63
67
protected:
68
+
64
69
Integer m_index;
65
70
AlephKernel* m_kernel;
66
71
bool m_participating_in_solver;
@@ -69,9 +74,11 @@ class IAlephTopology : public TraceAccessor
69
74
/* *****************************************************************************
70
75
* IAlephVector
71
76
*****************************************************************************/
72
- class IAlephVector : public TraceAccessor
77
+ class IAlephVector
78
+ : public TraceAccessor
73
79
{
74
80
public:
81
+
75
82
IAlephVector (ITraceMng* tm ,
76
83
AlephKernel* kernel,
77
84
Integer index)
@@ -89,23 +96,27 @@ class IAlephVector : public TraceAccessor
89
96
}
90
97
91
98
public:
99
+
92
100
virtual void AlephVectorCreate (void ) = 0;
93
- virtual void AlephVectorSet (const double *, const int *, Integer) = 0;
101
+ virtual void AlephVectorSet (const double *, const AlephInt *, Integer) = 0;
94
102
virtual int AlephVectorAssemble (void ) = 0;
95
- virtual void AlephVectorGet (double *, const int *, Integer) = 0;
103
+ virtual void AlephVectorGet (double *, const AlephInt *, Integer) = 0;
96
104
virtual void writeToFile (const String) = 0;
97
105
98
106
protected:
107
+
99
108
Integer m_index;
100
109
AlephKernel* m_kernel;
101
110
};
102
111
103
112
/* *****************************************************************************
104
113
* IAlephMatrix
105
114
*****************************************************************************/
106
- class IAlephMatrix : public TraceAccessor
115
+ class IAlephMatrix
116
+ : public TraceAccessor
107
117
{
108
118
public:
119
+
109
120
IAlephMatrix (ITraceMng* tm ,
110
121
AlephKernel* kernel,
111
122
Integer index)
@@ -123,10 +134,11 @@ class IAlephMatrix : public TraceAccessor
123
134
}
124
135
125
136
public:
137
+
126
138
virtual void AlephMatrixCreate (void ) = 0;
127
139
virtual void AlephMatrixSetFilled (bool ) = 0;
128
140
virtual int AlephMatrixAssemble (void ) = 0;
129
- virtual void AlephMatrixFill (int , int *, int *, double *) = 0;
141
+ virtual void AlephMatrixFill (int , AlephInt *, AlephInt *, double *) = 0;
130
142
virtual int AlephMatrixSolve (AlephVector*,
131
143
AlephVector*,
132
144
AlephVector*,
@@ -136,14 +148,20 @@ class IAlephMatrix : public TraceAccessor
136
148
virtual void writeToFile (const String) = 0;
137
149
138
150
protected:
151
+
139
152
Integer m_index;
140
153
AlephKernel* m_kernel;
141
154
};
142
155
143
- class IAlephFactory : public TraceAccessor
156
+ /* ---------------------------------------------------------------------------*/
157
+ /* ---------------------------------------------------------------------------*/
158
+
159
+ class IAlephFactory
160
+ : public TraceAccessor
144
161
{
145
162
public:
146
- IAlephFactory (ITraceMng* tm )
163
+
164
+ explicit IAlephFactory (ITraceMng* tm )
147
165
: TraceAccessor(tm )
148
166
{
149
167
debug () << " \33 [1;34m[IAlephFactory] NEW IAlephFactory"
@@ -170,6 +188,7 @@ class IAlephFactory : public TraceAccessor
170
188
class IAlephFactoryImpl
171
189
{
172
190
public:
191
+
173
192
virtual ~IAlephFactoryImpl () {}
174
193
virtual void initialize () = 0;
175
194
virtual IAlephTopology* createTopology (ITraceMng*, AlephKernel*, Integer, Integer) = 0;
@@ -180,7 +199,7 @@ class IAlephFactoryImpl
180
199
/* ---------------------------------------------------------------------------*/
181
200
/* ---------------------------------------------------------------------------*/
182
201
183
- ARCANE_END_NAMESPACE
202
+ } // namespace Arcane
184
203
185
204
/* ---------------------------------------------------------------------------*/
186
205
/* ---------------------------------------------------------------------------*/
0 commit comments