LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
ShowerRecoTools::ShowerTrackColinearTrajPointDirection Class Reference
Inheritance diagram for ShowerRecoTools::ShowerTrackColinearTrajPointDirection:
ShowerRecoTools::IShowerTool

Public Member Functions

 ShowerTrackColinearTrajPointDirection (const fhicl::ParameterSet &pset)
 
int CalculateElement (const art::Ptr< recob::PFParticle > &pfparticle, art::Event &Event, reco::shower::ShowerElementHolder &ShowerEleHolder) override
 

Private Member Functions

int RunShowerTool (const art::Ptr< recob::PFParticle > &pfparticle, art::Event &Event, reco::shower::ShowerElementHolder &ShowerEleHolder, std::string evd_display_name_append="")
 
virtual void InitialiseProducers ()
 
void SetPtr (art::ProducesCollector *collector)
 
void InitaliseProducerPtr (reco::shower::ShowerProducedPtrsHolder &uniqueproducerPtrs)
 
virtual int AddAssociations (const art::Ptr< recob::PFParticle > &pfpPtr, art::Event &Event, reco::shower::ShowerElementHolder &ShowerEleHolder)
 
const shower::LArPandoraShowerAlgGetLArPandoraShowerAlg () const
 
template<class T >
art::Ptr< T > GetProducedElementPtr (std::string Name, reco::shower::ShowerElementHolder &ShowerEleHolder, int iter=-1)
 
template<class T >
void InitialiseProduct (std::string Name, std::string InstanceName="")
 
template<class T , class A , class B >
void AddSingle (A &a, B &b, std::string Name)
 
int GetVectorPtrSize (std::string Name)
 
void PrintPtrs ()
 
void PrintPtr (std::string Name)
 

Private Attributes

int fVerbose
 
bool fUsePandoraVertex
 
bool fAllowDynamicSliding
 
bool fUsePositionInfo
 
bool fUseStartPos
 
float fAngleCut
 
std::string fInitialTrackInputLabel
 
std::string fShowerStartPositionInputLabel
 
std::string fShowerDirectionOutputLabel
 

Detailed Description

Constructor & Destructor Documentation

ShowerRecoTools::ShowerTrackColinearTrajPointDirection::ShowerTrackColinearTrajPointDirection ( const fhicl::ParameterSet pset)

Definition at line 55 of file ShowerTrackColinearTrajPointDirection_tool.cc.

57  : IShowerTool(pset.get<fhicl::ParameterSet>("BaseTools"))
58  , fVerbose(pset.get<int>("Verbose"))
59  , fUsePandoraVertex(pset.get<bool>("UsePandoraVertex"))
60  , fAllowDynamicSliding(pset.get<bool>("AllowDynamicSliding"))
61  , fUsePositionInfo(pset.get<bool>("UsePositionInfo"))
62  , fUseStartPos(pset.get<bool>("UseStartPos"))
63  , fAngleCut(pset.get<float>("AngleCut"))
64  , fInitialTrackInputLabel(pset.get<std::string>("InitialTrackInputLabel"))
65  , fShowerStartPositionInputLabel(pset.get<std::string>("ShowerStartPositionInputLabel"))
66  , fShowerDirectionOutputLabel(pset.get<std::string>("ShowerDirectionOutputLabel"))
67 
68  {}
T get(std::string const &key) const
Definition: ParameterSet.h:314
IShowerTool(const fhicl::ParameterSet &pset)
Definition: IShowerTool.h:33

Member Function Documentation

virtual int ShowerRecoTools::IShowerTool::AddAssociations ( const art::Ptr< recob::PFParticle > &  pfpPtr,
art::Event Event,
reco::shower::ShowerElementHolder ShowerEleHolder 
)
inlinevirtualinherited
template<class T , class A , class B >
void ShowerRecoTools::IShowerTool::AddSingle ( A &  a,
B &  b,
std::string  Name 
)
inlineprotectedinherited

