Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:10:57

0001 #ifndef RPCRecordFormatter_H
0002 #define RPCRecordFormatter_H
0003 
0004 /** \class Interprets the RPC raw data and fills the RPCDigiCollection
0005  */
0006 
0007 #include "DataFormats/RPCDigi/interface/RPCDigiCollection.h"
0008 #include "DataFormats/RPCDigi/interface/RPCRawDataCounts.h"
0009 #include "DataFormats/RPCDigi/interface/RPCRawSynchro.h"
0010 #include "EventFilter/RPCRawToDigi/interface/EventRecords.h"
0011 
0012 class RPCReadOutMapping;
0013 #include <vector>
0014 
0015 class RPCRecordFormatter {
0016 public:
0017   ///Creator
0018   RPCRecordFormatter(int fedId, const RPCReadOutMapping* readoutMapping);
0019 
0020   ///Destructor
0021   ~RPCRecordFormatter();
0022 
0023   std::vector<rpcrawtodigi::EventRecords> recordPack(uint32_t rawDetId, const RPCDigi& digi, int trigger_BX) const;
0024 
0025   int recordUnpack(const rpcrawtodigi::EventRecords& event,
0026                    RPCDigiCollection* prod,
0027                    RPCRawDataCounts* counter,
0028                    RPCRawSynchro::ProdItem* synchro);
0029 
0030 private:
0031   int currentFED;
0032   int currentTbLinkInputNumber;
0033 
0034   const RPCReadOutMapping* readoutMapping;
0035 };
0036 
0037 #endif