CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_5_3_13_patch3/src/SimTracker/SiPixelDigitizer/interface/SiPixelDigitizer.h

Go to the documentation of this file.
00001 #ifndef SiPixelDigitizer_h
00002 #define SiPixelDigitizer_h
00003 
00016 #include "FWCore/Framework/interface/EDProducer.h"
00017 #include "FWCore/Framework/interface/Event.h"
00018 #include "DataFormats/Common/interface/Handle.h"
00019 #include "FWCore/Framework/interface/EventSetup.h"
00020 
00021 #include "SimTracker/SiPixelDigitizer/interface/SiPixelDigitizerAlgorithm.h"
00022 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00023 #include "DataFormats/SiPixelDigi/interface/PixelDigi.h"
00024 #include "DataFormats/SiPixelDigi/interface/PixelDigiCollection.h"
00025 #include "SimDataFormats/TrackerDigiSimLink/interface/PixelDigiSimLink.h"
00026 #include "SimDataFormats/CrossingFrame/interface/MixCollection.h"
00027 //#include "SimDataFormats/TrackerDigiSimLink/interface/PixelDigiSimLinkCollection.h"
00028 
00029 namespace CLHEP {
00030   class HepRandomEngine;
00031 }
00032 
00033 namespace cms
00034 {
00035   class SiPixelDigitizer : public edm::EDProducer 
00036   {
00037   public:
00038 
00039     explicit SiPixelDigitizer(const edm::ParameterSet& conf);
00040 
00041     virtual ~SiPixelDigitizer();
00042 
00043     virtual void produce(edm::Event& e, const edm::EventSetup& c);
00044 
00045     virtual void beginJob() {}
00046   private:
00047     edm::ParameterSet conf_;
00048     bool first;
00049     SiPixelDigitizerAlgorithm*  _pixeldigialgo;
00050     typedef std::vector<std::string> vstring;
00051     vstring trackerContainers;
00052     typedef std::map<unsigned int, std::vector<PSimHit>,std::less<unsigned int> > simhit_map;
00053     typedef simhit_map::iterator simhit_map_iterator;
00054     simhit_map SimHitMap;
00055     std::vector<edm::DetSet<PixelDigi> > theDigiVector;
00056     std::vector<edm::DetSet<PixelDigiSimLink> > theDigiLinkVector;
00057     std::string geometryType;
00058     CLHEP::HepRandomEngine* rndEngine;
00059     //   std::vector<PixelDigiSimLink> linkcollector;
00060 
00061     // infrastructure to reject dead pixels as defined in db (added by F.Blekman)
00062   };
00063 }
00064 
00065 
00066 #endif