Definition at line 152 of file IShowerTool.h.

References reco::shower::ShowerProducedPtrsHolder::AddSingle().

153  {
154  UniquePtrs->AddSingle<T>(a, b, Name);
155  }
reco::shower::ShowerProducedPtrsHolder * UniquePtrs
Definition: IShowerTool.h:85
void AddSingle(A &a, B &b, const std::string &Name)
int ShowerRecoTools::ShowerTrackColinearTrajPointDirection::CalculateElement ( const art::Ptr< recob::PFParticle > &  pfparticle,
art::Event Event,
reco::shower::ShowerElementHolder ShowerEleHolder 
)
overridevirtual

Implements ShowerRecoTools::IShowerTool.

Definition at line 70 of file ShowerTrackColinearTrajPointDirection_tool.cc.

References reco::shower::ShowerElementHolder::CheckElement(), DEFINE_ART_CLASS_TOOL, recob::Track::DirectionAtPoint(), fAllowDynamicSliding, fAngleCut, fInitialTrackInputLabel, recob::Track::FlagsAtPoint(), fShowerDirectionOutputLabel, fShowerStartPositionInputLabel, fUsePandoraVertex, fUsePositionInfo, fUseStartPos, fVerbose, reco::shower::ShowerElementHolder::GetElement(), recob::Track::LocationAtPoint(), recob::TrajectoryPointFlagTraits::NoPoint, recob::Track::NumberTrajectoryPoints(), reco::shower::ShowerElementHolder::SetElement(), and recob::Track::Start().

