6#define __RTTracer_h__ included
10#include <RTJsonResult.h>
11#include <RTStreamBuffer.h>
47 PRECISION_MASK = 0x0F,
48 PRECISION_NANO = 0x09,
49 PRECISION_MICRO = 0x06,
50 PRECISION_MILLI = 0x03
55 static std::chrono::system_clock::time_point _start;
56 static int _timestamps;
59 std::string _traceFile;
65 static std::string initTraceFile(
void);
67 static RTS_INLINE
void traceMS(
const RTMessage*,
void* traceInfo[] =
nullptr);
69 void traceMessage(
const RTMessage*,
void* traceInfo[]);
76#define TRACE_TIME1 "time1_send"
77#define TRACE_TIME2 "time2_receive"
78#define TRACE_TIME3 "time3_handle"
81#include <RTTracer.inl>
An instance of this class represents a capsule instance.
Definition: RTActor.h:44
Represents the result of parsing a JSON string.
Definition: RTJsonResult.h:30
Represents a message used for communication between capsule instances.
Definition: RTMessage.h:33
Definition: RTStreamBuffer.h:22
Definition: RTTracer.h:18
static void flushTrace(void)
Flush buffered trace messages to file.
Definition: RTTracer.inl:12
static bool isEnabled(void)
Check if tracing is enabled.
Definition: RTTracer.inl:16
static bool configure(void)
Configure RTTracer and tracing preferences.
static void setEnabled(bool)
Enable or disable tracing to file.
int flush(void) override
Flushes the data written to the buffer.