6 #ifndef DYNAMIC_GRAPH_TRACER_H 7 #define DYNAMIC_GRAPH_TRACER_H 8 #include <boost/function.hpp> 13 #include <dynamic-graph/entity.h> 14 #include <dynamic-graph/exception-traces.h> 15 #include <dynamic-graph/signal-base.h> 16 #include <dynamic-graph/signal-time-dependent.h> 17 #include <dynamic-graph/time-dependency.h> 19 #include <dynamic-graph/config-tracer.hh> 26 DYNAMIC_GRAPH_ENTITY_DECL();
29 typedef std::list<const SignalBase<int> *> SignalList;
30 SignalList toTraceSignals;
45 static const TraceStyle TRACE_STYLE_DEFAULT = EACH_TIME;
52 typedef std::list<std::ostream *> FileList;
54 typedef std::list<std::string> NameList;
60 Tracer(
const std::string n);
61 virtual ~
Tracer() { closeFiles(); }
64 const std::string &filename =
"");
65 void addSignalToTraceByName(
const std::string &signame,
66 const std::string &filename =
"");
67 void clearSignalToTrace();
69 void openFiles(
const std::string &rootdir,
const std::string &basename,
70 const std::string &suffix);
71 virtual void closeFiles();
75 const std::string &filename);
78 void setTraceStyle(
const TraceStyle &style) { traceStyle = style; }
79 TraceStyle getTraceStyle() {
return traceStyle; }
81 void setFrenquency(
const double &frqu) { frequency = frqu; }
82 double getFrequency() {
return frequency; }
85 virtual void recordSignal(std::ostream &os,
const SignalBase<int> &sig);
86 int &recordTrigger(
int &dummy,
const int &time);
89 void start() { play =
true; }
90 void stop() { play =
false; }
97 DG_TRACER_DLLAPI
friend std::ostream &operator<<(std::ostream &os,
101 void display(std::ostream &os)
const;
This class represents an entity, i.e. a generic computational unit that provides input and output sig...
Tracer plug-in main class.