74  {
75 
76  //Check the Track has been defined
77  if (!ShowerEleHolder.CheckElement(fInitialTrackInputLabel)) {
78  if (fVerbose)
79  mf::LogError("ShowerTrackColinearTrajPointDirection")
80  << "Initial track not set" << std::endl;
81  return 1;
82  }
83  recob::Track InitialTrack;
84  ShowerEleHolder.GetElement(fInitialTrackInputLabel, InitialTrack);
85 
86  //Smartly choose the which trajectory point to look at by ignoring the smush of hits at the vertex.
87  if (InitialTrack.NumberTrajectoryPoints() == 1) {
88  if (fVerbose)
89  mf::LogError("ShowerTrackColinearTrajPointDirection")
90  << "Not Enough trajectory points." << std::endl;
91  return 1;
92  }
93 
94  //Trajectory point which the direction is calcualted for.
95  int trajpoint = 0;
97 
98  if (fUsePositionInfo) {
99  //Get the start position.
100  geo::Point_t StartPosition;
101 
102  if (fUsePandoraVertex) {
103  //Check the Track has been defined
104  if (!ShowerEleHolder.CheckElement(fShowerStartPositionInputLabel)) {
105  if (fVerbose)
106  mf::LogError("ShowerTrackColinearTrajPointDirection")
107  << "Shower start position not set" << std::endl;
108  return 1;
109  }
110  ShowerEleHolder.GetElement(fShowerStartPositionInputLabel, StartPosition);
111  }
112  else {
113  StartPosition = InitialTrack.Start();
114  }
115 
116  //Loop over the trajectory points and find two corresponding trajectory points where the angle between themselves (or themsleves and the start position) is less the fMinAngle.
117  for (unsigned int traj = 0; traj < InitialTrack.NumberTrajectoryPoints() - 2; ++traj) {
118  ++trajpoint;
119 
120  //ignore bogus info.
121  auto trajflags = InitialTrack.FlagsAtPoint(trajpoint);
122  if (trajflags.isSet(recob::TrajectoryPointFlagTraits::NoPoint)) { continue; }
123 
124  bool bail = false;
125 
126  //ignore bogus info.
127  auto flags = InitialTrack.FlagsAtPoint(traj);
128  if (flags.isSet(recob::TrajectoryPointFlagTraits::NoPoint)) { continue; }
129 
130  //find the next non bogus traj point.
131  int nexttraj = traj + 1;
132  auto nextflags = InitialTrack.FlagsAtPoint(nexttraj);
133  while (nextflags.isSet(recob::TrajectoryPointFlagTraits::NoPoint)) {
134  if (nexttraj == (int)InitialTrack.NumberTrajectoryPoints() - 2) {
135  bail = true;
136  break;
137  }
138  ++nexttraj;
139  nextflags = InitialTrack.FlagsAtPoint(nexttraj);
140  }
141 
142  //find the next next non bogus traj point.
143  int nextnexttraj = nexttraj + 1;
144  auto nextnextflags = InitialTrack.FlagsAtPoint(nextnexttraj);
145  while (nextnextflags.isSet(recob::TrajectoryPointFlagTraits::NoPoint)) {
146  if (nexttraj == (int)InitialTrack.NumberTrajectoryPoints() - 1) {
147  bail = true;
148  break;
149  }
150  ++nextnexttraj;
151  nextnextflags = InitialTrack.FlagsAtPoint(nextnexttraj);
152  }
153 
154  if (bail) {
155  if (fVerbose)
156  mf::LogError("ShowerTrackColinearTrajPointDirection")
157  << "Trajectory point not set as rest of the traj points are bogus." << std::endl;
158  break;
159  }
160 
161  //Get the directions.
162  geo::Vector_t TrajPosition = InitialTrack.LocationAtPoint(traj) - StartPosition;
163  geo::Vector_t NextTrajPosition;
164  geo::Vector_t NextNextTrajPosition;
165  if (fUseStartPos) {
166  NextTrajPosition = InitialTrack.LocationAtPoint(nexttraj) - StartPosition;
167  NextNextTrajPosition = InitialTrack.LocationAtPoint(nextnexttraj) - StartPosition;
168  }
169  else {
170  NextTrajPosition =
171  InitialTrack.LocationAtPoint(nexttraj) - InitialTrack.LocationAtPoint(traj);
172  NextNextTrajPosition =
173  InitialTrack.LocationAtPoint(nextnexttraj) - InitialTrack.LocationAtPoint(traj + 1);
174  }
175 
176  //Might still be bogus and we can't use the start point
177  if (TrajPosition.R() == 0) { continue; }
178  if (NextTrajPosition.R() == 0) { continue; }
179  if (NextNextTrajPosition.R() == 0) { continue; }
180 
181  //Check to see if the angle between the directions is small enough.
182  if (Angle(TrajPosition, NextTrajPosition) < fAngleCut &&
183  Angle(TrajPosition, NextNextTrajPosition) < fAngleCut) {
184  break;
185  }
186 
187  //Move the start position onwords.
188  if (fAllowDynamicSliding) { StartPosition = InitialTrack.LocationAtPoint(traj); }
189  }
190 
191  geo::Point_t TrajPosition = InitialTrack.LocationAtPoint(trajpoint);
192  Direction = (TrajPosition - StartPosition).Unit();
193  }
194  else {
195  //Loop over the trajectory points and find two corresponding trajectory points where the angle between themselves (or themsleves and the start position) is less the fMinAngle.
196  for (unsigned int traj = 0; traj < InitialTrack.NumberTrajectoryPoints() - 2; ++traj) {
197  ++trajpoint;
198 
199  //ignore bogus info.
200  auto trajflags = InitialTrack.FlagsAtPoint(trajpoint);
201  if (trajflags.isSet(recob::TrajectoryPointFlagTraits::NoPoint)) { continue; }
202 
203  //ignore bogus info.
204  auto flags = InitialTrack.FlagsAtPoint(traj);
205  if (flags.isSet(recob::TrajectoryPointFlagTraits::NoPoint)) { continue; }
206 
207  bool bail = false;
208 
209  geo::Vector_t TrajDirection;
210 
211  //Get the next non bogus trajectory points
212  if (fUseStartPos) {
213  int prevtraj = 0;
214  auto prevflags = InitialTrack.FlagsAtPoint(prevtraj);
215  while (prevflags.isSet(recob::TrajectoryPointFlagTraits::NoPoint)) {
216  if (prevtraj == (int)InitialTrack.NumberTrajectoryPoints() - 2) {
217  bail = true;
218  break;
219  }
220  ++prevtraj;
221  prevflags = InitialTrack.FlagsAtPoint(prevtraj);
222  }
223  TrajDirection = InitialTrack.DirectionAtPoint(prevtraj);
224  }
225  else if (fAllowDynamicSliding && traj != 0) {
226  int prevtraj = traj - 1;
227  auto prevflags = InitialTrack.FlagsAtPoint(prevtraj);
228  while (prevflags.isSet(recob::TrajectoryPointFlagTraits::NoPoint)) {
229  if (prevtraj == 0) {
230  bail = true;
231  break;
232  }
233  --prevtraj;
234  prevflags = InitialTrack.FlagsAtPoint(prevtraj);
235  }
236  TrajDirection = InitialTrack.DirectionAtPoint(prevtraj);
237  }
238  else {
239  TrajDirection = InitialTrack.DirectionAtPoint(traj);
240  }
241 
242  //find the next non bogus traj point.
243  int nexttraj = traj + 1;
244  auto nextflags = InitialTrack.FlagsAtPoint(nexttraj);
245  while (nextflags.isSet(recob::TrajectoryPointFlagTraits::NoPoint)) {
246  if (nexttraj == (int)InitialTrack.NumberTrajectoryPoints() - 2) {
247  bail = true;
248  break;
249  }
250  ++nexttraj;
251  nextflags = InitialTrack.FlagsAtPoint(nexttraj);
252  }
253 
254  //find the next next non bogus traj point.
255  int nextnexttraj = nexttraj + 1;
256  auto nextnextflags = InitialTrack.FlagsAtPoint(nextnexttraj);
257  while (nextnextflags.isSet(recob::TrajectoryPointFlagTraits::NoPoint)) {
258  if (nexttraj == (int)InitialTrack.NumberTrajectoryPoints() - 1) {
259  bail = true;
260  break;
261  }
262  ++nextnexttraj;
263  nextnextflags = InitialTrack.FlagsAtPoint(nextnexttraj);
264  }
265 
266  if (bail) {
267  if (fVerbose)
268  mf::LogError("ShowerTrackColinearTrajPointDirection")
269  << "Trajectory point not set as rest of the traj points are bogus." << std::endl;
270  break;
271  }
272 
273  //Get the directions.
274  geo::Vector_t NextTrajDirection = InitialTrack.DirectionAtPoint(nexttraj);
275  geo::Vector_t NextNextTrajDirection = InitialTrack.DirectionAtPoint(nextnexttraj);
276 
277  //Might still be bogus and we can't use the start point
278  if (TrajDirection.R() == 0) { continue; }
279  if (NextTrajDirection.R() == 0) { continue; }
280  if (NextNextTrajDirection.R() == 0) { continue; }
281 
282  //See if the angle is small enough.
283  if (Angle(TrajDirection, NextTrajDirection) < fAngleCut &&
284  Angle(TrajDirection, NextNextTrajDirection) < fAngleCut) {
285  break;
286  }
287  }
288  Direction = InitialTrack.DirectionAtPoint(trajpoint).Unit();
289  }
290 
291  if (trajpoint == (int)InitialTrack.NumberTrajectoryPoints() - 3) {
292  if (fVerbose)
293  mf::LogError("ShowerSmartTrackTrajectoryPointDirectio")
294  << "Trajectory point not set." << std::endl;
295  return 1;
296  }
297 
298  //Set the direction.
299  geo::Vector_t DirectionErr = {-999, -999, -999};
300  ShowerEleHolder.SetElement(Direction, DirectionErr, fShowerDirectionOutputLabel);
301  return 0;
302  }
ROOT::Math::DisplacementVector3D< ROOT::Math::Cartesian3D< double >, ROOT::Math::GlobalCoordinateSystemTag > Vector_t
Type for representation of momenta in 3D space.
Definition: geo_vectors.h:160
static constexpr Flag_t NoPoint
The trajectory point is not defined.
Point_t const & LocationAtPoint(size_t i) const
Access to track position at different points.
Definition: Track.h:160
void SetElement(T &dataproduct, const std::string &Name, bool checktag=false)
size_t NumberTrajectoryPoints() const
Various functions related to the presence and the number of (valid) points.
Definition: Track.h:136
MaybeLogger_< ELseverityLevel::ELsev_error, false > LogError
Point_t const & Start() const
Access to track position at different points.
Definition: Track.h:157
bool CheckElement(const std::string &Name) const
int GetElement(const std::string &Name, T &Element) const
ROOT::Math::PositionVector3D< ROOT::Math::Cartesian3D< double >, ROOT::Math::GlobalCoordinateSystemTag > Point_t
Type for representation of position in physical 3D space.
Definition: geo_vectors.h:180
PointFlags_t const & FlagsAtPoint(size_t i) const
Access to i-th TrajectoryPoint or its Flags.
Definition: Track.h:152
Vector_t DirectionAtPoint(size_t i) const
Access to track direction at different points.
Definition: Track.h:168
Direction
Definition: types.h:12
Track from a non-cascading particle.A recob::Track consists of a recob::TrackTrajectory, plus additional members relevant for a "fitted" track:
Definition: Track.h:49
const shower::LArPandoraShowerAlg& ShowerRecoTools::IShowerTool::GetLArPandoraShowerAlg ( ) const
inlineprotectedinherited

