//////////////////////////////////////////////////////////////////// /// \class RAT::Co57SourceGen /// /// \brief Generates events in the Co57 Sample. /// /// \author Nuno Barros /// \author Valentina Lozza -- contact person /// /// REVISION HISTORY:\n /// /// 17-07-2013 : N. Barros : Modified the class to derive from DecayChain_Gen instead of /// GLG4Gen. This solves the timing problem with timing of pileup events. /// 14-03-2017 : N. Barros : Small modification to comply with base generator changes. /// /// /// \details Generates Co57 decays in the gas volume of the Co57 /// source for any source position. Requires source /// geometry to be loaded. No generator position /// modifications accepted. /// /generator/add co57source /// /generator/rate/set 1 /// //////////////////////////////////////////////////////////////////// #ifndef __RAT_Co57SourceGen__ #define __RAT_Co57SourceGen__ #include #include #include class G4VPhysicalVolume; namespace RAT { // Generate decaychain events for Co57 in the Co57 calibration source class Co57SourceGen : public DecayChain_Gen { public: Co57SourceGen(); virtual ~Co57SourceGen() {}; virtual bool IsRepeatable() const { return true; }; virtual void SetState(G4String state); virtual void SetPosState(G4String /*state*/); protected: std::string fTimeGenName; ///< name of time generator: default "poisson" std::string fPosGenName; ///< name of time generator: default "fill" std::string fDecayStr; ///< generator initialization, specified by user: std::string fSourceName; }; } // namespace RAT #endif