19 #include <TLorentzVector.h>
29 using namespace genie;
30 using namespace genie::geometry;
33 PointGeomAnalyzer::PointGeomAnalyzer(
int pdg) :
36 map<int,double> tgtmap;
37 tgtmap.insert( map<int, double>::value_type(pdg, 1.) );
43 unsigned int n,
const int tgtpdgc[],
const double weight[]) :
46 map<int,double> tgtmap;
47 for(
unsigned int i=0; i<n; i++)
48 tgtmap.insert( map<int, double>::value_type(tgtpdgc[i], weight[i]) );
81 const TLorentzVector & ,
const TLorentzVector & )
90 const TLorentzVector & ,
const TLorentzVector & ,
int )
104 map<int,double>::const_iterator iter;
105 for(iter = tgtmap.begin(); iter != tgtmap.end(); ++iter) {
106 int tgtpdgc = iter->first;
const TVector3 & GenerateVertex(const TLorentzVector &x, const TLorentzVector &p, int tgtpdg)
PDGCodeList * fCurrPDGCodeList
current list of target nuclei
void Initialize(const map< int, double > &tgtmap)
TVector3 * fCurrVertex
current generated vertex
const PathLengthList & ComputePathLengths(const TLorentzVector &x, const TLorentzVector &p)
const PathLengthList & ComputeMaxPathLengths(void)
PointGeomAnalyzer(int tgtpdgc)
const PDGCodeList & ListOfTargetNuclei(void)
PathLengthList * fCurrPathLengthList
current list of path-lengths
Object to be filled with the neutrino path-length, for all detector geometry materials, when starting from a position x and travelling along the direction of the neutrino 4-momentum.
#define LOG(stream, priority)
A macro that returns the requested log4cpp::Category appending a string (using the FILE...
Defines the GENIE Geometry Analyzer Interface.
void push_back(int pdg_code)