Definition at line 82 of file IShowerTool.h.

Referenced by ShowerRecoTools::ShowerLengthPercentile::CalculateElement(), ShowerRecoTools::ShowerUnidirectiondEdx::CalculateElement(), ShowerRecoTools::Shower3DCylinderTrackHitFinder::CalculateElement(), ShowerRecoTools::ShowerPCAPropergationStartPosition::CalculateElement(), ShowerRecoTools::Shower2DLinearRegressionTrackHitFinder::CalculateElement(), ShowerRecoTools::ShowerPFPVertexStartPosition::CalculateElement(), ShowerRecoTools::ShowerDirectionCheater::CalculateElement(), ShowerRecoTools::ShowerPCADirection::CalculateElement(), ShowerRecoTools::ShowerIncrementalTrackHitFinder::CalculateElement(), ShowerRecoTools::ShowerTrajPointdEdx::CalculateElement(), ShowerRecoTools::ShowerPCADirection::CalculateShowerPCA(), ShowerRecoTools::Shower2DLinearRegressionTrackHitFinder::FindInitialTrackHits(), ShowerRecoTools::Shower3DCylinderTrackHitFinder::FindTrackSpacePoints(), ShowerRecoTools::ShowerIncrementalTrackHitFinder::FitSegmentAndCalculateResidual(), ShowerRecoTools::ShowerIncrementalTrackHitFinder::PruneFrontOfSPSPool(), ShowerRecoTools::ShowerIncrementalTrackHitFinder::PruneTrack(), ShowerRecoTools::ShowerIncrementalTrackHitFinder::RunTestOfIncrementalSpacePointFinder(), ShowerRecoTools::ShowerTrackPCADirection::ShowerPCAVector(), and ShowerRecoTools::ShowerIncrementalTrackHitFinder::ShowerPCAVector().

