CMS 3D CMS Logo

CMSSW_4_4_3_patch1/src/EventFilter/DTRawToDigi/plugins/DTROS25Unpacker.h

Go to the documentation of this file.
00001 #ifndef DTROS25Unpacker_h
00002 #define DTROS25Unpacker_h
00003 
00014 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00015 
00016 #include <EventFilter/DTRawToDigi/plugins/DTUnpacker.h>
00017 
00018 class DTDataMonitorInterface;
00019 class DTROS25Data;
00020 
00021 class DTROS25Unpacker : public DTUnpacker {
00022 
00023 public:
00024   
00026   DTROS25Unpacker(const edm::ParameterSet& ps);
00027 
00029   virtual ~DTROS25Unpacker();
00030 
00031   // Unpacking method
00032   virtual void interpretRawData(const unsigned int* index, int datasize,
00033                                 int dduID,
00034                                 edm::ESHandle<DTReadOutMapping>& mapping, 
00035                                 std::auto_ptr<DTDigiCollection>& product,
00036                                 std::auto_ptr<DTLocalTriggerCollection>& product2,
00037                                 uint16_t rosList = 0);
00038 
00039   inline const std::vector<DTROS25Data> & getROSsControlData() const {
00040     return controlDataFromAllROS;
00041   }
00042 
00043 private:
00044 
00045   int swap(int x);
00046 
00048   bool localDAQ;
00049 
00051   bool readingDDU;
00052 
00054   bool readDDUIDfromDDU;
00056   int hardcodedDDUID;
00057 
00059   bool writeSC;
00060 
00062   bool performDataIntegrityMonitor;
00063 
00064   bool debug;
00065 
00066   DTDataMonitorInterface * dataMonitor;
00067 
00068   std::vector<DTROS25Data> controlDataFromAllROS; 
00069 
00070 };
00071 
00072 #endif