15 #ifndef PndMQFileSinkBursts_H_
16 #define PndMQFileSinkBursts_H_
23 #include "TClonesArray.h"
28 #include "TObjString.h"
30 #include "FairMQDevice.h"
31 #include "FairMQLogger.h"
32 #include "FairParGenericSet.h"
33 #include "FairGeoParSet.h"
42 #include "baseMQtools.h"
47 #include <boost/thread.hpp>
48 #include <boost/bind.hpp>
49 #include <boost/serialization/access.hpp>
50 #include <boost/archive/text_iarchive.hpp>
51 #include <boost/archive/binary_iarchive.hpp>
52 #include <boost/serialization/vector.hpp>
53 #include <boost/serialization/unique_ptr.hpp>
71 , fHasBoostSerialization(false)
72 , fOutputFileName(outputFileName)
76 gSystem->ResetSignal(kSigInterrupt);
77 gSystem->ResetSignal(kSigTermination);
80 using namespace baseMQ::tools::resolve;
82 if (is_same<boost::archive::binary_iarchive, boost::archive::binary_iarchive>::value || is_same<boost::archive::binary_iarchive, boost::archive::text_iarchive>::value)
84 if (has_BoostSerialization<FairTimeStamp,
void(boost::archive::binary_iarchive&,
const unsigned int)>::value == 1)
86 fHasBoostSerialization =
true;
90 fGeoPar =
new FairGeoParSet(
"FairGeoParSet");
91 fParCList =
new TList();
92 fParCList->Add(fGeoPar);
95 fParCList->Add(fDigiPar);
98 fParCList->Add(fTotPar);
101 fParCList->Add(fSensorPar);
109 if (fHitVector.size() > 0)
117 fOutputFileName = fileName;
136 void UpdateParameters();
137 FairParGenericSet* UpdateParameter(FairParGenericSet* thisPar);
138 static void CustomCleanup(
void *data,
void *hint);
140 template <
class Archive>
165 #ifndef __CINT__ // for BOOST serialization
166 friend class boost::serialization::access;
169 #endif // for BOOST serialization
PndMQFileSinkBursts(std::string outputFileName="FilesSinkBursts.root")
PndSdsTotDigiPar * fTotPar
Charge Digitization Parameter Class for SDS.
void serialize(Archive &ar, const unsigned int version)
PndSensorNamePar * fSensorPar
virtual void InitOutputFile(TString defaultId="100")
PndSdsPixelDigiPar * fDigiPar
std::string fOutputFileName
bool fHasBoostSerialization
virtual ~PndMQFileSinkBursts()
vector< FairTimeStamp * > fHitVector
virtual void SetFileName(std::string fileName)
Unique match between SensorID and path in TGeoManager.
Digitization Parameter Class for SDS-Pixel part.