22#ifndef __PNS_DEBUG_DECORATOR_H
23#define __PNS_DEBUG_DECORATOR_H
25#include <math/vector2d.h>
27#include <geometry/seg.h>
28#include <geometry/shape_line_chain.h>
41 SRC_LOCATION_INFO(
const std::string& aFileName =
"",
const std::string& aFuncName =
"",
43 fileName( aFileName ),
44 funcName( aFuncName ),
56 void SetDebugEnabled(
bool aEnabled ) { m_debugEnabled = aEnabled;}
57 bool IsDebugEnabled()
const {
return m_debugEnabled; }
59 virtual void SetIteration(
int iter ){};
60 virtual void Message(
const wxString& msg,
61 const SRC_LOCATION_INFO& aSrcLoc = SRC_LOCATION_INFO() ){};
62 virtual void NewStage(
const std::string& name,
int iter,
63 const SRC_LOCATION_INFO& aSrcLoc = SRC_LOCATION_INFO() ){};
64 virtual void BeginGroup(
const std::string& name,
65 const SRC_LOCATION_INFO& aSrcLoc = SRC_LOCATION_INFO() ){};
66 virtual void EndGroup(
const SRC_LOCATION_INFO& aSrcLoc = SRC_LOCATION_INFO() ){};
68 const std::string& aName,
69 const SRC_LOCATION_INFO& aSrcLoc = SRC_LOCATION_INFO() ){};
71 int aWidth,
const std::string& aName,
72 const SRC_LOCATION_INFO& aSrcLoc = SRC_LOCATION_INFO() ){};
74 const std::string& aName,
75 const SRC_LOCATION_INFO& aSrcLoc = SRC_LOCATION_INFO() ){};
77 const std::string& aName,
78 const SRC_LOCATION_INFO& aSrcLoc = SRC_LOCATION_INFO() ){};
79 virtual void Clear(){};
93#define PNS_DBG( dbg, method, ... ) \
94 if( dbg && dbg->IsDebugEnabled() ) \
95 dbg->method( __VA_ARGS__, PNS::DEBUG_DECORATOR::SRC_LOCATION_INFO( __FILE__, __FUNCTION__, \
98#define PNS_DBGN( dbg, method ) \
99 if( dbg && dbg->IsDebugEnabled() ) \
100 dbg->method( PNS::DEBUG_DECORATOR::SRC_LOCATION_INFO( __FILE__, __FUNCTION__, __LINE__ ) );
A color representation with 4 components: red, green, blue, alpha.
Definition: color4d.h:98
Definition: pns_debug_decorator.h:35
Represent a polyline containing arcs as well as line segments: A chain of connected line and/or arc s...
Definition: shape_line_chain.h:81
Definition: wx_compat.h:13
Definition: pns_debug_decorator.h:40