PandaRoot
PndMQSorterMerger.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 PndMQSorterMerger_H_
16 #define PndMQSorterMerger_H_
17 
18 #include "FairMQDevice.h"
19 
20 #include "PndSdsDigiTopix4.h"
21 
22 #include <boost/serialization/access.hpp>
23 #include <boost/archive/text_iarchive.hpp>
24 #include <boost/archive/binary_iarchive.hpp>
25 #include <boost/serialization/vector.hpp>
26 
27 class PndMQSorterMerger : public FairMQDevice {
28  public:
30  virtual ~PndMQSorterMerger();
31 
32  template <class Archive>
33  void serialize(Archive &ar, const unsigned int version)
34  {
35  ar &fInputData;
36  ar &fOutputData;
37  }
38 
39  protected:
40  virtual void Run();
41  std::vector<std::vector<PndSdsDigiTopix4>> fData;
42  std::vector<PndSdsDigiTopix4> fOutputData;
43  std::vector<PndSdsDigiTopix4> fInputData;
44 
45 #ifndef __CINT__ // for BOOST serialization
48 #endif // for BOOST serialization
49  std::vector<PndSdsDigiTopix4> fTopixData;
50  std::vector<PndSdsDigiTopix4> fCurrentOutput;
51  std::vector<PndSdsDigiTopix4> fNextOutput;
52  std::vector<bool> fRunningStatus;
53 };
54 
55 #endif /* PndMQSorterMerger_H_ */
std::vector< PndSdsDigiTopix4 > fInputData
std::vector< PndSdsDigiTopix4 > fOutputData
friend class boost::serialization::access
std::vector< PndSdsDigiTopix4 > fNextOutput
std::vector< std::vector< PndSdsDigiTopix4 > > fData
virtual ~PndMQSorterMerger()
void serialize(Archive &ar, const unsigned int version)
std::vector< PndSdsDigiTopix4 > fTopixData
std::vector< bool > fRunningStatus
virtual void Run()
std::vector< PndSdsDigiTopix4 > fCurrentOutput