4 #ifndef __KVGEONAVIGATOR_H
5 #define __KVGEONAVIGATOR_H
10 #include "KVDetector.h"
11 #include <KVNameValueList.h>
55 Int_t fCurStrucNumber;
66 TEnv* fDetStrucNameCorrespList;
80 TNamed(path,
""), fDetector(det) {}
93 KVGeoDetectorPath* gdp = (KVGeoDetectorPath*)fDetectorPaths.
FindObject(p);
94 return (
KVDetector*)(gdp ? gdp->GetDetector() :
nullptr);
102 if (
p.Contains(
Form(
"DET_%s/SUBDET_", det->
GetName())) &&
n.BeginsWith(
"SUBDET_")) {
161 return fDetNameFmt.
Data();
177 return fCurrentVolume;
205 return fStopPropagation;
209 fStopPropagation = stop;
215 return fCurrentStructures;
226 fDetectorPaths.
AddAll(&GN->fDetectorPaths);
231 TIter it(&fDetectorPaths);
#define ClassDef(name, id)
winID h TVirtualViewer3D TVirtualGLPainter p
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize id
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void on
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char ColorStruct_t color const char Pixmap_t Pixmap_t PictureAttributes_t attr const char char ret_data h unsigned char height h Atom_t Int_t ULong_t ULong_t unsigned char prop_list Atom_t Atom_t Atom_t Time_t type
char * Form(const char *fmt,...)
Base class for KaliVeda framework.
Base class for detector geometry description, interface to energy-loss calculations.
Abstract base class container for multi-particle events.
Link physical path to node in geometry with detector.
KVDetector * GetDetector() const
KVGeoDetectorPath(const Char_t *path, KVDetector *det)
Base class for propagation of particles through array geometry.
virtual void AddPointToCurrentTrack(Double_t, Double_t, Double_t)
Bool_t IsTracking() const
const Char_t * GetDetectorNameFormat() const
void SetDetectorNameFormat(const Char_t *fmt)
void PropagateEvent(KVEvent *, TVector3 *TheOrigin=0)
const TGeoHMatrix * GetCurrentMatrix() const
Returns pointer to internal copy of current global transformation matrix.
void AbsorbDetectorPaths(KVGeoNavigator *GN)
void ExtractDetectorNameFromPath(KVString &)
void PrintDetectorPaths()
TGeoNode * GetCurrentNode() const
void SetTracking(Bool_t on=kTRUE)
KVGeoNavigator(TGeoManager *)
Constructor. Call with pointer to geometry.
Double_t GetStepSize() const
const TClonesArray & CurrentStructures() const
void SetNameCorrespondanceList(const Char_t *)
void SetStopPropagation(Bool_t stop=kTRUE)
virtual void PropagateParticle(KVNucleus *, TVector3 *TheOrigin=0)
TGeoVolume * GetCurrentDetectorNameAndVolume(KVString &, Bool_t &, Bool_t &segmented)
TGeoNode * GetCurrentDetectorNode() const
virtual void ParticleEntersNewVolume(KVNucleus *)
TString GetCurrentPath() const
TGeoVolume * GetCurrentVolume() const
Bool_t GetNameCorrespondance(const Char_t *, TString &)
Bool_t StopPropagation() const
virtual ~KVGeoNavigator()
Destructor.
void ResetTrackID(Int_t id=0)
const TVector3 & GetExitPoint() const
void SetStructureNameFormat(const Char_t *type, const Char_t *fmt)
const TVector3 & GetEntryPoint() const
TGeoManager * GetGeometry() const
void DrawTracks(KVNumberList *=nullptr)
Handles lists of named parameters with different types, a list of KVNamedParameter objects.
Description of properties and kinematics of atomic nuclei.
Strings used to represent a set of ranges of values.
TObject * FindObject(const char *name) const override
void SetOwner(Bool_t enable=kTRUE) override
Extension of ROOT TString class which allows backwards compatibility with ROOT v3....
Optimised list in which named objects can only be placed once.
virtual void AddAll(const TCollection *col)
const char * GetName() const override
const char * Data() const