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

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

Macros

#define _detail_TRACE(fi, li, var)
 
#define _detail_TRACE_expand(...)
 
#define _detail_TRACE_mk_var(fi, li, cnt)
 
#define _detail_TRACElite_expand(...)
 
#define _detail_TRACElite_f(fi, li, var)
 
#define _detail_TRACElite_mk_var(fi, li, cnt)
 
#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
T Trace(const MatrixXX< N, N, T > &a)
Definition MatrixXX.h:478

Definition at line 80 of file trace.h.

◆ _detail_TRACE_expand

#define _detail_TRACE_expand ( ...)
Value:
#define _detail_TRACE_mk_var(fi, li, cnt)
Definition trace.h:79

Definition at line 78 of file trace.h.

◆ _detail_TRACE_mk_var

#define _detail_TRACE_mk_var ( fi,
li,
cnt )
Value:
_detail_TRACE(fi, li, _detail_trace_variable_##cnt##_##li)
#define _detail_TRACE(fi, li, var)
Definition trace.h:80

Definition at line 79 of file trace.h.

◆ _detail_TRACElite_expand

#define _detail_TRACElite_expand ( ...)
Value:
#define _detail_TRACElite_mk_var(fi, li, cnt)
Definition trace.h:100

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 )
Value:
_detail_TRACElite_f(fi, li, _detail_trace_variable_##cnt##_##li)
#define _detail_TRACElite_f(fi, li, var)
Definition trace.h:102

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.