gstreamer
Loading...
Searching...
No Matches
eventHeader.cc
Go to the documentation of this file.
1// gstreamer
4
5bool GstreamerJsonFactory::publishEventHeaderImpl(const std::unique_ptr<GEventHeader>& gevent_header) {
6 if (!is_building_event) {
7 log->error(ERR_PUBLISH_ERROR, "publishEventHeaderImpl called without an active event in GstreamerJsonFactory");
8 return false;
9 }
10 if (!gevent_header) {
11 log->error(ERR_PUBLISH_ERROR, "gevent_header is null in GstreamerJsonFactory::publishEventHeaderImpl");
12 return false;
13 }
14
15 // Store header fields for other routines (CSV factory does something similar).
16 timestamp = gevent_header->getTimeStamp();
17 thread_id = gevent_header->getThreadID();
18
19 // Close/open header object content consistently.
20 // Note: startEventImpl already emitted: , "header": {
21 current_event << "\"timestamp\": \"" << jsonEscape(timestamp) << "\""
22 << ", \"thread_id\": " << thread_id
23 << ", \"g4local_event\": " << gevent_header->getG4LocalEvn();
24
25 current_event_has_header = true;
26 return true;
27}
std::shared_ptr< GLogger > log
void error(int exit_code, Args &&... args) const
Shared constants and error codes for the gstreamer module.
#define ERR_PUBLISH_ERROR
Generic publish-time error (null pointers, invalid state).