-
Notifications
You must be signed in to change notification settings - Fork 981
Expand file tree
/
Copy pathomp_structure.cpp
More file actions
59 lines (55 loc) · 1.62 KB
/
Copy pathomp_structure.cpp
File metadata and controls
59 lines (55 loc) · 1.62 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
/*!
* \file omp_structure.cpp
* \brief Source file counterpart for omp_structure.hpp.
* \note Contains OpDiLib initialization, finalization and includes the OpDiLib source file.
* \author J. Blühdorn
* \version 8.5.0 "Harrier"
*
* SU2 Project Website: https://su2code.github.io
*
* The SU2 Project is maintained by the SU2 Foundation
* (http://su2foundation.org)
*
* Copyright 2012-2026, SU2 Contributors (cf. AUTHORS.md)
*
* SU2 is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* SU2 is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with SU2. If not, see <http://www.gnu.org/licenses/>.
*/
#include "omp_structure.hpp"
void omp_initialize() {
#ifdef HAVE_OPDI
#if !defined(HAVE_OMPT)
opdi::backend = new opdi::MacroBackend;
opdi::backend->init();
#endif
opdi::logic = new opdi::OmpLogic;
opdi::logic->init();
opdi::tool = new CoDiOpDiLibTool<su2double>;
opdi::tool->init();
#endif
}
void omp_finalize() {
#ifdef HAVE_OPDI
opdi::tool->finalize();
opdi::logic->finalize();
opdi::backend->finalize();
delete opdi::tool;
delete opdi::logic;
#if !defined(HAVE_OMPT)
delete opdi::backend;
#endif
#endif
}
#ifdef HAVE_OPDI
#include "opdi.cpp"
#endif