////////////////////////////////////////////////////////////////////
/// \class RAT::AmBeSourceGen
///
/// \brief  Generates events in the AmBeSource.
///
/// \author Yan Liu (yan.liu@owl.phy.queensu.ca) -- contact person
///
/// REVISION HISTORY:\n
///     30 August 2018 : Y.Liu - First version.
///
///  \details  Generates AmBe coincidences in the AmBe
///           source for any source position according to the run
///           number.  Requires source geometry to be loaded.  No
///           generator position modifications accepted.
///            Requires rate to be set, e.g:
///               /generator/add ambesource
///               /generator/rate/set 62.
///
////////////////////////////////////////////////////////////////////

#ifndef __RAT_AmBeSourceGen__
#define __RAT_AmBeSourceGen__

#include <RAT/Coincidence_Gen.hh>

namespace RAT {

class AmBeSourceGen : public Coincidence_Gen
{
public:
    AmBeSourceGen() : Coincidence_Gen(), fActiveVolumeName("AmBeSource_source_logical") { };
    virtual ~AmBeSourceGen() { };
    virtual void SetState(G4String state);
    virtual void SetPosState(G4String /*state*/);

private:
    G4String const fActiveVolumeName; // name of the volume with the source activity
};

} // namespace RAT

#endif