trace.h File Reference
#include <cstdint>
#include <iosfwd>
#include <string>
#include <boost/current_function.hpp>
+ Include dependency graph for trace.h:

Go to the source code of this file.

Classes

struct  LocationProvider
 
struct  LocationProvider::Location
 
struct  Trace
 

Namespaces

 armarx
 This file offers overloads of toIce() and fromIce() functions for STL container types.
 
 armarx::detail
 

Macros

#define _detail_TRACE(fi, li, var)
 
#define _detail_TRACE_expand(...)   _detail_TRACE_mk_var(__VA_ARGS__)
 
#define _detail_TRACE_mk_var(fi, li, cnt)   _detail_TRACE(fi, li, _detail_trace_variable_##cnt##_##li)
 
#define _detail_TRACElite_expand(...)   _detail_TRACElite_mk_var(__VA_ARGS__)
 
#define _detail_TRACElite_f(fi, li, var)
 
#define _detail_TRACElite_mk_var(fi, li, cnt)   _detail_TRACElite_f(fi, li, _detail_trace_variable_##cnt##_##li)
 
#define ARMARX_TRACE   _detail_TRACE_expand(__FILE__, __LINE__, __COUNTER__)
 
#define ARMARX_TRACE_LITE   _detail_TRACElite_expand(__FILE__, __LINE__, __COUNTER__)
 

Macro Definition Documentation

◆ _detail_TRACE

#define _detail_TRACE (   fi,
  li,
  var 
)
Value:
static constexpr auto var##_cfunc = BOOST_CURRENT_FUNCTION; \
const struct var##TraceType : ::armarx::detail::Trace \
{ \
{ \
return {fi, var##_cfunc, li}; \
} \
var##TraceType() : Trace{var##TraceType::Location} \
{ \
} \
} var

Definition at line 80 of file trace.h.

◆ _detail_TRACE_expand

#define _detail_TRACE_expand (   ...)    _detail_TRACE_mk_var(__VA_ARGS__)

Definition at line 78 of file trace.h.

◆ _detail_TRACE_mk_var

#define _detail_TRACE_mk_var (   fi,
  li,
  cnt 
)    _detail_TRACE(fi, li, _detail_trace_variable_##cnt##_##li)

Definition at line 79 of file trace.h.

◆ _detail_TRACElite_expand

#define _detail_TRACElite_expand (   ...)    _detail_TRACElite_mk_var(__VA_ARGS__)

Definition at line 99 of file trace.h.

◆ _detail_TRACElite_f

#define _detail_TRACElite_f (   fi,
  li,
  var 
)
Value:
[[maybe_unused]] struct var##TraceType : ::armarx::detail::Trace \
{ \
{ \
return {fi, "fuction name is unknown!", li}; \
} \
var##TraceType(const ::armarx::LogSender&) : Trace{var##TraceType::Location} \
{ \
} \
var##TraceType() : Trace{var##TraceType::Location} \
{ \
} \
} var

Definition at line 102 of file trace.h.

◆ _detail_TRACElite_mk_var

#define _detail_TRACElite_mk_var (   fi,
  li,
  cnt 
)    _detail_TRACElite_f(fi, li, _detail_trace_variable_##cnt##_##li)

Definition at line 100 of file trace.h.

◆ ARMARX_TRACE

#define ARMARX_TRACE   _detail_TRACE_expand(__FILE__, __LINE__, __COUNTER__)

Definition at line 77 of file trace.h.

◆ ARMARX_TRACE_LITE

#define ARMARX_TRACE_LITE   _detail_TRACElite_expand(__FILE__, __LINE__, __COUNTER__)

Definition at line 98 of file trace.h.

armarx::detail::Trace
Definition: trace.h:26
GfxTL::Trace
T Trace(const MatrixXX< N, N, T > &a)
Definition: MatrixXX.h:478
armarx::detail::LocationProvider::Location
Definition: trace.h:15