83  {
84  return fLArPandoraShowerAlg;
85  };
shower::LArPandoraShowerAlg fLArPandoraShowerAlg
Definition: IShowerTool.h:92
template<class T >
art::Ptr<T> ShowerRecoTools::IShowerTool::GetProducedElementPtr ( std::string  Name,
reco::shower::ShowerElementHolder ShowerEleHolder,
int  iter = -1 
)
inlineprotectedinherited

Definition at line 102 of file IShowerTool.h.

References reco::shower::ShowerElementHolder::CheckElement(), reco::shower::ShowerProducedPtrsHolder::CheckUniqueProduerPtr(), reco::shower::ShowerProducedPtrsHolder::GetArtPtr(), and reco::shower::ShowerElementHolder::GetShowerNumber().

105  {
106 
107  //Check the element has been set
108  bool check_element = ShowerEleHolder.CheckElement(Name);
109  if (!check_element) {
110  throw cet::exception("IShowerTool") << "tried to get a element that does not exist. Failed "
111  "at making the art ptr for Element: "
112  << Name << std::endl;
113  }
114 
115  //Check the unique ptr has been set.
116  bool check_ptr = UniquePtrs->CheckUniqueProduerPtr(Name);
117  if (!check_ptr) {
118  throw cet::exception("IShowerTool")
119  << "tried to get a ptr that does not exist. Failed at making the art ptr for Element"
120  << Name;
121  }
122 
123  //Check if the user has defined an index if not just use the current shower index/
124  int index;
125  if (iter != -1) { index = iter; }
126  else {
127  index = ShowerEleHolder.GetShowerNumber();
128  }
129 
130  //Make the ptr
131  return UniquePtrs->GetArtPtr<T>(Name, index);
132  }
reco::shower::ShowerProducedPtrsHolder * UniquePtrs
Definition: IShowerTool.h:85
bool CheckUniqueProduerPtr(const std::string &Name) const
bool CheckElement(const std::string &Name) const
art::Ptr< T > GetArtPtr(const std::string &Name, const int &iter) const
cet::coded_exception< error, detail::translate > exception
Definition: exception.h:33
int ShowerRecoTools::IShowerTool::GetVectorPtrSize ( std::string  Name)
inlineprotectedinherited
void ShowerRecoTools::IShowerTool::InitaliseProducerPtr ( reco::shower::ShowerProducedPtrsHolder uniqueproducerPtrs)
inlineinherited

