Belle II Software  release-05-02-19
EventMetaDataSerialization.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2018 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Nils Braun *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 #pragma once
11 
12 #include <framework/dataobjects/EventMetaData.h>
13 #include <string>
14 
15 namespace Belle2 {
21  class EventMetaDataSerialization {
23  public:
25  static EventMetaData deserialize(std::string stream)
26  {
27  size_t pos = stream.find(':');
28  int event = atoi(stream.substr(0, pos).c_str());
29  stream.erase(0, pos + 1);
30  pos = stream.find(':');
31  int run = atoi(stream.substr(0, pos).c_str());
32  stream.erase(0, pos + 1);
33  pos = stream.find(':');
34  int experiment = atoi(stream.substr(0, pos).c_str());
35  return EventMetaData(event, run, experiment);
36  }
37 
39  static std::string serialize(const EventMetaData& eventMetaData)
40  {
41  return std::to_string(eventMetaData.getEvent()) + ":" +
42  std::to_string(eventMetaData.getRun()) + ":" +
43  std::to_string(eventMetaData.getExperiment());
44  }
45  };
47 }
Belle2::EventMetaData::getEvent
unsigned int getEvent() const
Event Getter.
Definition: EventMetaData.h:155
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::EventMetaData::getExperiment
int getExperiment() const
Experiment Getter.
Definition: EventMetaData.h:174
Belle2::EventMetaDataSerialization::deserialize
static EventMetaData deserialize(std::string stream)
Deserialize the event data from a string.
Definition: EventMetaDataSerialization.h:33
Belle2::EventMetaData::getRun
int getRun() const
Run Getter.
Definition: EventMetaData.h:161
Belle2::EventMetaData
Store event, run, and experiment numbers.
Definition: EventMetaData.h:43
Belle2::EventMetaDataSerialization::serialize
static std::string serialize(const EventMetaData &eventMetaData)
Serialize the event meta data to a string.
Definition: EventMetaDataSerialization.h:47