1- #ifndef PixelDataFormatter_H
2- #define PixelDataFormatter_H
1+ #ifndef EventFilter_SiPixelRawToDigi_interface_PixelDataFormatter_h
2+ #define EventFilter_SiPixelRawToDigi_interface_PixelDataFormatter_h
33/* * \class PixelDataFormatter
44 *
55 * Transforms Pixel raw data of a given FED to orca digi
3333//
3434// Add the phase1 format
3535//
36+ // CMSSW include(s)
3637#include " CondFormats/SiPixelObjects/interface/SiPixelFrameReverter.h"
3738#include " DataFormats/SiPixelDigi/interface/PixelDigi.h"
3839#include " DataFormats/Common/interface/DetSetVector.h"
3940#include " DataFormats/SiPixelRawData/interface/SiPixelRawDataError.h"
41+ #include " DataFormats/SiPixelDigi/interface/SiPixelDigiConstants.h"
4042#include " DataFormats/DetId/interface/DetIdCollection.h"
43+ #include " DataFormats/SiPixelDetId/interface/PixelFEDChannel.h"
44+ #include " DataFormats/FEDRawData/interface/FEDRawData.h"
4145#include " EventFilter/SiPixelRawToDigi/interface/ErrorChecker.h"
4246#include " EventFilter/SiPixelRawToDigi/interface/ErrorCheckerPhase0.h"
4347#include " FWCore/Utilities/interface/typedefs.h"
44- #include " DataFormats/SiPixelDetId/interface/PixelFEDChannel.h"
4548
49+ // standard include(s)
4650#include < vector>
4751#include < map>
4852#include < set>
@@ -56,29 +60,26 @@ class SiPixelFedCablingTree;
5660
5761class PixelDataFormatter {
5862public:
59- typedef edm::DetSetVector<PixelDigi> Collection;
60-
61- typedef std::map<int , FEDRawData> RawData;
62- typedef std::vector<PixelDigi> DetDigis;
63- typedef std::map<cms_uint32_t , DetDigis> Digis;
64- typedef std::pair<DetDigis::const_iterator, DetDigis::const_iterator> Range;
65- typedef std::vector<SiPixelRawDataError> DetErrors;
66- typedef std::map<cms_uint32_t , DetErrors> Errors;
67- typedef std::vector<PixelFEDChannel> DetBadChannels;
68- typedef std::map<cms_uint32_t , DetBadChannels> BadChannels;
69-
70- typedef cms_uint32_t Word32;
71- typedef cms_uint64_t Word64;
72-
73- PixelDataFormatter (const SiPixelFedCablingTree* map, bool phase1 = false );
63+ using DetErrors = std::vector<SiPixelRawDataError>;
64+ using Errors = std::map<cms_uint32_t , DetErrors>;
65+ using Collection = edm::DetSetVector<PixelDigi>;
66+ using RawData = std::map<int , FEDRawData>;
67+ using DetDigis = std::vector<PixelDigi>;
68+ using Digis = std::map<cms_uint32_t , DetDigis>;
69+ using DetBadChannels = std::vector<PixelFEDChannel>;
70+ using BadChannels = std::map<cms_uint32_t , DetBadChannels>;
71+ using FEDWordsMap = std::map<int , std::vector<Word32>>;
72+ using ModuleIDSet = std::set<unsigned int >;
73+
74+ PixelDataFormatter (const SiPixelFedCablingTree* map, bool phase1_ = false );
7475
7576 void setErrorStatus (bool ErrorStatus);
7677 void setQualityStatus (bool QualityStatus, const SiPixelQuality* QualityInfo);
77- void setModulesToUnpack (const std::set< unsigned int > * moduleIds);
78+ void setModulesToUnpack (const ModuleIDSet * moduleIds);
7879 void passFrameReverter (const SiPixelFrameReverter* reverter);
7980
80- int nDigis () const { return theDigiCounter ; }
81- int nWords () const { return theWordCounter ; }
81+ int nDigis () const { return theDigiCounter_ ; }
82+ int nWords () const { return theWordCounter_ ; }
8283
8384 void interpretRawData (bool & errorsInEvent, int fedId, const FEDRawData& data, Collection& digis, Errors& errors);
8485
@@ -93,41 +94,33 @@ class PixelDataFormatter {
9394 edmNew::DetSetVector<PixelFEDChannel>& disabled_channelcollection,
9495 DetErrors& nodeterrors);
9596
96- cms_uint32_t getLinkId (cms_uint32_t word32) { return (word32 >> LINK_shift) & LINK_mask; }
97-
9897private:
99- mutable int theDigiCounter;
100- mutable int theWordCounter;
101-
102- SiPixelFedCablingTree const * theCablingTree;
103- const SiPixelFrameReverter* theFrameReverter;
104- const SiPixelQuality* badPixelInfo;
105- const std::set<unsigned int >* modulesToUnpack;
106-
107- bool includeErrors;
108- bool useQualityInfo;
109- int allDetDigis;
110- int hasDetDigis;
111- std::unique_ptr<ErrorCheckerBase> errorcheck;
112-
113- // For the 32bit data format (moved from *.cc namespace, keep uppercase for compatibility)
114- // Add special layer 1 roc for phase1
115- int ADC_shift, PXID_shift, DCOL_shift, ROC_shift, LINK_shift, ROW_shift, COL_shift;
116- Word32 LINK_mask, ROC_mask, DCOL_mask, PXID_mask, ADC_mask, ROW_mask, COL_mask;
117- int maxROCIndex;
118- bool phase1;
98+ mutable int theDigiCounter_;
99+ mutable int theWordCounter_;
100+
101+ SiPixelFedCablingTree const * theCablingTree_;
102+ const SiPixelFrameReverter* theFrameReverter_;
103+ const SiPixelQuality* badPixelInfo_;
104+ const ModuleIDSet* modulesToUnpack_;
105+
106+ bool includeErrors_;
107+ bool useQualityInfo_;
108+ int allDetDigis_;
109+ int hasDetDigis_;
110+ std::unique_ptr<ErrorCheckerBase> errorcheck_;
111+
112+ int maxROCIndex_;
113+ bool phase1_;
119114
120115 int checkError (const Word32& data) const ;
121116
122- int digi2word (cms_uint32_t detId, const PixelDigi& digi, std::map<int , std::vector<Word32> >& words) const ;
123- int digi2wordPhase1Layer1 (cms_uint32_t detId,
124- const PixelDigi& digi,
125- std::map<int , std::vector<Word32> >& words) const ;
117+ int digi2word (cms_uint32_t detId, const PixelDigi& digi, FEDWordsMap& words) const ;
118+ int digi2wordPhase1Layer1 (cms_uint32_t detId, const PixelDigi& digi, FEDWordsMap& words) const ;
126119
127120 std::string print (const PixelDigi& digi) const ;
128121 std::string print (const Word64& word) const ;
129122
130123 cms_uint32_t errorDetId (const SiPixelFrameConverter* converter, int fedId, int errorType, const Word32& word) const ;
131124};
132125
133- #endif
126+ #endif // EventFilter_SiPixelRawToDigi_interface_PixelDataFormatter_h
0 commit comments