10 #ifndef LARSIM_ALGORITHMS_ACTIVEVOLUMEVERTEXSAMPLER_H 11 #define LARSIM_ALGORITHMS_ACTIVEVOLUMEVERTEXSAMPLER_H 23 #include "cetlib_except/exception.h" 33 #include "TLorentzVector.h" 49 Comment(
"Technique used to choose vertex locations"),
55 Comment(
"Seed used for sampling vertex locations"),
56 [
this]() ->
bool {
return type_() ==
"sampled"; }
61 Comment(
"Coordinates of the fixed vertex position"),
62 [
this]() ->
bool {
return type_() ==
"fixed"; }
72 const std::string& generator_name);
76 const std::string& generator_name)
78 rand_service, geom, generator_name) {}
99 std::unique_ptr<std::discrete_distribution<size_t> >
fTPCDist;
vertex_type_t fVertexType
TLorentzVector fVertexPosition
TLorentzVector sample_vertex_pos(const geo::Geometry &geom)
ActiveVolumeVertexSampler(const fhicl::Table< Config > &conf, rndm::NuRandomService &rand_service, const geo::Geometry &geom, const std::string &generator_name)
fhicl::Sequence< double, 3 > position_
fhicl::Atom< std::string > type_
The geometry of one entire detector, as served by art.
An art service to assist in the distribution of guaranteed unique seeds to all engines within an art ...
fhicl::OptionalAtom< std::string > seed_
void reconfigure(const fhicl::Table< Config > &conf, const geo::Geometry &geom)
std::unique_ptr< std::discrete_distribution< size_t > > fTPCDist
ActiveVolumeVertexSampler(const fhicl::ParameterSet &pset, rndm::NuRandomService &rand_service, const geo::Geometry &geom, const std::string &generator_name)
std::string fGeneratorName
An art service to assist in the distribution of guaranteed unique seeds to all engines within an art ...
Event Generation using GENIE, cosmics or single particles.
art framework interface to geometry description
std::mt19937_64 fTPCEngine