Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:11:16

0001 #ifndef FastSimulation_MaterialEffects_CMSDummyDeexcitation_H
0002 #define FastSimulation_MaterialEffects_CMSDummyDeexcitation_H
0003 
0004 /** 
0005  * This class is needed as a dummy interface to Geant4  
0006  * nuclear de-excitation module; no secondary produced
0007  *
0008  * \author Vladimir Ivanchenko
0009  * $Date: 20-Jan-2015
0010  */
0011 
0012 #include "G4VPreCompoundModel.hh"
0013 #include "G4ReactionProductVector.hh"
0014 
0015 class G4Fragment;
0016 class G4HadFinalState;
0017 class G4HadProjectile;
0018 class G4Nucleus;
0019 
0020 class CMSDummyDeexcitation : public G4VPreCompoundModel {
0021 public:
0022   CMSDummyDeexcitation() : G4VPreCompoundModel(nullptr, "PRECO"){};
0023 
0024   ~CMSDummyDeexcitation() override{};
0025 
0026   G4HadFinalState* ApplyYourself(const G4HadProjectile&, G4Nucleus&) override { return nullptr; }
0027 
0028   G4ReactionProductVector* DeExcite(G4Fragment&) override { return new G4ReactionProductVector(); };
0029 
0030   void DeExciteModelDescription(std::ostream&) const override {}
0031 };
0032 #endif