25 mitk::IGTLMeasurements::IGTLMeasurements()
46 return context->GetService(serviceRef);
55 mitk::IGTLMeasurements::~IGTLMeasurements()
61 if (timestamp == 0) { timestamp = std::chrono::high_resolution_clock::now().time_since_epoch().count(); }
64 m_MeasurementPoints[measurementPoint].push_back(TimeStampIndexPair(timestamp, index));
71 std::ostream* out =
new std::ofstream(filename.c_str());
75 oldLocale = setlocale(LC_ALL,
nullptr);
79 setlocale(LC_ALL,
"C");
82 unsigned int numberOfMeasurementPoints = (
unsigned int)m_MeasurementPoints.size();
83 *out << numberOfMeasurementPoints <<
"\n";
85 if (numberOfMeasurementPoints == 0)
94 for (
auto entry : m_MeasurementPoints)
96 *out << entry.second.size() <<
";";
97 *out << entry.first <<
";";
98 for (TimeStampIndexPair timestampIndexPair : entry.second)
100 *out << (timestampIndexPair.first) <<
";";
101 *out << (timestampIndexPair.second) <<
";";
109 setlocale(LC_ALL, oldLocale);
116 m_MeasurementPoints.clear();
121 m_IsStarted = started;
void AddMeasurement(unsigned int measurementPoint, unsigned int index, long long timestamp=0)
AddMeasurementPoint.
bool ExportData(std::string filename)
AddMeasurementPoint.
static IGTLMeasurements * GetInstance()
void SetStarted(bool started)
Is a helper class to make measurments for latency and fps.
static ModuleContext * GetModuleContext()
Returns the module context of the calling module.
void Reset()
clears all measurements