Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
SyncObjectv1.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file SyncObjectv1.h
1 // Tell emacs that this is a C++ source
2 // -*- C++ -*-.
3 #ifndef FFAOBJECTS_SYNCOBJECTV1_H
4 #define FFAOBJECTS_SYNCOBJECTV1_H
5 
6 #include "SyncObject.h"
7 
8 #include <iostream>
9 
10 class PHObject;
11 
12 class SyncObjectv1 : public SyncObject
13 {
14  public:
16  SyncObjectv1() = default;
17  explicit SyncObjectv1(const SyncObject& source);
18 
19  PHObject* CloneMe() const override { return new SyncObjectv1(*this); }
21  ~SyncObjectv1() override = default;
22 
24  void Reset() override;
25 
29  void identify(std::ostream& os = std::cout) const override;
30 
32  int isValid() const override;
33 
35 // cppcheck-suppress virtualCallInConstructor
36  void EventCounter(const int ival) override { eventcounter = ival; }
37 
39 // cppcheck-suppress virtualCallInConstructor
40  void EventNumber(const int ival) override { eventnumber = ival; }
41 
43 // cppcheck-suppress virtualCallInConstructor
44  void RunNumber(const int ival) override { runnumber = ival; }
45 
47 // cppcheck-suppress virtualCallInConstructor
48  void SegmentNumber(const int ival) override { segmentnumber = ival; }
49 
50  protected:
52  int EventCounter() const override { return eventcounter; }
54  int EventNumber() const override { return eventnumber; }
56  int RunNumber() const override { return runnumber; }
58  int SegmentNumber() const override { return segmentnumber; }
59 
60  private:
61  int eventcounter = 0; // running counter
62  int eventnumber = 0; // Event number
63  int runnumber = 0; // Run number
64  int segmentnumber = -999999; // segment number
65 
66  ClassDefOverride(SyncObjectv1, 1)
67 };
68 
69 #endif