Definition at line 68 of file IShowerTool.h.

69  {
70  UniquePtrs = &uniqueproducerPtrs;
71  }
reco::shower::ShowerProducedPtrsHolder * UniquePtrs
Definition: IShowerTool.h:85
virtual void ShowerRecoTools::IShowerTool::InitialiseProducers ( )
inlinevirtualinherited
template<class T >
void ShowerRecoTools::IShowerTool::InitialiseProduct ( std::string  Name,
std::string  InstanceName = "" 
)
inlineprotectedinherited

Definition at line 137 of file IShowerTool.h.

References art::ProducesCollector::produces(), and reco::shower::ShowerProducedPtrsHolder::SetShowerUniqueProduerPtr().

138  {
139 
140  if (collectorPtr == nullptr) {
141  mf::LogWarning("IShowerTool") << "The art::ProducesCollector ptr has not been set";
142  return;
143  }
144 
145  collectorPtr->produces<T>(InstanceName);
146  UniquePtrs->SetShowerUniqueProduerPtr(type<T>(), Name, InstanceName);
147  }
reco::shower::ShowerProducedPtrsHolder * UniquePtrs
Definition: IShowerTool.h:85
art::ProducesCollector * collectorPtr
Definition: IShowerTool.h:97
void produces(std::string const &instanceName={}, Persistable const persistable=Persistable::Yes)
MaybeLogger_< ELseverityLevel::ELsev_warning, false > LogWarning
int SetShowerUniqueProduerPtr(type< T >, const std::string &Name, const std::string &Instance="")
void ShowerRecoTools::IShowerTool::PrintPtr ( std::string  Name)
inlineprotectedinherited

Definition at line 162 of file IShowerTool.h.

References reco::shower::ShowerProducedPtrsHolder::PrintPtr().

Referenced by ShowerRecoTools::ShowerExampleTool::CalculateElement().

