Arcane
v3.14.10.0
Documentation utilisateur
Chargement...
Recherche...
Aucune correspondance
IItemEnumeratorTracer.h
1
// -*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
2
//-----------------------------------------------------------------------------
3
// Copyright 2000-2022 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
/* IItemEnumeratorTracer.h (C) 2000-2022 */
9
/* */
10
/* Interface de trace des appels aux énumérateur sur les entités. */
11
/*---------------------------------------------------------------------------*/
12
#ifndef ARCANE_IITEMENUMERATORTRACER_H
13
#define ARCANE_IITEMENUMERATORTRACER_H
14
/*---------------------------------------------------------------------------*/
15
/*---------------------------------------------------------------------------*/
16
17
#include "arcane/ItemTypes.h"
18
19
/*---------------------------------------------------------------------------*/
20
/*---------------------------------------------------------------------------*/
21
22
namespace
Arcane
23
{
24
25
/*---------------------------------------------------------------------------*/
26
/*---------------------------------------------------------------------------*/
27
/*!
28
* \internal
29
* \brief Interface d'un traceur d'énumérateur sur les entités.
30
*
31
* Cette interface fournit des méthodes qui sont appelées automatiquement
32
* lors de l'utilisation des macros permettant d'itérer sur les entités
33
* comme ENUMERATE_CELL ou ENUMERATE_SIMD_CELL. Pour des raisons de performance,
34
* ces macros ne sont tracées que si le fichier source qui les utilise est
35
* compilé avec la macro ARCANE_TRACE_ENUMERATOR.
36
*
37
* La méthode singleton() permet de récupérer l'implémentation actuelle.
38
*
39
*/
40
class
ARCANE_CORE_EXPORT
IItemEnumeratorTracer
41
{
42
public
:
43
44
static
IItemEnumeratorTracer
* singleton();
45
46
public
:
47
48
virtual
~IItemEnumeratorTracer
() =
default
;
49
50
public
:
51
52
//! Méthode appelée lors avant d'exécuter un ENUMERATE_
53
virtual
void
enterEnumerator
(
const
ItemEnumerator
& e,
EnumeratorTraceInfo
& eti) = 0;
54
55
//! Méthode appelée lors après l'exécution d'un ENUMERATE_
56
virtual
void
exitEnumerator
(
const
ItemEnumerator
& e,
EnumeratorTraceInfo
& eti) = 0;
57
58
//! Méthode appelée lors avant d'exécuter un ENUMERATE_SIMD_
59
virtual
void
enterEnumerator
(
const
SimdItemEnumeratorBase
& e,
EnumeratorTraceInfo
& eti) = 0;
60
61
//! Méthode appelée lors après l'exécution d'un ENUMERATE_SIMD_
62
virtual
void
exitEnumerator
(
const
SimdItemEnumeratorBase
& e,
EnumeratorTraceInfo
& eti) = 0;
63
64
public
:
65
66
virtual
void
dumpStats() = 0;
67
virtual
IPerformanceCounterService
* perfCounter() = 0;
68
virtual
Ref<IPerformanceCounterService> perfCounterRef() = 0;
69
70
public
:
71
};
72
73
/*---------------------------------------------------------------------------*/
74
/*---------------------------------------------------------------------------*/
75
76
}
// namespace Arcane
77
78
/*---------------------------------------------------------------------------*/
79
/*---------------------------------------------------------------------------*/
80
81
#endif
Arcane::EnumeratorTraceInfo
Informations pour les traces d'un énumérator.
Definition
EnumeratorTraceWrapper.h:42
Arcane::IItemEnumeratorTracer
Definition
IItemEnumeratorTracer.h:41
Arcane::IItemEnumeratorTracer::enterEnumerator
virtual void enterEnumerator(const SimdItemEnumeratorBase &e, EnumeratorTraceInfo &eti)=0
Méthode appelée lors avant d'exécuter un ENUMERATE_SIMD_.
Arcane::IItemEnumeratorTracer::enterEnumerator
virtual void enterEnumerator(const ItemEnumerator &e, EnumeratorTraceInfo &eti)=0
Méthode appelée lors avant d'exécuter un ENUMERATE_.
Arcane::IItemEnumeratorTracer::exitEnumerator
virtual void exitEnumerator(const SimdItemEnumeratorBase &e, EnumeratorTraceInfo &eti)=0
Méthode appelée lors après l'exécution d'un ENUMERATE_SIMD_.
Arcane::IItemEnumeratorTracer::exitEnumerator
virtual void exitEnumerator(const ItemEnumerator &e, EnumeratorTraceInfo &eti)=0
Méthode appelée lors après l'exécution d'un ENUMERATE_.
Arcane::IPerformanceCounterService
Interface d'un service d'accès aux compteurs de performance.
Definition
IPerformanceCounterService.h:31
Arcane::ItemEnumerator
Enumérateur sur une liste d'entités.
Definition
ItemEnumerator.h:58
Arcane::SimdItemEnumeratorBase
Classe de base des énumérateurs sur les entités vectortielles (SimdItem).
Definition
SimdItem.h:376
Arcane
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
Definition
AbstractCaseDocumentVisitor.cc:20
arcane
core
IItemEnumeratorTracer.h
Généré le Lundi 18 Novembre 2024 02:56:48 pour Arcane par
1.9.8