13 #ifndef ROOT_TGeoCache
14 #define ROOT_TGeoCache
20 #ifndef ROOT_TGeoStateInfo
void MasterToLocal(const Double_t *master, Double_t *local) const
Point in master frame defined by current matrix converted to local one.
void PopDummy(Int_t ipop=9999)
virtual ~TGeoNodeCache()
Destructor.
TGeoHMatrix * GetCurrentMatrix() const
TObjArray * fStack
current matrix
TGeoStateInfo * GetInfo()
Get next state info pointer.
Int_t GetStackLevel() const
TGeoNode * GetNode() const
TGeoStateInfo * GetMakePWInfo(Int_t nd)
Get the PW info, if none create one.
void LocalToMaster(const Double_t *local, Double_t *master) const
Local point converted to master frame defined by current matrix.
void GetBranchOnlys(Int_t *isonly) const
Fill copy numbers of current branch nodes.
TGeoNode * GetMother(Int_t up=1) const
TGeoStateInfo ** fInfoBranch
void LocalToMasterVect(const Double_t *local, Double_t *master) const
Local vector converted to master frame defined by current matrix.
void FillIdBranch(const Int_t *br, Int_t startlevel=0)
#define ClassDef(name, id)
Bool_t HasIdArray() const
Bool_t PopState(Int_t &nmany, Double_t *point=0)
Pop next state/point from heap.
Int_t * fNodeIdArray
State info for the parallel world.
TGeoHMatrix ** fMatrixBranch
void ReleaseInfo()
Release last used state info pointer.
Int_t GetCurrentNodeId() const
Returns a fixed ID for current physical node.
TGeoHMatrix * GetMotherMatrix(Int_t up=1) const
Int_t GetNodeId() const
Get unique node id.
const Int_t * GetIdBranch() const
virtual ~TGeoCacheState()
Dtor.
void MasterToLocalVect(const Double_t *master, Double_t *local) const
Vector in master frame defined by current matrix converted to local one.
const char * GetPath()
Returns the current geometry path.
TGeoNodeCache & operator=(const TGeoNodeCache &)
void GetBranchNames(Int_t *names) const
Fill names with current branch volume names (4 char - used by GEANT3 interface).
Int_t PushState(Bool_t ovlp, Int_t ntmany=0, Int_t startlevel=0, Double_t *point=0)
Push current state into heap.
Mother of all ROOT objects.
Bool_t CdDown(Int_t index)
Make daughter INDEX of current node the active state. Compute global matrix.
TGeoHMatrix ** fMatrixBranch
void * GetMatrices() const
void GetBranchNumbers(Int_t *copyNumbers, Int_t *volumeNumbers) const
Fill copy numbers of current branch nodes.
void BuildIdArray()
Builds node id array.
Bool_t GetState(Int_t &level, Int_t &nmany, Double_t *point) const
Restore a modeler state.
void CdNode(Int_t nodeid)
Change current path to point to the node having this id.
void CdUp()
Make mother of current node the active state.
void MasterToLocalBomb(const Double_t *master, Double_t *local) const
Point in master frame defined by current matrix converted to local one and rescaled with bomb factor...
void SetState(Int_t level, Int_t startlevel, Int_t nmany, Bool_t ovlp, Double_t *point=0)
Fill current modeller state.
TGeoNode * GetTopNode() const
TGeoCacheState & operator=(const TGeoCacheState &)
assignment operator
void BuildInfoBranch()
Bulds info branch. Navigation is possible only after this step.
Bool_t RestoreState(Int_t &nmany, TGeoCacheState *state, Double_t *point=0)
Pop next state/point from a backed-up state.
TGeoHMatrix * fMatrix
current node
void LocalToMasterBomb(const Double_t *local, Double_t *master) const
Local point converted to master frame defined by current matrix and rescaled with bomb factor...