PandaRoot
PndMQMvdPixelDigiProcessorBursts.h
Go to the documentation of this file.
1 /********************************************************************************
2  * Copyright (C) 2014 GSI Helmholtzzentrum fuer Schwerionenforschung GmbH *
3  * *
4  * This software is distributed under the terms of the *
5  * GNU Lesser General Public Licence version 3 (LGPL) version 3, *
6  * copied verbatim in the file "LICENSE" *
7  ********************************************************************************/
15 #ifndef PndMQMvdPixelDigiProcessorBursts_H_
16 #define PndMQMvdPixelDigiProcessorBursts_H_
17 
18 #include "FairMQDevice.h"
19 #include "FairMQLogger.h"
20 #include "FairParGenericSet.h"
21 #include "FairGeoParSet.h"
22 
23 #include "PndMQBurstProcessor.h"
24 #include "PndMQGapEventBuilder.h"
27 #include "PndMapSorter.h"
28 #include "PndGeoHandling.h"
29 
31 #include "PndSdsPixelDigiPar.h"
32 #include "PndSdsTotDigiPar.h"
33 #include "PndSensorNamePar.h"
34 
35 #include "PndSdsHit.h"
36 
37 #include "baseMQtools.h"
38 
39 #include "TMessage.h"
40 
41 #ifndef __CINT__
42 #include <boost/thread.hpp>
43 #include <boost/bind.hpp>
44 #include <boost/serialization/access.hpp>
45 #include <boost/archive/text_iarchive.hpp>
46 #include <boost/archive/binary_iarchive.hpp>
47 #include <boost/serialization/vector.hpp>
48 #include <boost/serialization/unique_ptr.hpp>
49 #include <boost/serialization/export.hpp>
50 #endif //__CINT__
51 
53 
54 using namespace std;
55 
57  public:
58  PndMQMvdPixelDigiProcessorBursts() : PndMQBurstProcessor(), fPixelMapping(0), fGeoHandler(0)
59  {
60  fGeoPar = new FairGeoParSet("FairGeoParSet");
61  fParCList = new TList();
62  fParCList->Add(fGeoPar);
63 
64  fDigiPar = new PndSdsPixelDigiPar("MVDPixelDigiPar");
65  fParCList->Add(fDigiPar);
66 
67  fTotPar = new PndSdsTotDigiPar("MVDPixelTotDigiPar");
68  fParCList->Add(fTotPar);
69 
70  fSensorPar = new PndSensorNamePar("PndSensorNamePar");
71  fParCList->Add(fSensorPar);
72  }
73 
75  {
76  if (fGeoPar != 0)
77  delete fGeoPar;
78  if (fDigiPar != 0)
79  delete fDigiPar;
80  if (fTotPar != 0)
81  delete fTotPar;
82  if (fSensorPar != 0)
83  delete fSensorPar;
84  if (fPixelMapping != 0)
85  delete fPixelMapping;
86  if (fGeoHandler != 0)
87  delete fGeoHandler;
88  }
89 
90  virtual void SetParameters();
91 
92  virtual void ProcessData();
93 
94  private:
95  FairGeoParSet *fGeoPar;
96  PndSdsPixelDigiPar *fDigiPar;
97  PndSdsTotDigiPar *fTotPar;
98  PndSensorNamePar *fSensorPar;
99 
100  PndMQGapEventBuilder fEventBuilder;
101  PndMapSorter fMapSorter;
102  PndMvdPixelClusterFinder fClusterFinder;
103 
104  PndMQMvdChargeWeightedPixelMapping *fPixelMapping;
105  PndGeoHandling *fGeoHandler;
106 };
107 
108 #endif /* PndMQMvdPixelDigiProcessorBursts_H_ */
BOOST_CLASS_EXPORT_GUID(PndSdsHit, "PndSdsHit")
STL namespace.
Charge Digitization Parameter Class for SDS.
Class to access the naming information of the MVD.
PndSdsChargedWeightedPixelMapping: Gets a vector of DigiHits and calculates the cluster center weight...
Unique match between SensorID and path in TGeoManager.
Digitization Parameter Class for SDS-Pixel part.