11#include <framework/gearbox/Unit.h>
13#include <cry/CRYGenerator.h>
14#include <cry/CRYSetup.h>
15#include <VecGeom/volumes/UnplacedVolume.h>
22 class MCParticleGraph;
159 std::unique_ptr<vecgeom::VUnplacedVolume>
m_world;
C++ Interface for the generator CRY.
void setReturnKaons(bool kaons)
Set whether or not CRY should return kaons.
void setDate(const std::string &date)
Sets the date used for generation (the cosmic-ray distribution is adjusted to account for the eleven ...
bool m_returnElectrons
Whether or not CRY should return electrons.
void setTimeOffset(double timeoffset)
Sets the time offset.
void setMaxTrials(int maxtrials)
Sets the maximum number of trials.
void setReturnProtons(bool protons)
Set whether or not CRY should return protons.
CRY()=default
Constructor.
std::string m_cosmicDataDir
directory that holds cosmic data files.
std::unique_ptr< vecgeom::VUnplacedVolume > m_acceptance
acceptance shape
bool m_returnKaons
Whether or not CRY should return kaons.
void setBoxLength(double length)
Set the size of the square nxn plane where CRY generates cosmics.
bool m_returnMuons
Whether or not CRY should return muons.
int m_subboxLength
length of the square n-n plane in Cry in meters
void setReturnGammas(bool gammas)
Set whether or not CRY should return gammas.
~CRY()=default
Destructor.
void setReturnElectrons(bool electrons)
Set whether or not CRY should return electrons.
bool m_returnGammas
Whether or not CRY should return gammas.
std::vector< double > m_acceptSize
Shape parameters for the acceptance shape.
void setCosmicDataDir(const std::string &cosmicdatadir)
Sets the directory that holds cosmic data.
std::string m_date
date used for generation (month-day-year).
std::unique_ptr< vecgeom::VUnplacedVolume > m_world
world box shape
void setReturnMuons(bool muons)
Set whether or not CRY should return muons.
void setReturnNeutrons(bool neutrons)
Set whether or not CRY should return neutrons.
double m_kineticEnergyThreshold
kinetic energy threshold.
double m_timeOffset
time offset in nanoseconds.
std::unique_ptr< CRYGenerator > m_cryGenerator
The CRY generator.
void setKineticEnergyThreshold(double kineticenergythreshold)
Sets the kinetic energy threshold, particles below that value will be ignored.
std::unique_ptr< CRYSetup > m_crySetup
The CRY generator setup.
void setReturnPions(bool pions)
Set whether or not CRY should return pions.
bool m_returnProtons
Whether or not CRY should return protons.
bool m_returnNeutrons
Whether or not CRY should return neutrons.
int m_totalTrials
total number of thrown events.
bool m_returnPions
Whether or not CRY should return pions.
void setAcceptance(const std::vector< double > &size)
Sets the size of the acceptance volume.
int m_maxTrials
number of trials per event.
Class to build, validate and sort a particle decay chain.
static const double m
[meters]
void init()
Initializes the generator.
void generateEvent(MCParticleGraph &mcGraph)
Generates one single event.
void term()
Terminates the generator.
Abstract base class for different kinds of events.