12#ifndef ARCANE_DATATYPE_DATATRACER_H
13#define ARCANE_DATATYPE_DATATRACER_H
17#include "arcane/utils/ITraceMng.h"
18#include "arcane/utils/String.h"
20#include "arcane/datatype/IDataTracer.h"
21#include "arcane/datatype/DataTypes.h"
37template<
typename DataType>
43 : m_msg(msg), m_index(index), m_trace_type(trace_type), m_var_name(var_name)
50 m_msg->info() <<
"TraceAccess " << m_var_name <<
" i=" << m_index
56 if (m_trace_type==TT_Read)
57 m_msg->info() <<
"TraceRead " << m_var_name <<
" i=" << m_index
61 virtual void traceWrite(
const DataType& old_value,
const DataType& new_value)
63 if (m_trace_type==TT_Write)
64 m_msg->info() <<
"TraceWrite " << m_var_name <<
" i=" << m_index
65 <<
" V=" << old_value <<
' ' << new_value;
virtual void traceWrite(const DataType &old_value, const DataType &new_value)
Message de trace pour un accès en écriture d'une valeur.
virtual void traceAccess(const DataType &value)
Message de trace pour un accès (lecture ou écriture) à une valeur.
virtual void traceRead(const DataType &value)
Message de trace pour un accès en lecture d'une valeur.
Interface du gestionnaire de traces.
Chaîne de caractères unicode.
void arcaneTraceBreakpoint()
Point d'arrêt utilisable par un débuggeur pour une trace.
eTraceType
Type de trace possible.