CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_5_3_14/src/EventFilter/RPCRawToDigi/interface/RPCPackingModule.h

Go to the documentation of this file.
00001 #ifndef RPCRawToDigi_RPCPackingModule_H
00002 #define RPCRawToDigi_RPCPackingModule_H
00003 
00008 #include "FWCore/Framework/interface/EDProducer.h"
00009 #include "EventFilter/RPCRawToDigi/interface/EventRecords.h"
00010 #include "FWCore/Utilities/interface/InputTag.h"
00011 #include "DataFormats/RPCDigi/interface/RPCDigiCollection.h"
00012 
00013 #include <vector> 
00014 
00015 namespace edm {class ParameterSet;}
00016 namespace edm {class EventSetup; }
00017 namespace edm {class Event; }
00018 
00019 class FEDRawData;
00020 class RPCRecordFormatter;
00021 class RPCReadOutMapping;
00022 
00023 class RPCPackingModule : public edm::EDProducer {
00024 public:
00025 
00027   explicit RPCPackingModule( const edm::ParameterSet& );
00028 
00030   virtual ~RPCPackingModule();
00031 
00033   virtual void produce( edm::Event&, const edm::EventSetup& );
00034 
00035   static std::vector<rpcrawtodigi::EventRecords> eventRecords(
00036       int fedId, int trigger_BX, const RPCDigiCollection* , const RPCRecordFormatter& ); 
00037 
00038 private:
00039   FEDRawData * rawData( int fedId, unsigned int lvl1_ID, const RPCDigiCollection* , const RPCRecordFormatter& );
00040 
00041 private:
00042   edm::InputTag dataLabel_;
00043   unsigned long eventCounter_;
00044   const RPCReadOutMapping * theCabling; 
00045 
00046 };
00047 #endif