CMS 3D CMS Logo

SiStripDigiToRaw.h
Go to the documentation of this file.
1 
2 #ifndef EventFilter_SiStripRawToDigi_SiStripDigiToRaw_H
3 #define EventFilter_SiStripRawToDigi_SiStripDigiToRaw_H
4 
9 #include "boost/cstdint.hpp"
10 #include <string>
11 
13 #include "WarningSummary.h"
14 
15 class SiStripFedCabling;
17 class SiStripDigi;
18 class SiStripRawDigi;
19 
20 namespace sistrip {
21 
30 
31  public: // ----- public interface -----
32 
33  DigiToRaw(FEDReadoutMode mode, uint8_t packetCode, bool use_fed_key);
34  ~DigiToRaw();
35 
36  //digi to raw with default headers
37  void createFedBuffers( edm::Event&,
40  std::unique_ptr<FEDRawDataCollection>& buffers );
41  void createFedBuffers( edm::Event&,
44  std::unique_ptr<FEDRawDataCollection>& buffers);
45 
46  //with input raw data for copying header
47  void createFedBuffers( edm::Event&,
51  std::unique_ptr<FEDRawDataCollection>& buffers );
52  void createFedBuffers( edm::Event&,
56  std::unique_ptr<FEDRawDataCollection>& buffers);
57 
58  inline void fedReadoutMode( FEDReadoutMode mode ) { mode_ = mode; }
59 
60  void printWarningSummary() const { warnings_.printSummary(); }
61 
62  private: // ----- private data members -----
63 
64  template<class Digi_t>
65  void createFedBuffers_( edm::Event&,
68  std::unique_ptr<FEDRawDataCollection>& buffers,
69  bool zeroSuppressed);
70 
71  template<class Digi_t>
72  void createFedBuffers_( edm::Event&,
76  std::unique_ptr<FEDRawDataCollection>& buffers,
77  bool zeroSuppressed);
78 
79 
80 
83 
85  uint8_t packetCode_;
86  bool useFedKey_;
88 
90  };
91 
92 }
93 
94 
95 #endif // EventFilter_SiStripRawToDigi_SiStripDigiToRaw_H
96 
void fedReadoutMode(FEDReadoutMode mode)
Input: edm::DetSetVector<SiStripDigi>. Output: FEDRawDataCollection.
WarningSummary warnings_
void printWarningSummary() const
sistrip classes
A Digi for the silicon strip detector, containing both strip and adc information, and suitable for st...
Definition: SiStripDigi.h:12
#define dso_hidden
Definition: Visibility.h:12
FEDReadoutMode mode_
Contains cabling info at the device level, including DetId, APV pair numbers, hardware addresses...
#define begin
Definition: vmac.h:32
collection_type::const_iterator const_iterator
Definition: DetSet.h:33
A Digi for the silicon strip detector, containing only adc information, and suitable for storing raw ...
FEDBufferGenerator bufferGenerator_