GENIEGenerator
|
#include <PathSegmentList.h>
Public Member Functions | |
PathSegment () | |
~PathSegment () | |
void | SetEnter (const TVector3 &p3enter, double raydist) |
point of entry to geometry element More... | |
void | SetEnter (const Double_t *p3enter, double raydist) |
void | SetExit (const TVector3 &p3exit) |
point of exit from geometry element More... | |
void | SetExit (const Double_t *p3exit) |
void | SetGeo (const TGeoVolume *gvol, const TGeoMedium *gmed, const TGeoMaterial *gmat) |
info about the geometry element More... | |
void | SetPath (const char *path) |
void | SetStep (Double_t step, bool setlimits=true) |
step taken in the geometry element More... | |
bool | IsTrimmedEmpty () const |
Double_t | GetSummedStepRange () const |
get the sum of all the step range (in case step has been trimmed or split) More... | |
TVector3 | GetPosition (Double_t frac) const |
calculate position within allowed ranges passed on fraction of total More... | |
void | DoCrossCheck (const TVector3 &startpos, double &ddist, double &dstep) const |
perform cross check on segment, return differences More... | |
void | Print (ostream &stream) const |
Public Attributes | |
Double_t | fRayDist |
distance from start of ray More... | |
Double_t | fStepLength |
total step size in volume More... | |
const TGeoVolume * | fVolume |
ref only ptr to TGeoVolume More... | |
const TGeoMedium * | fMedium |
ref only ptr to TGeoMedium More... | |
const TGeoMaterial * | fMaterial |
ref only ptr to TGeoMaterial More... | |
TVector3 | fEnter |
top vol coordinates and units More... | |
TVector3 | fExit |
top vol coordinates and units More... | |
std::string | fPathString |
full path names More... | |
StepRangeSet | fStepRangeSet |
collection of {steplo,stephi} pairs More... | |
Friends | |
ostream & | operator<< (ostream &stream, const PathSegment &list) |
bool | operator< (const PathSegment &lhs, const PathSegment &rhs) |
Definition at line 56 of file PathSegmentList.h.
PathSegment::PathSegment | ( | void | ) |
Definition at line 76 of file PathSegmentList.cxx.
|
inline |
Definition at line 60 of file PathSegmentList.h.
void PathSegment::DoCrossCheck | ( | const TVector3 & | startpos, |
double & | ddist, | ||
double & | dstep | ||
) | const |
perform cross check on segment, return differences
Definition at line 84 of file PathSegmentList.cxx.
References fEnter, fExit, fRayDist, and fStepLength.
Referenced by genie::geometry::PathSegmentList::CrossCheck().
TVector3 PathSegment::GetPosition | ( | Double_t | frac | ) | const |
calculate position within allowed ranges passed on fraction of total
calculate position within allowed ranges passed as fraction of trimmed segment seg.fEnter + fractotal * ( seg.fExit - seg.fEnter );
Definition at line 148 of file PathSegmentList.cxx.
References fEnter, fExit, fStepLength, fStepRangeSet, GetSummedStepRange(), LOG, pFATAL, pINFO, and genie::units::sr.
Referenced by genie::geometry::ROOTGeomAnalyzer::GenerateVertex().
Double_t PathSegment::GetSummedStepRange | ( | ) | const |
get the sum of all the step range (in case step has been trimmed or split)
Definition at line 138 of file PathSegmentList.cxx.
References fStepRangeSet, and genie::units::sr.
Referenced by genie::geometry::ROOTGeomAnalyzer::ComputeMatLengths(), genie::geometry::PathSegmentList::FillMatStepSum(), genie::geometry::GeomVolSelectorI::GenerateTrimmedList(), genie::geometry::ROOTGeomAnalyzer::GenerateVertex(), and GetPosition().
|
inline |
Definition at line 84 of file PathSegmentList.h.
References fStepRangeSet.
void PathSegment::Print | ( | ostream & | stream | ) | const |
Definition at line 95 of file PathSegmentList.cxx.
References fEnter, fMaterial, fPathString, fRayDist, fStepLength, fStepRangeSet, fVolume, genie::units::sr, and genie::pathsegutils::Vec3AsString().
Referenced by genie::geometry::operator<<().
|
inline |
point of entry to geometry element
Definition at line 63 of file PathSegmentList.h.
References fEnter, and fRayDist.
Referenced by genie::geometry::ROOTGeomAnalyzer::SwimOnce().
|
inline |
Definition at line 65 of file PathSegmentList.h.
References fEnter, and fRayDist.
|
inline |
point of exit from geometry element
Definition at line 69 of file PathSegmentList.h.
References fExit.
Referenced by genie::geometry::ROOTGeomAnalyzer::SwimOnce().
|
inline |
Definition at line 70 of file PathSegmentList.h.
References fExit.
|
inline |
info about the geometry element
Definition at line 74 of file PathSegmentList.h.
References fMaterial, fMedium, and fVolume.
Referenced by genie::geometry::ROOTGeomAnalyzer::SwimOnce().
|
inline |
Definition at line 78 of file PathSegmentList.h.
References fPathString.
Referenced by genie::geometry::ROOTGeomAnalyzer::SwimOnce().
void PathSegment::SetStep | ( | Double_t | step, |
bool | setlimits = true |
||
) |
step taken in the geometry element
Definition at line 128 of file PathSegmentList.cxx.
References fStepLength, and fStepRangeSet.
Referenced by genie::geometry::ROOTGeomAnalyzer::SwimOnce().
|
friend |
Definition at line 116 of file PathSegmentList.h.
|
friend |
Definition at line 45 of file PathSegmentList.cxx.
TVector3 genie::geometry::PathSegment::fEnter |
top vol coordinates and units
Definition at line 108 of file PathSegmentList.h.
Referenced by DoCrossCheck(), GetPosition(), Print(), and SetEnter().
TVector3 genie::geometry::PathSegment::fExit |
top vol coordinates and units
Definition at line 109 of file PathSegmentList.h.
Referenced by DoCrossCheck(), GetPosition(), and SetExit().
const TGeoMaterial* genie::geometry::PathSegment::fMaterial |
ref only ptr to TGeoMaterial
Definition at line 107 of file PathSegmentList.h.
Referenced by genie::geometry::ROOTGeomAnalyzer::ComputeMatLengths(), genie::geometry::PathSegmentList::FillMatStepSum(), genie::geometry::ROOTGeomAnalyzer::GenerateVertex(), Print(), SetGeo(), and genie::geometry::GeomVolSelectorBasic::TrimSegment().
const TGeoMedium* genie::geometry::PathSegment::fMedium |
ref only ptr to TGeoMedium
Definition at line 106 of file PathSegmentList.h.
Referenced by SetGeo(), and genie::geometry::GeomVolSelectorBasic::TrimSegment().
std::string genie::geometry::PathSegment::fPathString |
full path names
Definition at line 111 of file PathSegmentList.h.
Referenced by Print(), SetPath(), and genie::geometry::GeomVolSelectorBasic::TrimSegment().
Double_t genie::geometry::PathSegment::fRayDist |
distance from start of ray
Definition at line 103 of file PathSegmentList.h.
Referenced by DoCrossCheck(), genie::geometry::operator<(), Print(), SetEnter(), genie::geometry::GeomVolSelectorRockBox::TrimSegment(), and genie::geometry::GeomVolSelectorFiducial::TrimSegment().
Double_t genie::geometry::PathSegment::fStepLength |
total step size in volume
Definition at line 104 of file PathSegmentList.h.
Referenced by DoCrossCheck(), GetPosition(), Print(), and SetStep().
StepRangeSet genie::geometry::PathSegment::fStepRangeSet |
collection of {steplo,stephi} pairs
Definition at line 113 of file PathSegmentList.h.
Referenced by GetPosition(), GetSummedStepRange(), IsTrimmedEmpty(), Print(), SetStep(), genie::geometry::ROOTGeomAnalyzer::SwimOnce(), genie::geometry::GeomVolSelectorRockBox::TrimSegment(), genie::geometry::GeomVolSelectorFiducial::TrimSegment(), and genie::geometry::GeomVolSelectorBasic::TrimSegment().
const TGeoVolume* genie::geometry::PathSegment::fVolume |
ref only ptr to TGeoVolume
Definition at line 105 of file PathSegmentList.h.
Referenced by genie::geometry::ROOTGeomAnalyzer::GenerateVertex(), Print(), SetGeo(), and genie::geometry::GeomVolSelectorBasic::TrimSegment().