CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_5_3_14/src/EventFilter/CastorRawToDigi/interface/CastorUnpacker.h

Go to the documentation of this file.
00001 /* -*- C++ -*- */
00002 #ifndef CastorUnpacker_h_included
00003 #define CastorUnpacker_h_included 1
00004 
00005 #include "DataFormats/HcalDigi/interface/CastorDataFrame.h"
00006 #include "DataFormats/HcalDigi/interface/HcalCalibDataFrame.h"
00007 #include "DataFormats/HcalDigi/interface/HcalTriggerPrimitiveDigi.h"
00008 // #include "DataFormats/HcalDigi/interface/HcalHistogramDigi.h"
00009 #include "DataFormats/HcalDigi/interface/HcalUnpackerReport.h"
00010 #include "DataFormats/FEDRawData/interface/FEDRawData.h"
00011 #include "CondFormats/CastorObjects/interface/CastorElectronicsMap.h"
00012 #include <set>
00013 #include "EventFilter/CastorRawToDigi/interface/CastorRawCollections.h"
00014 
00015 class CastorUnpacker {
00016 public:
00017 
00019   CastorUnpacker(int sourceIdOffset, int beg, int end) ;
00020   void setExpectedOrbitMessageTime(int time) { expectedOrbitMessageTime_=time; }
00022   // void unpack(const FEDRawData& raw, const CastorElectronicsMap& emap, std::vector<HcalHistogramDigi>& histoDigis);
00023   void unpack(const FEDRawData& raw, const CastorElectronicsMap& emap, CastorRawCollections& conts, HcalUnpackerReport& report, bool silent=false);
00024 private:
00025   int sourceIdOffset_; 
00026   int startSample_; 
00027   int endSample_; 
00028   int expectedOrbitMessageTime_; 
00029   std::set<CastorElectronicsId> unknownIds_,unknownIdsTrig_; 
00030 };
00031 
00032 #endif // CastorUnpacker_h_included