NSCL DDAS  1.0
Support for XIA DDAS at the NSCL
 All Classes Namespaces Files Functions Variables Macros Pages
DDASUnpacker.h
1 
2 
3 #ifndef DAQ_DDAS_DDASUNPACKER_H
4 #define DAQ_DDAS_DDASUNPACKER_H
5 
6 #include <config.h>
7 #include "DDASHit.h"
8 #include "DDASHitUnpacker.h"
9 
10 #include <EventProcessor.h>
11 #include <TranslatorPointer.h>
12 #include <TCLAnalyzer.h>
13 
14 #include <vector>
15 #include <cstdint>
16 
17 
18 
19 namespace DAQ {
20  namespace DDAS {
21 
22  // Forward declarations
23  class CParameterMapper;
24 
47  class CDDASUnpacker : public CEventProcessor
48  {
49 
50  private:
51  CParameterMapper* m_pParameterMapper;
52  DDASHitUnpacker m_unpacker;
53  std::vector<DDASHit> m_channelList;
54 
55  public:
56 
62  CDDASUnpacker(CParameterMapper& rParameterMapper);
63 
66 
80  void setParameterMapper(CParameterMapper& pParameterMapper);
81 
84 
98  virtual Bool_t operator()(const Address_t pEvent,
99  CEvent& rEvent,
100  CAnalyzer& rAnalyzer,
101  CBufferDecoder& rDecoder);
102 
103  // Utility methods
104  protected:
105  void setEventSize(const Address_t pEvent, CBufferDecoder& rDecoder,
106  CAnalyzer& rAnalyzer);
107  };
108 
109  } // end DDAS namespace
110 } // end DAQ namespace
111 
112 #endif
113 
114 
115 
116 
117 
118 
void setParameterMapper(CParameterMapper &pParameterMapper)
Pass in a different parameter mapper.
Definition: DDASUnpacker.cpp:53
virtual Bool_t operator()(const Address_t pEvent, CEvent &rEvent, CAnalyzer &rAnalyzer, CBufferDecoder &rDecoder)
Process the raw data and call user's mapper.
Definition: DDASUnpacker.cpp:68
CParameterMapper & getParameterMapper() const
Definition: DDASUnpacker.cpp:60
Raw data unpacker for unbuilt data.
Definition: DDASUnpacker.h:47
~CDDASUnpacker()
Definition: DDASUnpacker.cpp:47
CDDASUnpacker(CParameterMapper &rParameterMapper)
Constructor.
Definition: DDASUnpacker.cpp:21
Parse the DDAS Readout event data.
Definition: DDASHitUnpacker.h:30
Definition: SystemBooter.cpp:16
Definition: ParameterMapper.h:14