Arcane
v4.1.10.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
AlinaSamplesCommon.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
/* AlinaSamplesCommon.h (C) 2000-2026 */
9
/* */
10
/* Utilitary functions used by all samples. */
11
/*---------------------------------------------------------------------------*/
12
#ifndef ARCCORE_ALINA_ALINASAMPLESCOMMON_H
13
#define ARCCORE_ALINA_ALINASAMPLESCOMMON_H
14
/*---------------------------------------------------------------------------*/
15
/*---------------------------------------------------------------------------*/
16
17
#include "arccore/alina/AlinaGlobal.h"
18
#include "arccore/trace/TraceGlobal.h"
19
#include "arccore/common/accelerator/CommonAcceleratorGlobal.h"
20
#include "
arccore/message_passing/MessagePassingGlobal.h
"
21
22
/*---------------------------------------------------------------------------*/
23
/*---------------------------------------------------------------------------*/
24
25
#ifdef ARCANE_COMPONENT_arcane_alina
26
#define ARCCORE_ALINA_SAMPLES_EXPORT ARCANE_EXPORT
27
#else
28
#define ARCCORE_ALINA_SAMPLES_EXPORT ARCANE_IMPORT
29
#endif
30
31
/*---------------------------------------------------------------------------*/
32
/*---------------------------------------------------------------------------*/
33
34
namespace
Arcane::Alina
35
{
36
37
class
SampleMainContext
;
38
39
/*---------------------------------------------------------------------------*/
40
/*---------------------------------------------------------------------------*/
41
42
// Prototype for main functor
43
typedef
int (*MainFunction)(
const
SampleMainContext
& ctx,
int
argc,
char
* argv[]);
44
45
class
ARCCORE_ALINA_SAMPLES_EXPORT SampleMainContext
46
{
47
private
:
48
49
SampleMainContext(
ITraceMng
* tm,
Accelerator::IAcceleratorMng
* accelerator_mng,
50
MessagePassing::IMessagePassingMng
* message_passing_mng)
51
: m_trace_mng(tm)
52
, m_accelerator_mng(accelerator_mng)
53
, m_message_passing_mng(message_passing_mng)
54
{}
55
56
public
:
57
58
static
int
execMain(MainFunction f,
int
argc,
char
* argv[]);
59
60
public
:
61
62
ITraceMng
* traceMng()
const
{
return
m_trace_mng; }
63
Accelerator::IAcceleratorMng
* acceleratorMng()
const
{
return
m_accelerator_mng; }
64
MessagePassing::IMessagePassingMng
* messagePassingMng()
const
{
return
m_message_passing_mng; }
65
66
private
:
67
68
ITraceMng
* m_trace_mng =
nullptr
;
69
Accelerator::IAcceleratorMng
* m_accelerator_mng =
nullptr
;
70
MessagePassing::IMessagePassingMng
* m_message_passing_mng =
nullptr
;
71
};
72
73
/*---------------------------------------------------------------------------*/
74
/*---------------------------------------------------------------------------*/
75
76
/*---------------------------------------------------------------------------*/
77
/*---------------------------------------------------------------------------*/
78
79
}
// namespace Arcane::Alina
80
81
/*---------------------------------------------------------------------------*/
82
/*---------------------------------------------------------------------------*/
83
84
#endif
MessagePassingGlobal.h
Déclarations générales de la composante 'message_passing'.
Arcane::Accelerator::IAcceleratorMng
Interface du gestionnaire des accélérateurs.
Definition
arccore/src/common/arccore/common/accelerator/IAcceleratorMng.h:38
Arcane::Alina::SampleMainContext
Definition
AlinaSamplesCommon.h:46
Arcane::ITraceMng
Interface du gestionnaire de traces.
Definition
arccore/src/trace/arccore/trace/ITraceMng.h:156
Arcane::MessagePassing::IMessagePassingMng
Interface du gestionnaire des échanges de messages.
Definition
IMessagePassingMng.h:47
arccore
src
alina
arccore
alina
samples
AlinaSamplesCommon.h
Généré le Lundi 20 Avril 2026 04:40:08 pour Arcane par
1.13.2