CbmRoot
HitReader.h
Go to the documentation of this file.
1 /*
2  * To change this license header, choose License Headers in Project Properties.
3  * To change this template file, choose Tools | Templates
4  * and open the template in the editor.
5  */
6 
7 /*
8  * File: HitReader.h
9  * Author: tablyaz
10  *
11  * Created on August 18, 2017, 11:23 AM
12  */
13 
14 #ifndef HITREADER_H
15 #define HITREADER_H
16 
17 #include "CbmPixelHit.h"
18 #include "Settings.h"
19 #include "TClonesArray.h"
20 #include <map>
21 #include <string>
22 #include <vector>
23 
24 class CbmBinnedStation;
25 
27 public:
28  static CbmBinnedHitReader* Instance();
29  static CbmBinnedHitReader* Instance(const char* name);
30  static void AddReader(const char* name);
31  static void SetSettings(CbmBinnedSettings* v) { fSettings = v; }
32 
33 public:
37  virtual ~CbmBinnedHitReader();
38  virtual void AddStation(CbmBinnedStation* station) {
39  fStations.push_back(station);
40  }
41  virtual void Read() = 0;
42  virtual void Handle() {
43  } // Called optionally and is not implemented by the most of readers.
44  virtual void Finish() {
45  } // Called optionally and is not implemented by the most of readers.
46 
47 protected:
48  std::vector<CbmBinnedStation*> fStations;
49  TClonesArray* fHitArray;
50 
51 protected:
52  static std::map<std::string, CbmBinnedHitReader*> fReaders;
54 };
55 
56 #endif /* HITREADER_H */
Settings.h
CbmBinnedHitReader::AddStation
virtual void AddStation(CbmBinnedStation *station)
Definition: HitReader.h:38
CbmBinnedHitReader::fHitArray
TClonesArray * fHitArray
Definition: HitReader.h:49
CbmBinnedHitReader::fStations
std::vector< CbmBinnedStation * > fStations
Definition: HitReader.h:48
CbmBinnedHitReader::~CbmBinnedHitReader
virtual ~CbmBinnedHitReader()
Definition: HitReader.cxx:97
CbmBinnedHitReader::CbmBinnedHitReader
CbmBinnedHitReader(const CbmBinnedHitReader &)=delete
CbmBinnedHitReader::fSettings
static CbmBinnedSettings * fSettings
Definition: HitReader.h:53
CbmBinnedHitReader::CbmBinnedHitReader
CbmBinnedHitReader()
Definition: HitReader.cxx:95
CbmBinnedHitReader::operator=
CbmBinnedHitReader & operator=(const CbmBinnedHitReader &)=delete
CbmBinnedHitReader::Read
virtual void Read()=0
CbmBinnedHitReader::Instance
static CbmBinnedHitReader * Instance()
Definition: HitReader.cxx:813
CbmBinnedHitReader::SetSettings
static void SetSettings(CbmBinnedSettings *v)
Definition: HitReader.h:31
CbmBinnedHitReader::fReaders
static std::map< std::string, CbmBinnedHitReader * > fReaders
Definition: HitReader.h:52
CbmBinnedHitReader
Definition: HitReader.h:26
CbmBinnedStation
Definition: Station.h:29
CbmBinnedHitReader::AddReader
static void AddReader(const char *name)
Definition: HitReader.cxx:832
CbmPixelHit.h
CbmBinnedHitReader::Handle
virtual void Handle()
Definition: HitReader.h:42
v
__m128 v
Definition: L1/vectors/P4_F32vec4.h:1
CbmBinnedSettings
Definition: Settings.h:27
CbmBinnedHitReader::Finish
virtual void Finish()
Definition: HitReader.h:44