Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:30:19

0001 //--------------------------------------------------------

0002 // File name:     CMSDarkPairProductionProcess

0003 //

0004 //  Author:        Dustin Stolp (dostolp@ucdavis.edu)

0005 //                 Sushil S. Chauhan (schauhan@cern.ch)

0006 // --------------------------------------------------------

0007 #ifndef SimG4Core_CustomPhysics_CMSDarkPairProductionProcess_h
0008 #define SimG4Core_CustomPhysics_CMSDarkPairProductionProcess_h
0009 
0010 #include "SimG4Core/CustomPhysics/interface/CMSDarkPairProduction.h"
0011 #include "globals.hh"
0012 #include "G4VEmProcess.hh"
0013 #include "G4Gamma.hh"
0014 
0015 class G4ParticleDefinition;
0016 class G4VEmModel;
0017 class G4MaterialCutsCouple;
0018 class G4DynamicParticle;
0019 
0020 class CMSDarkPairProductionProcess : public G4VEmProcess
0021 
0022 {
0023 public:  // with description

0024   CMSDarkPairProductionProcess(G4double df = 1E0,
0025                                const G4String& processName = "conv",
0026                                G4ProcessType type = fElectromagnetic);
0027 
0028   ~CMSDarkPairProductionProcess() override;
0029 
0030   // true for Gamma only.

0031   G4bool IsApplicable(const G4ParticleDefinition&) override;
0032 
0033   G4double MinPrimaryEnergy(const G4ParticleDefinition*, const G4Material*) override;
0034 
0035 protected:
0036   void InitialiseProcess(const G4ParticleDefinition*) override;
0037 
0038 private:
0039   G4bool isInitialised;
0040   G4double darkFactor;
0041 };
0042 
0043 #endif