CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_1/src/SimMuon/RPCDigitizer/src/RPCSynchronizer.h

Go to the documentation of this file.
00001 #ifndef RPCDigitizer_RPCSynchronizer_h
00002 #define RPCDigitizer_RPCSynchronizer_h
00003 
00011 #include<cstring>
00012 #include<iostream>
00013 #include<fstream>
00014 #include<string>
00015 #include<vector>
00016 #include<stdlib.h>
00017 
00018 //#include "CLHEP/config/CLHEP.h"
00019 #include "CLHEP/Random/Random.h"
00020 #include "CLHEP/Random/RandFlat.h"
00021 #include "CLHEP/Random/RandGaussQ.h"
00022 #include "CLHEP/Random/RandPoissonQ.h"
00023 
00024 #include <FWCore/Framework/interface/Frameworkfwd.h>
00025 #include <FWCore/Framework/interface/EDAnalyzer.h>
00026 #include <FWCore/Framework/interface/Event.h>
00027 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00028 #include "FWCore/ServiceRegistry/interface/Service.h"
00029 #include <set>
00030 
00031 class PSimHit;
00032 class RPCSimSetUp;
00033 
00034 namespace edm{
00035   class ParameterSet;
00036 }
00037 
00038 namespace CLHEP {
00039   class RandGaussianQ;
00040   class RandPoissonQ;
00041   class RandFlat;
00042 }
00043 
00044 class RPCSynchronizer
00045 {
00046  public:
00047   RPCSynchronizer(const edm::ParameterSet& config);
00048   ~RPCSynchronizer();
00049 
00050   int getSimHitBx(const PSimHit*);
00051   void setRPCSimSetUp(RPCSimSetUp *simsetup){theSimSetUp = simsetup;}
00052   RPCSimSetUp* getRPCSimSetUp(){ return theSimSetUp; }
00053 
00054   void setRandomEngine(CLHEP::HepRandomEngine& eng);
00055 
00056  private:
00057 
00058   double resRPC;
00059   double timOff;
00060   double dtimCs;
00061   double resEle;
00062   double sspeed;
00063   double cspeed;
00064   double lbGate;
00065   double lbGateNew;
00066   double cosmicPar;
00067 
00068   bool cosmics;
00069 
00070   CLHEP::RandGaussQ *gauss1;
00071   CLHEP::RandGaussQ *gauss2;
00072   RPCSimSetUp * theSimSetUp;
00073 
00074 };
00075 #endif
00076