162 { UniquePtrs->PrintPtr(Name); }
reco::shower::ShowerProducedPtrsHolder * UniquePtrs
Definition: IShowerTool.h:85
void PrintPtr(const std::string &Name) const
void ShowerRecoTools::IShowerTool::PrintPtrs ( )
inlineprotectedinherited
int ShowerRecoTools::IShowerTool::RunShowerTool ( const art::Ptr< recob::PFParticle > &  pfparticle,
art::Event Event,
reco::shower::ShowerElementHolder ShowerEleHolder,
std::string  evd_display_name_append = "" 
)
inlineinherited

Definition at line 46 of file IShowerTool.h.

50  {
51 
52  int calculation_status = CalculateElement(pfparticle, Event, ShowerEleHolder);
53  if (calculation_status != 0) return calculation_status;
54  if (fRunEventDisplay) {
56  pfparticle, Event, ShowerEleHolder, evd_display_name_append);
57  }
58  return calculation_status;
59  }
void DebugEVD(art::Ptr< recob::PFParticle > const &pfparticle, art::Event const &Event, const reco::shower::ShowerElementHolder &ShowerEleHolder, std::string const &evd_disp_name_append="") const
virtual int CalculateElement(const art::Ptr< recob::PFParticle > &pfparticle, art::Event &Event, reco::shower::ShowerElementHolder &ShowerEleHolder)=0
const shower::LArPandoraShowerAlg & GetLArPandoraShowerAlg() const
Definition: IShowerTool.h:82
void ShowerRecoTools::IShowerTool::SetPtr ( art::ProducesCollector collector)
inlineinherited

Definition at line 65 of file IShowerTool.h.

65 { collectorPtr = collector; }
art::ProducesCollector * collectorPtr
Definition: IShowerTool.h:97

Member Data Documentation

bool ShowerRecoTools::ShowerTrackColinearTrajPointDirection::fAllowDynamicSliding
private

Definition at line 40 of file ShowerTrackColinearTrajPointDirection_tool.cc.

Referenced by CalculateElement().

float ShowerRecoTools::ShowerTrackColinearTrajPointDirection::fAngleCut
private

Definition at line 48 of file ShowerTrackColinearTrajPointDirection_tool.cc.

Referenced by CalculateElement().

std::string ShowerRecoTools::ShowerTrackColinearTrajPointDirection::fInitialTrackInputLabel
private

Definition at line 50 of file ShowerTrackColinearTrajPointDirection_tool.cc.

Referenced by CalculateElement().

std::string ShowerRecoTools::ShowerTrackColinearTrajPointDirection::fShowerDirectionOutputLabel
private

Definition at line 52 of file ShowerTrackColinearTrajPointDirection_tool.cc.

Referenced by CalculateElement().

std::string ShowerRecoTools::ShowerTrackColinearTrajPointDirection::fShowerStartPositionInputLabel
private

Definition at line 51 of file ShowerTrackColinearTrajPointDirection_tool.cc.

Referenced by CalculateElement().

bool ShowerRecoTools::ShowerTrackColinearTrajPointDirection::fUsePandoraVertex
private

Definition at line 37 of file ShowerTrackColinearTrajPointDirection_tool.cc.

Referenced by CalculateElement().

bool ShowerRecoTools::ShowerTrackColinearTrajPointDirection::fUsePositionInfo
private

Definition at line 42 of file ShowerTrackColinearTrajPointDirection_tool.cc.

Referenced by CalculateElement().

bool ShowerRecoTools::ShowerTrackColinearTrajPointDirection::fUseStartPos
private

Definition at line 45 of file ShowerTrackColinearTrajPointDirection_tool.cc.

Referenced by CalculateElement().

int ShowerRecoTools::ShowerTrackColinearTrajPointDirection::fVerbose
private

Definition at line 36 of file ShowerTrackColinearTrajPointDirection_tool.cc.

Referenced by CalculateElement().


The documentation for this class was generated from the following file: