ROOT  6.06/09
Reference Guide
Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Protected Attributes | Private Types | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
TGeoManager Class Reference

Definition at line 46 of file TGeoManager.h.

Public Member Functions

 TGeoManager ()
 Default constructor. More...
 
 TGeoManager (const char *name, const char *title)
 Constructor. More...
 
virtual ~TGeoManager ()
 Destructor. More...
 
Int_t AddMaterial (const TGeoMaterial *material)
 Add a material to the list. Returns index of the material in list. More...
 
Int_t AddOverlap (const TNamed *ovlp)
 Add an illegal overlap/extrusion to the list. More...
 
Int_t AddTransformation (const TGeoMatrix *matrix)
 Add a matrix to the list. Returns index of the matrix in list. More...
 
Int_t AddShape (const TGeoShape *shape)
 Add a shape to the list. Returns index of the shape in list. More...
 
Int_t AddTrack (Int_t id, Int_t pdgcode, TObject *particle=0)
 Add a track to the list of tracks. More...
 
Int_t AddTrack (TVirtualGeoTrack *track)
 Add a track to the list of tracks. More...
 
Int_t AddVolume (TGeoVolume *volume)
 Add a volume to the list. Returns index of the volume in list. More...
 
TGeoNavigatorAddNavigator ()
 Add a navigator in the list of navigators. More...
 
void ClearOverlaps ()
 Clear the list of overlaps. More...
 
void RegisterMatrix (const TGeoMatrix *matrix)
 Register a matrix to the list of matrices. More...
 
void SortOverlaps ()
 Sort overlaps by decreasing overlap distance. Extrusions comes first. More...
 
void Browse (TBrowser *b)
 Describe how to browse this object. More...
 
void SetVisibility (TObject *obj, Bool_t vis)
 Set visibility for a volume. More...
 
virtual Bool_t cd (const char *path="")
 Browse the tree of nodes starting from fTopNode according to pathname. More...
 
Bool_t CheckPath (const char *path) const
 Check if a geometry path is valid without changing the state of the current navigator. More...
 
void CdNode (Int_t nodeid)
 Change current path to point to the node having this id. More...
 
void CdDown (Int_t index)
 Make a daughter of current node current. More...
 
void CdUp ()
 Go one level up in geometry. More...
 
void CdTop ()
 Make top level node the current node. More...
 
void CdNext ()
 Do a cd to the node found next by FindNextBoundary. More...
 
void GetBranchNames (Int_t *names) const
 Fill volume names of current branch into an array. More...
 
void GetBranchNumbers (Int_t *copyNumbers, Int_t *volumeNumbers) const
 Fill node copy numbers of current branch into an array. More...
 
void GetBranchOnlys (Int_t *isonly) const
 Fill node copy numbers of current branch into an array. More...
 
Int_t GetNmany () const
 
const char * GetPdgName (Int_t pdg) const
 Get name for given pdg code;. More...
 
void SetPdgName (Int_t pdg, const char *name)
 Set a name for a particle having a given pdg. More...
 
Bool_t IsFolder () const
 Returns kTRUE in case object contains browsable objects (like containers or lists of other objects). More...
 
virtual void Edit (Option_t *option="")
 Append a pad for this geometry. More...
 
void BombTranslation (const Double_t *tr, Double_t *bombtr)
 Get the new 'bombed' translation vector according current exploded view mode. More...
 
void UnbombTranslation (const Double_t *tr, Double_t *bombtr)
 Get the new 'unbombed' translation vector according current exploded view mode. More...
 
void ClearAttributes ()
 Reset all attributes to default ones. More...
 
void DefaultAngles ()
 Set default angles for a given view. More...
 
void DefaultColors ()
 Set default volume colors according to A of material. More...
 
TGeoShapeGetClippingShape () const
 
Int_t GetNsegments () const
 Get number of segments approximating circles. More...
 
TVirtualGeoPainterGetGeomPainter ()
 Make a default painter if none present. Returns pointer to it. More...
 
TVirtualGeoPainterGetPainter () const
 
Int_t GetBombMode () const
 
void GetBombFactors (Double_t &bombx, Double_t &bomby, Double_t &bombz, Double_t &bombr) const
 Retrieve cartesian and radial bomb factors. More...
 
Int_t GetMaxVisNodes () const
 
Bool_t GetTminTmax (Double_t &tmin, Double_t &tmax) const
 Get time cut for drawing tracks. More...
 
Double_t GetTmax () const
 
TGeoVolumeGetPaintVolume () const
 
Double_t GetVisDensity () const
 
Int_t GetVisLevel () const
 Returns current depth to which geometry is drawn. More...
 
Int_t GetVisOption () const
 Returns current depth to which geometry is drawn. More...
 
Bool_t IsInPhiRange () const
 True if current node is in phi range. More...
 
Bool_t IsDrawingExtra () const
 
Bool_t IsNodeSelectable () const
 
Bool_t IsVisLeaves () const
 
void ModifiedPad () const
 Send "Modified" signal to painter. More...
 
void OptimizeVoxels (const char *filename="tgeovox.C")
 Optimize voxelization type for all volumes. Save best choice in a macro. More...
 
void SetClipping (Bool_t flag=kTRUE)
 
void SetClippingShape (TGeoShape *clip)
 Set a user-defined shape as clipping for ray tracing. More...
 
void SetExplodedView (Int_t iopt=0)
 Set type of exploding view (see TGeoPainter::SetExplodedView()) More...
 
void SetPhiRange (Double_t phimin=0., Double_t phimax=360.)
 Set cut phi range. More...
 
void SetNsegments (Int_t nseg)
 Set number of segments for approximating circles in drawing. More...
 
Bool_t SetCurrentNavigator (Int_t index)
 Switch to another existing navigator for the calling thread. More...
 
void SetBombFactors (Double_t bombx=1.3, Double_t bomby=1.3, Double_t bombz=1.3, Double_t bombr=1.3)
 Set factors that will "bomb" all translations in cartesian and cylindrical coordinates. More...
 
void SetPaintVolume (TGeoVolume *vol)
 
void SetTopVisible (Bool_t vis=kTRUE)
 make top volume visible on screen More...
 
void SetTminTmax (Double_t tmin=0, Double_t tmax=999)
 Set time cut interval for drawing tracks. More...
 
void SetDrawExtraPaths (Bool_t flag=kTRUE)
 
void SetNodeSelectable (Bool_t flag=kTRUE)
 
void SetVisDensity (Double_t dens=0.01)
 Set density threshold. More...
 
void SetVisLevel (Int_t level=3)
 set default level down to which visualization is performed More...
 
void SetVisOption (Int_t option=0)
 set drawing mode : option=0 (default) all nodes drawn down to vislevel option=1 leaves and nodes at vislevel drawn option=2 path is drawn option=4 visibility changed More...
 
void ViewLeaves (Bool_t flag=kTRUE)
 Set visualization option (leaves only OR all volumes) More...
 
void SaveAttributes (const char *filename="tgeoatt.C")
 Save current attributes in a macro. More...
 
void RestoreMasterVolume ()
 Restore the master volume of the geometry. More...
 
void SetMaxVisNodes (Int_t maxnodes=10000)
 set the maximum number of visible nodes. More...
 
void AnimateTracks (Double_t tmin=0, Double_t tmax=5E-8, Int_t nframes=200, Option_t *option="/*")
 Draw animation of tracks. More...
 
void CheckBoundaryErrors (Int_t ntracks=1000000, Double_t radius=-1.)
 Check pushes and pulls needed to cross the next boundary with respect to the position given by FindNextBoundary. More...
 
void CheckBoundaryReference (Int_t icheck=-1)
 Check the boundary errors reference file created by CheckBoundaryErrors method. More...
 
void CheckGeometryFull (Int_t ntracks=1000000, Double_t vx=0., Double_t vy=0., Double_t vz=0., Option_t *option="ob")
 Geometry checking. More...
 
void CheckGeometry (Option_t *option="")
 Perform last checks on the geometry. More...
 
void CheckOverlaps (Double_t ovlp=0.1, Option_t *option="")
 Check all geometry for illegal overlaps within a limit OVLP. More...
 
void CheckPoint (Double_t x=0, Double_t y=0, Double_t z=0, Option_t *option="")
 Classify a given point. See TGeoChecker::CheckPoint(). More...
 
void CheckShape (TGeoShape *shape, Int_t testNo, Int_t nsamples, Option_t *option)
 Test for shape navigation methods. More...
 
void ConvertReflections ()
 Convert all reflections in geometry to normal rotations + reflected shapes. More...
 
void DrawCurrentPoint (Int_t color=2)
 Draw current point in the same view. More...
 
void DrawTracks (Option_t *option="")
 Draw tracks over the geometry, according to option. More...
 
void SetParticleName (const char *pname)
 
const char * GetParticleName () const
 
void DrawPath (const char *path, Option_t *option="")
 Draw current path. More...
 
void PrintOverlaps () const
 Prints the current list of overlaps. More...
 
void RandomPoints (const TGeoVolume *vol, Int_t npoints=10000, Option_t *option="")
 Draw random points in the bounding box of a volume. More...
 
void RandomRays (Int_t nrays=1000, Double_t startx=0, Double_t starty=0, Double_t startz=0, const char *target_vol=0, Bool_t check_norm=kFALSE)
 Randomly shoot nrays and plot intersections with surfaces for current top node. More...
 
TGeoNodeSamplePoints (Int_t npoints, Double_t &dist, Double_t epsil=1E-5, const char *g3path="")
 shoot npoints randomly in a box of 1E-5 arround current point. More...
 
void SetNmeshPoints (Int_t npoints=1000)
 Set the number of points to be generated on the shape outline when checking for overlaps. More...
 
void SetCheckedNode (TGeoNode *node)
 Assign a given node to be checked for ovelaps. Any other overlaps will be ignored. More...
 
void Test (Int_t npoints=1000000, Option_t *option="")
 Check time of finding "Where am I" for n points. More...
 
void TestOverlaps (const char *path="")
 Geometry overlap checker based on sampling. More...
 
Double_t Weight (Double_t precision=0.01, Option_t *option="va")
 Estimate weight of volume VOL with a precision SIGMA(W)/W better than PRECISION. More...
 
TGeoVolumeDivision (const char *name, const char *mother, Int_t iaxis, Int_t ndiv, Double_t start, Double_t step, Int_t numed=0, Option_t *option="")
 Create a new volume by dividing an existing one (GEANT3 like) More...
 
void Matrix (Int_t index, Double_t theta1, Double_t phi1, Double_t theta2, Double_t phi2, Double_t theta3, Double_t phi3)
 Create rotation matrix named 'mat<index>'. More...
 
TGeoMaterialMaterial (const char *name, Double_t a, Double_t z, Double_t dens, Int_t uid, Double_t radlen=0, Double_t intlen=0)
 Create material with given A, Z and density, having an unique id. More...
 
TGeoMaterialMixture (const char *name, Float_t *a, Float_t *z, Double_t dens, Int_t nelem, Float_t *wmat, Int_t uid)
 Create mixture OR COMPOUND IMAT as composed by THE BASIC nelem materials defined by arrays A,Z and WMAT, having an unique id. More...
 
TGeoMaterialMixture (const char *name, Double_t *a, Double_t *z, Double_t dens, Int_t nelem, Double_t *wmat, Int_t uid)
 Create mixture OR COMPOUND IMAT as composed by THE BASIC nelem materials defined by arrays A,Z and WMAT, having an unique id. More...
 
TGeoMediumMedium (const char *name, Int_t numed, Int_t nmat, Int_t isvol, Int_t ifield, Double_t fieldm, Double_t tmaxfd, Double_t stemax, Double_t deemax, Double_t epsil, Double_t stmin)
 Create tracking medium. More...
 
void Node (const char *name, Int_t nr, const char *mother, Double_t x, Double_t y, Double_t z, Int_t irot, Bool_t isOnly, Float_t *upar, Int_t npar=0)
 Create a node called <name_nr> pointing to the volume called <name> as daughter of the volume called <mother> (gspos). More...
 
void Node (const char *name, Int_t nr, const char *mother, Double_t x, Double_t y, Double_t z, Int_t irot, Bool_t isOnly, Double_t *upar, Int_t npar=0)
 Create a node called <name_nr> pointing to the volume called <name> as daughter of the volume called <mother> (gspos). More...
 
TGeoVolumeVolume (const char *name, const char *shape, Int_t nmed, Float_t *upar, Int_t npar=0)
 Create a volume in GEANT3 style. More...
 
TGeoVolumeVolume (const char *name, const char *shape, Int_t nmed, Double_t *upar, Int_t npar=0)
 Create a volume in GEANT3 style. More...
 
void SetVolumeAttribute (const char *name, const char *att, Int_t val)
 Set volume attributes in G3 style. More...
 
void BuildDefaultMaterials ()
 Now just a shortcut for GetElementTable. More...
 
void CloseGeometry (Option_t *option="d")
 Closing geometry implies checking the geometry validity, fixing shapes with negative parameters (run-time shapes)building the cache manager, voxelizing all volumes, counting the total number of physical nodes and registring the manager class to the browser. More...
 
Bool_t IsClosed () const
 
TGeoVolumeMakeArb8 (const char *name, TGeoMedium *medium, Double_t dz, Double_t *vertices=0)
 Make an TGeoArb8 volume. More...
 
TGeoVolumeMakeBox (const char *name, TGeoMedium *medium, Double_t dx, Double_t dy, Double_t dz)
 Make in one step a volume pointing to a box shape with given medium. More...
 
TGeoVolumeMakeCone (const char *name, TGeoMedium *medium, Double_t dz, Double_t rmin1, Double_t rmax1, Double_t rmin2, Double_t rmax2)
 Make in one step a volume pointing to a cone shape with given medium. More...
 
TGeoVolumeMakeCons (const char *name, TGeoMedium *medium, Double_t dz, Double_t rmin1, Double_t rmax1, Double_t rmin2, Double_t rmax2, Double_t phi1, Double_t phi2)
 Make in one step a volume pointing to a cone segment shape with given medium. More...
 
TGeoVolumeMakeCtub (const char *name, TGeoMedium *medium, Double_t rmin, Double_t rmax, Double_t dz, Double_t phi1, Double_t phi2, Double_t lx, Double_t ly, Double_t lz, Double_t tx, Double_t ty, Double_t tz)
 Make in one step a volume pointing to a tube segment shape with given medium. More...
 
TGeoVolumeMakeEltu (const char *name, TGeoMedium *medium, Double_t a, Double_t b, Double_t dz)
 Make in one step a volume pointing to a tube shape with given medium. More...
 
TGeoVolumeMakeGtra (const char *name, TGeoMedium *medium, Double_t dz, Double_t theta, Double_t phi, Double_t twist, Double_t h1, Double_t bl1, Double_t tl1, Double_t alpha1, Double_t h2, Double_t bl2, Double_t tl2, Double_t alpha2)
 Make in one step a volume pointing to a twisted trapezoid shape with given medium. More...
 
TGeoVolumeMakePara (const char *name, TGeoMedium *medium, Double_t dx, Double_t dy, Double_t dz, Double_t alpha, Double_t theta, Double_t phi)
 Make in one step a volume pointing to a paralelipiped shape with given medium. More...
 
TGeoVolumeMakePcon (const char *name, TGeoMedium *medium, Double_t phi, Double_t dphi, Int_t nz)
 Make in one step a volume pointing to a polycone shape with given medium. More...
 
TGeoVolumeMakeParaboloid (const char *name, TGeoMedium *medium, Double_t rlo, Double_t rhi, Double_t dz)
 Make in one step a volume pointing to a tube shape with given medium. More...
 
TGeoVolumeMakeHype (const char *name, TGeoMedium *medium, Double_t rin, Double_t stin, Double_t rout, Double_t stout, Double_t dz)
 Make in one step a volume pointing to a tube shape with given medium. More...
 
TGeoVolumeMakePgon (const char *name, TGeoMedium *medium, Double_t phi, Double_t dphi, Int_t nedges, Int_t nz)
 Make in one step a volume pointing to a polygone shape with given medium. More...
 
TGeoVolumeMakeSphere (const char *name, TGeoMedium *medium, Double_t rmin, Double_t rmax, Double_t themin=0, Double_t themax=180, Double_t phimin=0, Double_t phimax=360)
 Make in one step a volume pointing to a sphere shape with given medium. More...
 
TGeoVolumeMakeTorus (const char *name, TGeoMedium *medium, Double_t r, Double_t rmin, Double_t rmax, Double_t phi1=0, Double_t dphi=360)
 Make in one step a volume pointing to a torus shape with given medium. More...
 
TGeoVolumeMakeTrap (const char *name, TGeoMedium *medium, Double_t dz, Double_t theta, Double_t phi, Double_t h1, Double_t bl1, Double_t tl1, Double_t alpha1, Double_t h2, Double_t bl2, Double_t tl2, Double_t alpha2)
 Make in one step a volume pointing to a trapezoid shape with given medium. More...
 
TGeoVolumeMakeTrd1 (const char *name, TGeoMedium *medium, Double_t dx1, Double_t dx2, Double_t dy, Double_t dz)
 Make in one step a volume pointing to a TGeoTrd1 shape with given medium. More...
 
TGeoVolumeMakeTrd2 (const char *name, TGeoMedium *medium, Double_t dx1, Double_t dx2, Double_t dy1, Double_t dy2, Double_t dz)
 Make in one step a volume pointing to a TGeoTrd2 shape with given medium. More...
 
TGeoVolumeMakeTube (const char *name, TGeoMedium *medium, Double_t rmin, Double_t rmax, Double_t dz)
 Make in one step a volume pointing to a tube shape with given medium. More...
 
TGeoVolumeMakeTubs (const char *name, TGeoMedium *medium, Double_t rmin, Double_t rmax, Double_t dz, Double_t phi1, Double_t phi2)
 Make in one step a volume pointing to a tube segment shape with given medium. More...
 
TGeoVolumeMakeXtru (const char *name, TGeoMedium *medium, Int_t nz)
 Make a TGeoXtru-shaped volume with nz planes. More...
 
TGeoPNEntrySetAlignableEntry (const char *unique_name, const char *path, Int_t uid=-1)
 Creates an aligneable object with unique name corresponding to a path and adds it to the list of alignables. More...
 
TGeoPNEntryGetAlignableEntry (const char *name) const
 Retreives an existing alignable object. More...
 
TGeoPNEntryGetAlignableEntry (Int_t index) const
 Retreives an existing alignable object at a given index. More...
 
TGeoPNEntryGetAlignableEntryByUID (Int_t uid) const
 Retreives an existing alignable object having a preset UID. More...
 
Int_t GetNAlignable (Bool_t with_uid=kFALSE) const
 Retreives number of PN entries with or without UID. More...
 
TGeoPhysicalNodeMakeAlignablePN (const char *name)
 Make a physical node from the path pointed by an alignable object with a given name. More...
 
TGeoPhysicalNodeMakeAlignablePN (TGeoPNEntry *entry)
 Make a physical node from the path pointed by a given alignable object. More...
 
TGeoPhysicalNodeMakePhysicalNode (const char *path=0)
 Makes a physical node corresponding to a path. More...
 
void ClearPhysicalNodes (Bool_t mustdelete=kFALSE)
 Clear the current list of physical nodes, so that we can start over with a new list. More...
 
void RefreshPhysicalNodes (Bool_t lock=kTRUE)
 Refresh physical nodes to reflect the actual geometry paths after alignment was applied. More...
 
TVirtualGeoTrackMakeTrack (Int_t id, Int_t pdgcode, TObject *particle)
 Makes a primary track but do not attach it to the list of tracks. More...
 
TGeoVolumeAssemblyMakeVolumeAssembly (const char *name)
 Make an assembly of volumes. More...
 
TGeoVolumeMultiMakeVolumeMulti (const char *name, TGeoMedium *medium)
 Make a TGeoVolumeMulti handling a list of volumes. More...
 
void SetTopVolume (TGeoVolume *vol)
 Set the top volume and corresponding node as starting point of the geometry. More...
 
TGeoNodeCrossBoundaryAndLocate (Bool_t downwards, TGeoNode *skipnode)
 Cross next boundary and locate within current node The current point must be on the boundary of fCurrentNode. More...
 
TGeoNodeFindNextBoundary (Double_t stepmax=TGeoShape::Big(), const char *path="", Bool_t frombdr=kFALSE)
 Find distance to next boundary and store it in fStep. More...
 
TGeoNodeFindNextDaughterBoundary (Double_t *point, Double_t *dir, Int_t &idaughter, Bool_t compmatrix=kFALSE)
 Computes as fStep the distance to next daughter of the current volume. More...
 
TGeoNodeFindNextBoundaryAndStep (Double_t stepmax=TGeoShape::Big(), Bool_t compsafe=kFALSE)
 Compute distance to next boundary within STEPMAX. More...
 
TGeoNodeFindNode (Bool_t safe_start=kTRUE)
 Returns deepest node containing current point. More...
 
TGeoNodeFindNode (Double_t x, Double_t y, Double_t z)
 Returns deepest node containing current point. More...
 
Double_tFindNormal (Bool_t forward=kTRUE)
 Computes normal vector to the next surface that will be or was already crossed when propagating on a straight line from a given point/direction. More...
 
Double_tFindNormalFast ()
 Computes fast normal to next crossed boundary, assuming that the current point is close enough to the boundary. More...
 
TGeoNodeInitTrack (const Double_t *point, const Double_t *dir)
 Initialize current point and current direction vector (normalized) in MARS. More...
 
TGeoNodeInitTrack (Double_t x, Double_t y, Double_t z, Double_t nx, Double_t ny, Double_t nz)
 Initialize current point and current direction vector (normalized) in MARS. More...
 
void ResetState ()
 Reset current state flags. More...
 
Double_t Safety (Bool_t inside=kFALSE)
 Compute safe distance from the current point. More...
 
TGeoNodeSearchNode (Bool_t downwards=kFALSE, const TGeoNode *skipnode=0)
 Returns the deepest node containing fPoint, which must be set a priori. More...
 
TGeoNodeStep (Bool_t is_geom=kTRUE, Bool_t cross=kTRUE)
 Make a rectiliniar step of length fStep from current point (fPoint) on current direction (fDirection). More...
 
void DisableInactiveVolumes ()
 
void EnableInactiveVolumes ()
 
void SetCurrentTrack (Int_t i)
 
void SetCurrentTrack (TVirtualGeoTrack *track)
 
Int_t GetNtracks () const
 
TVirtualGeoTrackGetCurrentTrack ()
 
TVirtualGeoTrackGetLastTrack ()
 
const Double_tGetLastPoint () const
 
TVirtualGeoTrackGetTrack (Int_t index)
 
Int_t GetTrackIndex (Int_t id) const
 Get index for track id, -1 if not found. More...
 
TVirtualGeoTrackGetTrackOfId (Int_t id) const
 Get track with a given ID. More...
 
TVirtualGeoTrackFindTrackWithId (Int_t id) const
 Search the track hierarchy to find the track with the given id. More...
 
TVirtualGeoTrackGetParentTrackOfId (Int_t id) const
 Get parent track with a given ID. More...
 
Int_t GetVirtualLevel ()
 Find level of virtuality of current overlapping node (number of levels up having the same tracking media. More...
 
Bool_t GotoSafeLevel ()
 Go upwards the tree until a non-overlaping node. More...
 
Int_t GetSafeLevel () const
 Go upwards the tree until a non-overlaping node. More...
 
Double_t GetSafeDistance () const
 
Double_t GetLastSafety () const
 
Double_t GetStep () const
 
void InspectState () const
 Inspects path and all flags for the current state. More...
 
Bool_t IsAnimatingTracks () const
 
Bool_t IsCheckingOverlaps () const
 
Bool_t IsMatrixTransform () const
 
Bool_t IsMatrixReflection () const
 
Bool_t IsSameLocation (Double_t x, Double_t y, Double_t z, Bool_t change=kFALSE)
 Checks if point (x,y,z) is still in the current node. More...
 
Bool_t IsSameLocation () const
 
Bool_t IsSamePoint (Double_t x, Double_t y, Double_t z) const
 Check if a new point with given coordinates is the same as the last located one. More...
 
Bool_t IsStartSafe () const
 
void SetCheckingOverlaps (Bool_t flag=kTRUE)
 
void SetStartSafe (Bool_t flag=kTRUE)
 
void SetMatrixTransform (Bool_t on=kTRUE)
 
void SetMatrixReflection (Bool_t flag=kTRUE)
 
void SetStep (Double_t step)
 
Bool_t IsCurrentOverlapping () const
 
Bool_t IsEntering () const
 
Bool_t IsExiting () const
 
Bool_t IsStepEntering () const
 
Bool_t IsStepExiting () const
 
Bool_t IsOutside () const
 
Bool_t IsOnBoundary () const
 
Bool_t IsNullStep () const
 
Bool_t IsActivityEnabled () const
 
void SetOutside (Bool_t flag=kTRUE)
 
void CleanGarbage ()
 Clean temporary volumes and shapes from garbage collection. More...
 
void ClearShape (const TGeoShape *shape)
 Remove a shape from the list of shapes. More...
 
void ClearTracks ()
 
void ClearNavigators ()
 Clear all navigators. More...
 
void RemoveMaterial (Int_t index)
 Remove material at given index. More...
 
void RemoveNavigator (const TGeoNavigator *nav)
 Clear a single navigator. More...
 
void ResetUserData ()
 Sets all pointers TGeoVolume::fField to NULL. More...
 
Int_t CountNodes (const TGeoVolume *vol=0, Int_t nlevels=10000, Int_t option=0)
 Count the total number of nodes starting from a volume, nlevels down. More...
 
void CountLevels ()
 Count maximum number of nodes per volume, maximum depth and maximum number of xtru vertices. More...
 
virtual void ExecuteEvent (Int_t event, Int_t px, Int_t py)
 Execute mouse actions on this manager. More...
 
Int_t ReplaceVolume (TGeoVolume *vorig, TGeoVolume *vnew)
 Replaces all occurences of VORIG with VNEW in the geometry tree. More...
 
Int_t TransformVolumeToAssembly (const char *vname)
 Transform all volumes named VNAME to assemblies. The volumes must be virtual. More...
 
UChar_tGetBits ()
 
virtual Int_t GetByteCount (Option_t *option=0)
 Get total size of geometry in bytes. More...
 
void SetAllIndex ()
 Assigns uid's for all materials,media and matrices. More...
 
Int_t GetMaxThreads () const
 
void SetMaxThreads (Int_t nthreads)
 Set maximum number of threads for navigation. More...
 
void SetMultiThread (Bool_t flag=kTRUE)
 
Bool_t IsMultiThread () const
 
void ClearThreadData () const
 
void CreateThreadData () const
 Create thread private data for all geometry objects. More...
 
virtual Int_t Export (const char *filename, const char *name="", Option_t *option="vg")
 Export this geometry to a file. More...
 
Bool_t IsStreamingVoxels () const
 
Bool_t IsCleaning () const
 
TObjArrayGetListOfNodes ()
 
TObjArrayGetListOfPhysicalNodes ()
 
TObjArrayGetListOfOverlaps ()
 
TObjArrayGetListOfMatrices () const
 
TListGetListOfMaterials () const
 
TListGetListOfMedia () const
 
TObjArrayGetListOfVolumes () const
 
TObjArrayGetListOfGVolumes () const
 
TObjArrayGetListOfShapes () const
 
TObjArrayGetListOfGShapes () const
 
TObjArrayGetListOfUVolumes () const
 
TObjArrayGetListOfTracks () const
 
TGeoNavigatorArrayGetListOfNavigators () const
 Get list of navigators for the calling thread. More...
 
TGeoElementTableGetElementTable ()
 Returns material table. Creates it if not existing. More...
 
void DoBackupState ()
 Backup the current state without affecting the cache stack. More...
 
void DoRestoreState ()
 Restore a backed-up state without affecting the cache stack. More...
 
TGeoNodeGetNode (Int_t level) const
 
Int_t GetNodeId () const
 
TGeoNodeGetNextNode () const
 
TGeoNodeGetMother (Int_t up=1) const
 
TGeoHMatrixGetMotherMatrix (Int_t up=1) const
 
TGeoHMatrixGetHMatrix ()
 Return stored current matrix (global matrix of the next touched node). More...
 
TGeoHMatrixGetCurrentMatrix () const
 
TGeoHMatrixGetGLMatrix () const
 
TGeoNavigatorGetCurrentNavigator () const
 Returns current navigator for the calling thread. More...
 
TGeoNodeGetCurrentNode () const
 
Int_t GetCurrentNodeId () const
 Get the unique ID of the current node. More...
 
const Double_tGetCurrentPoint () const
 
const Double_tGetCurrentDirection () const
 
TGeoVolumeGetCurrentVolume () const
 
const Double_tGetCldirChecked () const
 
const Double_tGetCldir () const
 
const Double_tGetNormal () const
 
Int_t GetLevel () const
 
Int_t GetMaxLevel () const
 
const char * GetPath () const
 Get path to the current node in the form /node0/node1/... More...
 
Int_t GetStackLevel () const
 
TGeoVolumeGetMasterVolume () const
 
TGeoVolumeGetTopVolume () const
 
TGeoNodeGetTopNode () const
 
TGeoPhysicalNodeGetPhysicalNode (Int_t i) const
 
void SetCurrentPoint (Double_t *point)
 
void SetCurrentPoint (Double_t x, Double_t y, Double_t z)
 
void SetLastPoint (Double_t x, Double_t y, Double_t z)
 
void SetCurrentDirection (Double_t *dir)
 
void SetCurrentDirection (Double_t nx, Double_t ny, Double_t nz)
 
void SetCldirChecked (Double_t *dir)
 
void LocalToMaster (const Double_t *local, Double_t *master) const
 
void LocalToMasterVect (const Double_t *local, Double_t *master) const
 
void LocalToMasterBomb (const Double_t *local, Double_t *master) const
 
void MasterToLocal (const Double_t *master, Double_t *local) const
 
void MasterToLocalVect (const Double_t *master, Double_t *local) const
 
void MasterToLocalBomb (const Double_t *master, Double_t *local) const
 
void MasterToTop (const Double_t *master, Double_t *top) const
 Convert coordinates from master volume frame to top. More...
 
void TopToMaster (const Double_t *top, Double_t *master) const
 Convert coordinates from top volume frame to master. More...
 
TGeoMaterialFindDuplicateMaterial (const TGeoMaterial *mat) const
 Find if a given material duplicates an existing one. More...
 
TGeoVolumeFindVolumeFast (const char *name, Bool_t multi=kFALSE)
 Fast search for a named volume. All trailing blanks stripped. More...
 
TGeoMaterialGetMaterial (const char *matname) const
 Search for a named material. All trailing blanks stripped. More...
 
TGeoMaterialGetMaterial (Int_t id) const
 Return material at position id. More...
 
TGeoMediumGetMedium (const char *medium) const
 Search for a named tracking medium. All trailing blanks stripped. More...
 
TGeoMediumGetMedium (Int_t numed) const
 Search for a tracking medium with a given ID. More...
 
Int_t GetMaterialIndex (const char *matname) const
 Return index of named material. More...
 
TGeoVolumeGetVolume (const char *name) const
 Search for a named volume. All trailing blanks stripped. More...
 
TGeoVolumeGetVolume (Int_t uid) const
 
Int_t GetUID (const char *volname) const
 Retreive unique id for a volume name. Return -1 if name not found. More...
 
Int_t GetNNodes ()
 
TGeoNodeCacheGetCache () const
 
void SetAnimateTracks (Bool_t flag=kTRUE)
 
virtual ULong_t SizeOf (const TGeoNode *node, Option_t *option)
 computes the total size in bytes of the branch starting with node. More...
 
void SelectTrackingMedia ()
 Define different tracking media. More...
 
Int_t PushPath (Int_t startlevel=0)
 
Bool_t PopPath ()
 
Bool_t PopPath (Int_t index)
 
Int_t PushPoint (Int_t startlevel=0)
 
Bool_t PopPoint ()
 
Bool_t PopPoint (Int_t index)
 
void PopDummy (Int_t ipop=9999)
 
TGeoParallelWorldCreateParallelWorld (const char *name)
 Create a parallel world for prioritized navigation. More...
 
TGeoParallelWorldGetParallelWorld () const
 
void SetUseParallelWorldNav (Bool_t flag)
 Activate/deactivate usage of parallel world navigation. More...
 
Bool_t IsParallelWorldNav () const
 
- Public Member Functions inherited from TNamed
 TNamed ()
 
 TNamed (const char *name, const char *title)
 
 TNamed (const TString &name, const TString &title)
 
 TNamed (const TNamed &named)
 
TNamedoperator= (const TNamed &rhs)
 TNamed assignment operator. More...
 
virtual ~TNamed ()
 
virtual void Clear (Option_t *option="")
 Set name and title to empty strings (""). More...
 
virtual TObjectClone (const char *newname="") const
 Make a clone of an object using the Streamer facility. More...
 
virtual Int_t Compare (const TObject *obj) const
 Compare two TNamed objects. More...
 
virtual void Copy (TObject &named) const
 Copy this to obj. More...
 
virtual void FillBuffer (char *&buffer)
 Encode TNamed into output buffer. More...
 
virtual const char * GetName () const
 Returns name of object. More...
 
virtual const char * GetTitle () const
 Returns title of object. More...
 
virtual ULong_t Hash () const
 Return hash value for this object. More...
 
virtual Bool_t IsSortable () const
 
virtual void SetName (const char *name)
 Change (i.e. More...
 
virtual void SetNameTitle (const char *name, const char *title)
 Change (i.e. set) all the TNamed parameters (name and title). More...
 
virtual void SetTitle (const char *title="")
 Change (i.e. set) the title of the TNamed. More...
 
virtual void ls (Option_t *option="") const
 List TNamed name and title. More...
 
virtual void Print (Option_t *option="") const
 Print TNamed name and title. More...
 
virtual Int_t Sizeof () const
 Return size of the TNamed part of the TObject. More...
 
- Public Member Functions inherited from TObject
 TObject ()
 
 TObject (const TObject &object)
 TObject copy ctor. More...
 
TObjectoperator= (const TObject &rhs)
 TObject assignment operator. More...
 
virtual ~TObject ()
 TObject destructor. More...
 
virtual void AppendPad (Option_t *option="")
 Append graphics object to current pad. More...
 
virtual const char * ClassName () const
 Returns name of class to which the object belongs. More...
 
virtual void Delete (Option_t *option="")
 Delete this object. More...
 
virtual Int_t DistancetoPrimitive (Int_t px, Int_t py)
 Computes distance from point (px,py) to the object. More...
 
virtual void Draw (Option_t *option="")
 Default Draw method for all objects. More...
 
virtual void DrawClass () const
 Draw class inheritance tree of the class to which this object belongs. More...
 
virtual TObjectDrawClone (Option_t *option="") const
 Draw a clone of this object in the current pad. More...
 
virtual void Dump () const
 Dump contents of object on stdout. More...
 
virtual void Execute (const char *method, const char *params, Int_t *error=0)
 Execute method on this object with the given parameter string, e.g. More...
 
virtual void Execute (TMethod *method, TObjArray *params, Int_t *error=0)
 Execute method on this object with parameters stored in the TObjArray. More...
 
virtual TObjectFindObject (const char *name) const
 Must be redefined in derived classes. More...
 
virtual TObjectFindObject (const TObject *obj) const
 Must be redefined in derived classes. More...
 
virtual Option_tGetDrawOption () const
 Get option used by the graphics system to draw this object. More...
 
virtual UInt_t GetUniqueID () const
 Return the unique object id. More...
 
virtual const char * GetIconName () const
 Returns mime type name of object. More...
 
virtual Option_tGetOption () const
 
virtual char * GetObjectInfo (Int_t px, Int_t py) const
 Returns string containing info about the object at position (px,py). More...
 
virtual Bool_t HandleTimer (TTimer *timer)
 Execute action in response of a timer timing out. More...
 
virtual Bool_t InheritsFrom (const char *classname) const
 Returns kTRUE if object inherits from class "classname". More...
 
virtual Bool_t InheritsFrom (const TClass *cl) const
 Returns kTRUE if object inherits from TClass cl. More...
 
virtual void Inspect () const
 Dump contents of this object in a graphics canvas. More...
 
virtual Bool_t IsEqual (const TObject *obj) const
 Default equal comparison (objects are equal if they have the same address in memory). More...
 
Bool_t IsOnHeap () const
 
Bool_t IsZombie () const
 
virtual Bool_t Notify ()
 This method must be overridden to handle object notification. More...
 
virtual void Paint (Option_t *option="")
 This method must be overridden if a class wants to paint itself. More...
 
virtual void Pop ()
 Pop on object drawn in a pad to the top of the display list. More...
 
virtual Int_t Read (const char *name)
 Read contents of object with specified name from the current directory. More...
 
virtual void RecursiveRemove (TObject *obj)
 Recursively remove this object from a list. More...
 
virtual void SaveAs (const char *filename="", Option_t *option="") const
 Save this object in the file specified by filename. More...
 
virtual void SavePrimitive (std::ostream &out, Option_t *option="")
 Save a primitive as a C++ statement(s) on output stream "out". More...
 
virtual void SetDrawOption (Option_t *option="")
 Set drawing option for object. More...
 
virtual void SetUniqueID (UInt_t uid)
 Set the unique object id. More...
 
virtual void UseCurrentStyle ()
 Set current style settings in this object This function is called when either TCanvas::UseCurrentStyle or TROOT::ForceStyle have been invoked. More...
 
virtual Int_t Write (const char *name=0, Int_t option=0, Int_t bufsize=0)
 Write this object to the current directory. More...
 
virtual Int_t Write (const char *name=0, Int_t option=0, Int_t bufsize=0) const
 Write this object to the current directory. More...
 
voidoperator new (size_t sz)
 
voidoperator new[] (size_t sz)
 
voidoperator new (size_t sz, void *vp)
 
voidoperator new[] (size_t sz, void *vp)
 
void operator delete (void *ptr)
 Operator delete. More...
 
void operator delete[] (void *ptr)
 Operator delete []. More...
 
void SetBit (UInt_t f, Bool_t set)
 Set or unset the user status bits as specified in f. More...
 
void SetBit (UInt_t f)
 
void ResetBit (UInt_t f)
 
Bool_t TestBit (UInt_t f) const
 
Int_t TestBits (UInt_t f) const
 
void InvertBit (UInt_t f)
 
virtual void Info (const char *method, const char *msgfmt,...) const
 Issue info message. More...
 
virtual void Warning (const char *method, const char *msgfmt,...) const
 Issue warning message. More...
 
virtual void Error (const char *method, const char *msgfmt,...) const
 Issue error message. More...
 
virtual void SysError (const char *method, const char *msgfmt,...) const
 Issue system error message. More...
 
virtual void Fatal (const char *method, const char *msgfmt,...) const
 Issue fatal error message. More...
 
void AbstractMethod (const char *method) const
 Use this method to implement an "abstract" method that you don't want to leave purely abstract. More...
 
void MayNotUse (const char *method) const
 Use this method to signal that a method (defined in a base class) may not be called in a derived class (in principle against good design since a child class should not provide less functionality than its parent, however, sometimes it is necessary). More...
 
void Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const
 Use this method to declare a method obsolete. More...
 

Static Public Member Functions

static Int_t Parse (const char *expr, TString &expr1, TString &expr2, TString &expr3)
 Parse a string boolean expression and do a syntax check. More...
 
static Int_t GetMaxDaughters ()
 Return maximum number of daughters of a volume used in the geometry. More...
 
static Int_t GetMaxLevels ()
 Return maximum number of levels used in the geometry. More...
 
static Int_t GetMaxXtruVert ()
 Return maximum number of vertices for an xtru shape used. More...
 
static void SetNavigatorsLock (Bool_t flag)
 Set the lock for navigators. More...
 
static Int_t ThreadId ()
 Translates the current thread id to an ordinal number. More...
 
static Int_t GetNumThreads ()
 Returns number of threads that were set to use geometry. More...
 
static void ClearThreadsMap ()
 Clear the current map of threads. More...
 
static void LockGeometry ()
 Lock current geometry so that no other geometry can be imported. More...
 
static void UnlockGeometry ()
 Unlock current geometry. More...
 
static Int_t GetVerboseLevel ()
 Set verbosity level (static function). More...
 
static void SetVerboseLevel (Int_t vl)
 Return current verbosity level (static function). More...
 
static TGeoManagerImport (const char *filename, const char *name="", Option_t *option="")
 static function Import a geometry from a gdml or ROOT file More...
 
static Bool_t IsLocked ()
 Check lock state. More...
 
- Static Public Member Functions inherited from TObject
static Long_t GetDtorOnly ()
 Return destructor only flag. More...
 
static void SetDtorOnly (void *obj)
 Set destructor only flag. More...
 
static Bool_t GetObjectStat ()
 Get status of object stat flag. More...
 
static void SetObjectStat (Bool_t stat)
 Turn on/off tracking of objects in the TObjectTable. More...
 

Protected Member Functions

 TGeoManager (const TGeoManager &)
 Maximum number of Xtru vertices. More...
 
TGeoManageroperator= (const TGeoManager &)
 assignment operator More...
 
- Protected Member Functions inherited from TObject
void MakeZombie ()
 
virtual void DoError (int level, const char *location, const char *fmt, va_list va) const
 Interface to ErrorHandler (protected). More...
 

Static Protected Attributes

static Bool_t fgLock
 
static Int_t fgVerboseLevel = 1
 Lock preventing a second geometry to be loaded. More...
 
static Int_t fgMaxLevel = 1
 Verbosity level for Info messages (no IO). More...
 
static Int_t fgMaxDaughters = 1
 Maximum level in geometry. More...
 
static Int_t fgMaxXtruVert = 1
 Maximum number of daughters. More...
 

Private Types

typedef std::map< Long_t, TGeoNavigatorArray * > NavigatorsMap_t
 bits used for voxelization More...
 
typedef NavigatorsMap_t::iterator NavigatorsMapIt_t
 
typedef std::map< Long_t, Int_tThreadsMap_t
 
typedef ThreadsMap_t::const_iterator ThreadsMapIt_t
 

Private Member Functions

Bool_t IsLoopingVolumes () const
 
void Init ()
 Initialize manager class. More...
 
Bool_t InitArrayPNE () const
 Initialize PNE array for fast access via index and unique-id. More...
 
Bool_t InsertPNEId (Int_t uid, Int_t ientry)
 Insert a PN entry in the sorted array of indexes. More...
 
void SetLoopVolumes (Bool_t flag=kTRUE)
 
void UpdateElements ()
 Update element flags when geometry is loaded from a file. More...
 
void Voxelize (Option_t *option=0)
 Voxelize all non-divided volumes. More...
 

Private Attributes

Double_t fPhimin
 
Double_t fPhimax
 lowest range for phi cut More...
 
Double_t fTmin
 highest range for phi cut More...
 
Double_t fTmax
 lower time limit for tracks drawing More...
 
Int_t fNNodes
 upper time limit for tracks drawing More...
 
TString fPath
 
TString fParticleName
 path to current node More...
 
Double_t fVisDensity
 particles to be drawn More...
 
Int_t fExplodedView
 
Int_t fVisOption
 
Int_t fVisLevel
 
Int_t fNsegments
 
Int_t fNtracks
 
Int_t fMaxVisNodes
 
TVirtualGeoTrackfCurrentTrack
 
Int_t fNpdg
 current track More...
 
Int_t fPdgId [1024]
 
Bool_t fClosed
 
Bool_t fLoopVolumes
 flag that geometry is closed More...
 
Bool_t fStreamVoxels
 flag volume lists loop More...
 
Bool_t fIsGeomReading
 
Bool_t fIsGeomCleaning
 flag set when reading geometry More...
 
Bool_t fPhiCut
 flag to notify that the manager is being destructed More...
 
Bool_t fTimeCut
 
Bool_t fDrawExtra
 
Bool_t fMatrixTransform
 flag that the list of physical nodes has to be drawn More...
 
Bool_t fMatrixReflection
 flag for using GL matrix More...
 
Bool_t fActivity
 flag for GL reflections More...
 
Bool_t fIsNodeSelectable
 switch ON/OFF volume activity (default OFF - all volumes active)) More...
 
TVirtualGeoPainterfPainter
 flag that nodes are the selected objects in pad rather than volumes More...
 
TObjArrayfMatrices
 current painter More...
 
TObjArrayfShapes
 
TObjArrayfVolumes
 
TObjArrayfPhysicalNodes
 
TObjArrayfGShapes
 
TObjArrayfGVolumes
 list of runtime shapes More...
 
TObjArrayfTracks
 list of runtime volumes More...
 
TObjArrayfPdgNames
 
TListfMaterials
 
TListfMedia
 
TObjArrayfNodes
 
TObjArrayfOverlaps
 
UChar_tfBits
 
NavigatorsMap_t fNavigators
 
TGeoNavigatorfCurrentNavigator
 Lock existing navigators. More...
 
TGeoVolumefCurrentVolume
 current navigator More...
 
TGeoVolumefTopVolume
 current volume More...
 
TGeoNodefTopNode
 top level volume in geometry More...
 
TGeoVolumefMasterVolume
 top physical node More...
 
TGeoHMatrixfGLMatrix
 
TObjArrayfUniqueVolumes
 
TGeoShapefClippingShape
 
TGeoElementTablefElementTable
 clipping shape for raytracing More...
 
Int_tfNodeIdArray
 table of elements More...
 
Int_t fNLevel
 array of node id's More...
 
TGeoVolumefPaintVolume
 
THashListfHashVolumes
 volume currently painted More...
 
THashListfHashGVolumes
 hash list of volumes providing fast search More...
 
THashListfHashPNE
 hash list of group volumes providing fast search More...
 
TObjArrayfArrayPNE
 
Int_t fSizePNEId
 array of phisical node entries More...
 
Int_t fNPNEId
 
Int_tfKeyPNEId
 
Int_tfValuePNEId
 
Int_t fMaxThreads
 
Bool_t fMultiThread
 Max number of threads. More...
 
Bool_t fUsePWNav
 Flag for multi-threading. More...
 
TGeoParallelWorldfParallelWorld
 

Static Private Attributes

static ThreadsMap_tfgThreadId = 0
 Map between thread id's and navigator arrays. More...
 
static Int_t fgNumThreads = 0
 Thread id's map. More...
 
static Bool_t fgLockNavigators
 Number of registered threads. More...
 

Additional Inherited Members

- Public Types inherited from TObject
enum  EStatusBits {
  kCanDelete = BIT(0), kMustCleanup = BIT(3), kObjInCanvas = BIT(3), kIsReferenced = BIT(4),
  kHasUUID = BIT(5), kCannotPick = BIT(6), kNoContextMenu = BIT(8), kInvalidObject = BIT(13)
}
 
enum  { kIsOnHeap = 0x01000000, kNotDeleted = 0x02000000, kZombie = 0x04000000, kBitMask = 0x00ffffff }
 
enum  { kSingleKey = BIT(0), kOverwrite = BIT(1), kWriteDelete = BIT(2) }
 
- Protected Attributes inherited from TNamed
TString fName
 
TString fTitle
 

#include <TGeoManager.h>

+ Inheritance diagram for TGeoManager:
+ Collaboration diagram for TGeoManager:

Member Typedef Documentation

bits used for voxelization

Definition at line 105 of file TGeoManager.h.

typedef NavigatorsMap_t::iterator TGeoManager::NavigatorsMapIt_t
private

Definition at line 106 of file TGeoManager.h.

typedef std::map<Long_t, Int_t> TGeoManager::ThreadsMap_t
private

Definition at line 107 of file TGeoManager.h.

typedef ThreadsMap_t::const_iterator TGeoManager::ThreadsMapIt_t
private

Definition at line 108 of file TGeoManager.h.

Constructor & Destructor Documentation

TGeoManager::TGeoManager ( const TGeoManager gm)
protected

Maximum number of Xtru vertices.

copy constructor

Definition at line 517 of file TGeoManager.cxx.

TGeoManager::TGeoManager ( )

Default constructor.

Definition at line 342 of file TGeoManager.cxx.

Referenced by Import().

TGeoManager::TGeoManager ( const char *  name,
const char *  title 
)

Constructor.

Definition at line 422 of file TGeoManager.cxx.

TGeoManager::~TGeoManager ( )
virtual

Destructor.

Definition at line 675 of file TGeoManager.cxx.

Member Function Documentation

Int_t TGeoManager::AddMaterial ( const TGeoMaterial material)

Add a material to the list. Returns index of the material in list.

Definition at line 726 of file TGeoManager.cxx.

Referenced by TGeoVolume::RegisterYourself(), and TGeoMaterial::TGeoMaterial().

TGeoNavigator * TGeoManager::AddNavigator ( )

Add a navigator in the list of navigators.

If it is the first one make it current navigator.

Definition at line 837 of file TGeoManager.cxx.

Referenced by CloseGeometry(), and SetTopVolume().

Int_t TGeoManager::AddOverlap ( const TNamed ovlp)

Add an illegal overlap/extrusion to the list.

Definition at line 734 of file TGeoManager.cxx.

Referenced by TGeoChecker::CheckOverlapsBySampling(), and TGeoChecker::MakeCheckOverlap().

Int_t TGeoManager::AddShape ( const TGeoShape shape)

Add a shape to the list. Returns index of the shape in list.

Definition at line 752 of file TGeoManager.cxx.

Referenced by TGeoCompositeShape::RegisterYourself(), TGeoVolume::RegisterYourself(), and TGeoShape::TGeoShape().

Int_t TGeoManager::AddTrack ( Int_t  id,
Int_t  pdgcode,
TObject particle = 0 
)

Add a track to the list of tracks.

Use this for primaries only. For secondaries, add them to the parent track. The method create objects that are registered to the analysis manager but have to be cleaned-up by the user via ClearTracks().

Definition at line 762 of file TGeoManager.cxx.

Int_t TGeoManager::AddTrack ( TVirtualGeoTrack track)

Add a track to the list of tracks.

Definition at line 772 of file TGeoManager.cxx.

Int_t TGeoManager::AddTransformation ( const TGeoMatrix matrix)

Add a matrix to the list. Returns index of the matrix in list.

Definition at line 744 of file TGeoManager.cxx.

Int_t TGeoManager::AddVolume ( TGeoVolume volume)

Add a volume to the list. Returns index of the volume in list.

Definition at line 792 of file TGeoManager.cxx.

Referenced by TGeoVolume::RegisterYourself(), TGeoVolume::TGeoVolume(), TGeoVolumeAssembly::TGeoVolumeAssembly(), and TGeoVolumeMulti::TGeoVolumeMulti().

void TGeoManager::AnimateTracks ( Double_t  tmin = 0,
Double_t  tmax = 5E-8,
Int_t  nframes = 200,
Option_t option = "/*" 
)

Draw animation of tracks.

Definition at line 1797 of file TGeoManager.cxx.

void TGeoManager::BombTranslation ( const Double_t tr,
Double_t bombtr 
)

Get the new 'bombed' translation vector according current exploded view mode.

Definition at line 1093 of file TGeoManager.cxx.

Referenced by TGeoMatrix::LocalToMasterBomb(), and TGeoTranslation::LocalToMasterBomb().

void TGeoManager::Browse ( TBrowser b)
virtual

Describe how to browse this object.

Reimplemented from TObject.

Definition at line 1049 of file TGeoManager.cxx.

void TGeoManager::BuildDefaultMaterials ( )

Now just a shortcut for GetElementTable.

Definition at line 3374 of file TGeoManager.cxx.

Referenced by TGeoManager(), and TGeoManagerEditor::TGeoManagerEditor().

Bool_t TGeoManager::cd ( const char *  path = "")
virtual
void TGeoManager::CdDown ( Int_t  index)

Make a daughter of current node current.

Can be called only with a valid daughter index (no check). Updates cache accordingly.

Definition at line 1660 of file TGeoManager.cxx.

Referenced by TGeoNodeCache::CdNode(), and TGeoChecker::CheckBoundaryReference().

void TGeoManager::CdNext ( )

Do a cd to the node found next by FindNextBoundary.

Definition at line 1668 of file TGeoManager.cxx.

void TGeoManager::CdNode ( Int_t  nodeid)

Change current path to point to the node having this id.

Node id has to be in range : 0 to fNNodes-1 (no check for performance reasons)

Definition at line 1626 of file TGeoManager.cxx.

void TGeoManager::CdTop ( )

Make top level node the current node.

Updates the cache accordingly. Determine the overlapping state of current node.

Definition at line 1643 of file TGeoManager.cxx.

Referenced by TGeoPhysicalNode::Align(), TGeoNodeCache::CdNode(), TGeoPainter::Paint(), TGeoChecker::Test(), and TGeoChecker::TestOverlaps().

void TGeoManager::CdUp ( )

Go one level up in geometry.

Updates cache accordingly. Determine the overlapping state of current node.

Definition at line 1652 of file TGeoManager.cxx.

Referenced by TGeoNodeCache::CdNode(), TGeoPainter::DistanceToPrimitiveVol(), TGeoNode::Draw(), TGeoPainter::PaintVolume(), and TGeoChecker::SamplePoints().

void TGeoManager::CheckBoundaryErrors ( Int_t  ntracks = 1000000,
Double_t  radius = -1. 
)

Check pushes and pulls needed to cross the next boundary with respect to the position given by FindNextBoundary.

If radius is not mentioned the full bounding box will be sampled.

Definition at line 3506 of file TGeoManager.cxx.

void TGeoManager::CheckBoundaryReference ( Int_t  icheck = -1)

Check the boundary errors reference file created by CheckBoundaryErrors method.

The shape for which the crossing failed is drawn with the starting point in red and the extrapolated point to boundary (+/- failing push/pull) in yellow.

Definition at line 3516 of file TGeoManager.cxx.

void TGeoManager::CheckGeometry ( Option_t option = "")

Perform last checks on the geometry.

Definition at line 3582 of file TGeoManager.cxx.

Referenced by CloseGeometry().

void TGeoManager::CheckGeometryFull ( Int_t  ntracks = 1000000,
Double_t  vx = 0.,
Double_t  vy = 0.,
Double_t  vz = 0.,
Option_t option = "ob" 
)

Geometry checking.

  • if option contains 'o': Optional overlap checkings (by sampling and by mesh).
  • if option contains 'b': Optional boundary crossing check + timing per volume.

STAGE 1: extensive overlap checking by sampling per volume. Stdout need to be checked by user to get report, then TGeoVolume::CheckOverlaps(0.01, "s") can be called for the suspicious volumes. STAGE2 : normal overlap checking using the shapes mesh - fills the list of overlaps. STAGE3 : shooting NRAYS rays from VERTEX and counting the total number of crossings per volume (rays propagated from boundary to boundary until geometry exit). Timing computed and results stored in a histo. STAGE4 : shooting 1 mil. random rays inside EACH volume and calling FindNextBoundary() + Safety() for each call. The timing is normalized by the number of crossings computed at stage 2 and presented as percentage. One can get a picture on which are the most "burned" volumes during transportation from geometry point of view. Another plot of the timing per volume vs. number of daughters is produced.

Definition at line 3562 of file TGeoManager.cxx.

void TGeoManager::CheckOverlaps ( Double_t  ovlp = 0.1,
Option_t option = "" 
)

Check all geometry for illegal overlaps within a limit OVLP.

Definition at line 3614 of file TGeoManager.cxx.

Referenced by TGeoChecker::CheckGeometryFull().

Bool_t TGeoManager::CheckPath ( const char *  path) const

Check if a geometry path is valid without changing the state of the current navigator.

Definition at line 1685 of file TGeoManager.cxx.

Referenced by TGeoParallelWorld::AddNode(), MakePhysicalNode(), SetAlignableEntry(), and TGeoPNEntry::TGeoPNEntry().

void TGeoManager::CheckPoint ( Double_t  x = 0,
Double_t  y = 0,
Double_t  z = 0,
Option_t option = "" 
)

Classify a given point. See TGeoChecker::CheckPoint().

Definition at line 3524 of file TGeoManager.cxx.

void TGeoManager::CheckShape ( TGeoShape shape,
Int_t  testNo,
Int_t  nsamples,
Option_t option 
)

Test for shape navigation methods.

Summary for test numbers: 1: DistFromInside/Outside. Sample points inside the shape. Generate directions randomly in cos(theta). Compute DistFromInside and move the point with bigger distance. Compute DistFromOutside back from new point. Plot d-(d1+d2)

Definition at line 3537 of file TGeoManager.cxx.

Referenced by TGeoShape::CheckShape().

void TGeoManager::CleanGarbage ( )

Clean temporary volumes and shapes from garbage collection.

Definition at line 1600 of file TGeoManager.cxx.

Referenced by ~TGeoManager().

void TGeoManager::ClearAttributes ( )

Reset all attributes to default ones.

Default attributes for visualization are those defined before closing the geometry.

Definition at line 1460 of file TGeoManager.cxx.

void TGeoManager::ClearNavigators ( )

Clear all navigators.

Definition at line 920 of file TGeoManager.cxx.

Referenced by ~TGeoManager().

void TGeoManager::ClearOverlaps ( )

Clear the list of overlaps.

Definition at line 1580 of file TGeoManager.cxx.

Referenced by TGeoNode::CheckOverlaps(), and TGeoVolume::CheckOverlaps().

void TGeoManager::ClearPhysicalNodes ( Bool_t  mustdelete = kFALSE)

Clear the current list of physical nodes, so that we can start over with a new list.

If MUSTDELETE is true, delete previous nodes.

Definition at line 3308 of file TGeoManager.cxx.

void TGeoManager::ClearShape ( const TGeoShape shape)

Remove a shape from the list of shapes.

Definition at line 1592 of file TGeoManager.cxx.

Referenced by TGeoVolume::ClearShape(), and SetClippingShape().

void TGeoManager::ClearThreadData ( ) const

Definition at line 987 of file TGeoManager.cxx.

Referenced by operator=(), SetMaxThreads(), and ~TGeoManager().

void TGeoManager::ClearThreadsMap ( )
static

Clear the current map of threads.

This will be filled again by the calling threads via ThreadId calls.

Definition at line 1014 of file TGeoManager.cxx.

Referenced by Init(), operator=(), SetMaxThreads(), TGeoManager(), and ~TGeoManager().

void TGeoManager::ClearTracks ( )
inline

Definition at line 416 of file TGeoManager.h.

void TGeoManager::CloseGeometry ( Option_t option = "d")

Closing geometry implies checking the geometry validity, fixing shapes with negative parameters (run-time shapes)building the cache manager, voxelizing all volumes, counting the total number of physical nodes and registring the manager class to the browser.

Definition at line 1482 of file TGeoManager.cxx.

Referenced by TGeoManagerEditor::DoCloseGeometry(), and Import().

void TGeoManager::ConvertReflections ( )

Convert all reflections in geometry to normal rotations + reflected shapes.

Definition at line 1693 of file TGeoManager.cxx.

void TGeoManager::CountLevels ( )

Count maximum number of nodes per volume, maximum depth and maximum number of xtru vertices.

Definition at line 1726 of file TGeoManager.cxx.

Referenced by CloseGeometry().

Int_t TGeoManager::CountNodes ( const TGeoVolume vol = 0,
Int_t  nlevels = 10000,
Int_t  option = 0 
)

Count the total number of nodes starting from a volume, nlevels down.

Definition at line 1766 of file TGeoManager.cxx.

Referenced by CloseGeometry(), and GetNNodes().

TGeoParallelWorld * TGeoManager::CreateParallelWorld ( const char *  name)

Create a parallel world for prioritized navigation.

This can be populated with physical nodes and can be navigated independently using its API. In case the flag SetUseParallelWorldNav is set, any navigation query in the main geometry is checked against the parallel geometry, which gets priority in case of overlaps with the main geometry volumes.

Definition at line 3980 of file TGeoManager.cxx.

void TGeoManager::CreateThreadData ( ) const

Create thread private data for all geometry objects.

Definition at line 1000 of file TGeoManager.cxx.

Referenced by SetMaxThreads().

TGeoNode * TGeoManager::CrossBoundaryAndLocate ( Bool_t  downwards,
TGeoNode skipnode 
)

Cross next boundary and locate within current node The current point must be on the boundary of fCurrentNode.

Definition at line 2542 of file TGeoManager.cxx.

void TGeoManager::DefaultAngles ( )

Set default angles for a given view.

Definition at line 1781 of file TGeoManager.cxx.

void TGeoManager::DefaultColors ( )

Set default volume colors according to A of material.

Definition at line 2119 of file TGeoManager.cxx.

Referenced by Import().

void TGeoManager::DisableInactiveVolumes ( )
inline

Definition at line 368 of file TGeoManager.h.

TGeoVolume * TGeoManager::Division ( const char *  name,
const char *  mother,
Int_t  iaxis,
Int_t  ndiv,
Double_t  start,
Double_t  step,
Int_t  numed = 0,
Option_t option = "" 
)

Create a new volume by dividing an existing one (GEANT3 like)

Divides MOTHER into NDIV divisions called NAME along axis IAXIS starting at coordinate value START and having size STEP. The created volumes will have tracking media ID=NUMED (if NUMED=0 -> same media as MOTHER) The behavior of the division operation can be triggered using OPTION : OPTION (case insensitive) : N - divide all range in NDIV cells (same effect as STEP<=0) (GSDVN in G3) NX - divide range starting with START in NDIV cells (GSDVN2 in G3) S - divide all range with given STEP. NDIV is computed and divisions will be centered in full range (same effect as NDIV<=0) (GSDVS, GSDVT in G3) SX - same as DVS, but from START position. (GSDVS2, GSDVT2 in G3)

Definition at line 1258 of file TGeoManager.cxx.

Referenced by TGeoMCGeometry::Gsdvn(), TGeoMCGeometry::Gsdvn2(), TGeoMCGeometry::Gsdvt(), and TGeoMCGeometry::Gsdvt2().

void TGeoManager::DoBackupState ( )

Backup the current state without affecting the cache stack.

Definition at line 1111 of file TGeoManager.cxx.

Referenced by TGeoPainter::Raytrace().

void TGeoManager::DoRestoreState ( )

Restore a backed-up state without affecting the cache stack.

Definition at line 1119 of file TGeoManager.cxx.

Referenced by TGeoPainter::Raytrace().

void TGeoManager::DrawCurrentPoint ( Int_t  color = 2)

Draw current point in the same view.

Definition at line 1789 of file TGeoManager.cxx.

void TGeoManager::DrawPath ( const char *  path,
Option_t option = "" 
)

Draw current path.

Definition at line 1876 of file TGeoManager.cxx.

void TGeoManager::DrawTracks ( Option_t option = "")

Draw tracks over the geometry, according to option.

By default, only primaries are drawn. See TGeoTrack::Draw() for additional options.

Definition at line 1859 of file TGeoManager.cxx.

Referenced by AnimateTracks().

void TGeoManager::Edit ( Option_t option = "")
virtual

Append a pad for this geometry.

Definition at line 1068 of file TGeoManager.cxx.

void TGeoManager::EnableInactiveVolumes ( )
inline

Definition at line 369 of file TGeoManager.h.

void TGeoManager::ExecuteEvent ( Int_t  event,
Int_t  px,
Int_t  py 
)
virtual

Execute mouse actions on this manager.

Reimplemented from TObject.

Definition at line 3691 of file TGeoManager.cxx.

Int_t TGeoManager::Export ( const char *  filename,
const char *  name = "",
Option_t option = "vg" 
)
virtual

Export this geometry to a file.

-Case 1: root file or root/xml file if filename end with ".root". The key will be named name By default the geometry is saved without the voxelisation info. Use option 'v" to save the voxelisation info. if filename end with ".xml" a root/xml file is produced.

-Case 2: C++ script if filename end with ".C"

-Case 3: gdml file if filename end with ".gdml" NOTE that to use this option, the PYTHONPATH must be defined like export PYTHONPATH=$ROOTSYS/lib:$ROOTSYS/geom/gdml

Definition at line 3715 of file TGeoManager.cxx.

Referenced by TGeoManagerEditor::DoExportGeometry().

TGeoMaterial * TGeoManager::FindDuplicateMaterial ( const TGeoMaterial mat) const

Find if a given material duplicates an existing one.

Definition at line 2786 of file TGeoManager.cxx.

TGeoNode * TGeoManager::FindNextBoundary ( Double_t  stepmax = TGeoShape::Big(),
const char *  path = "",
Bool_t  frombdr = kFALSE 
)

Find distance to next boundary and store it in fStep.

Returns node to which this boundary belongs. If PATH is specified, compute only distance to the node to which PATH points. If STEPMAX is specified, compute distance only in case fSafety is smaller than this value. STEPMAX represent the step to be made imposed by other reasons than geometry (usually physics processes). Therefore in this case this method provides the answer to the question : "Is STEPMAX a safe step ?" returning a NULL node and filling fStep with a big number. In case frombdr=kTRUE, the isotropic safety is set to zero. Note : safety distance for the current point is computed ONLY in case STEPMAX is specified, otherwise users have to call explicitly TGeoManager::Safety() if they want this computed for the current point.

Definition at line 2571 of file TGeoManager.cxx.

Referenced by TGeoChecker::CheckBoundaryErrors(), TGeoChecker::CheckBoundaryReference(), TGeoChecker::LegoPlot(), and TGeoChecker::ShootRay().

TGeoNode * TGeoManager::FindNextBoundaryAndStep ( Double_t  stepmax = TGeoShape::Big(),
Bool_t  compsafe = kFALSE 
)

Compute distance to next boundary within STEPMAX.

If no boundary is found, propagate current point along current direction with fStep=STEPMAX. Otherwise propagate with fStep=SNEXT (distance to boundary) and locate/return the next node.

Definition at line 2553 of file TGeoManager.cxx.

Referenced by TGeoChecker::PropagateInGeom(), TGeoChecker::RandomRays(), and TGeoPainter::Raytrace().

TGeoNode * TGeoManager::FindNextDaughterBoundary ( Double_t point,
Double_t dir,
Int_t idaughter,
Bool_t  compmatrix = kFALSE 
)

Computes as fStep the distance to next daughter of the current volume.

The point and direction must be converted in the coordinate system of the current volume. The proposed step limit is fStep.

Definition at line 2582 of file TGeoManager.cxx.

Referenced by TGeoChecker::TimingPerVolume().

TGeoNode * TGeoManager::FindNode ( Bool_t  safe_start = kTRUE)
TGeoNode * TGeoManager::FindNode ( Double_t  x,
Double_t  y,
Double_t  z 
)

Returns deepest node containing current point.

Definition at line 2606 of file TGeoManager.cxx.

Double_t * TGeoManager::FindNormal ( Bool_t  forward = kTRUE)

Computes normal vector to the next surface that will be or was already crossed when propagating on a straight line from a given point/direction.

Returns the normal vector cosines in the MASTER coordinate system. The dot product of the normal and the current direction is positive defined.

Definition at line 2626 of file TGeoManager.cxx.

Referenced by TGeoChecker::CheckBoundaryErrors().

Double_t * TGeoManager::FindNormalFast ( )

Computes fast normal to next crossed boundary, assuming that the current point is close enough to the boundary.

Works only after calling FindNextBoundary.

Definition at line 2615 of file TGeoManager.cxx.

Referenced by TGeoChecker::RandomRays(), and TGeoPainter::Raytrace().

TVirtualGeoTrack * TGeoManager::FindTrackWithId ( Int_t  id) const

Search the track hierarchy to find the track with the given id.

if 'primsFirst' is true, then: first tries TGeoManager::GetTrackOfId, then does a recursive search if that fails. this would be faster if the track is somehow known to be a primary

Definition at line 2045 of file TGeoManager.cxx.

TGeoVolume * TGeoManager::FindVolumeFast ( const char *  name,
Bool_t  multi = kFALSE 
)

Fast search for a named volume. All trailing blanks stripped.

Definition at line 2752 of file TGeoManager.cxx.

Referenced by GetUID(), TGeoBuilder::Node(), and TransformVolumeToAssembly().

TGeoPNEntry * TGeoManager::GetAlignableEntry ( const char *  name) const

Retreives an existing alignable object.

Definition at line 3145 of file TGeoManager.cxx.

Referenced by MakeAlignablePN(), and SetAlignableEntry().

TGeoPNEntry * TGeoManager::GetAlignableEntry ( Int_t  index) const

Retreives an existing alignable object at a given index.

Definition at line 3154 of file TGeoManager.cxx.

TGeoPNEntry * TGeoManager::GetAlignableEntryByUID ( Int_t  uid) const

Retreives an existing alignable object having a preset UID.

Definition at line 3163 of file TGeoManager.cxx.

UChar_t* TGeoManager::GetBits ( )
inline

Definition at line 430 of file TGeoManager.h.

void TGeoManager::GetBombFactors ( Double_t bombx,
Double_t bomby,
Double_t bombz,
Double_t bombr 
) const

Retrieve cartesian and radial bomb factors.

Definition at line 1962 of file TGeoManager.cxx.

Referenced by SaveAttributes().

Int_t TGeoManager::GetBombMode ( ) const
inline

Definition at line 194 of file TGeoManager.h.

Referenced by SaveAttributes(), and TGeoShape::TransformPoints().

void TGeoManager::GetBranchNames ( Int_t names) const

Fill volume names of current branch into an array.

Definition at line 1906 of file TGeoManager.cxx.

void TGeoManager::GetBranchNumbers ( Int_t copyNumbers,
Int_t volumeNumbers 
) const

Fill node copy numbers of current branch into an array.

Definition at line 1946 of file TGeoManager.cxx.

void TGeoManager::GetBranchOnlys ( Int_t isonly) const

Fill node copy numbers of current branch into an array.

Definition at line 1954 of file TGeoManager.cxx.

Int_t TGeoManager::GetByteCount ( Option_t option = 0)
virtual

Get total size of geometry in bytes.

Definition at line 2701 of file TGeoManager.cxx.

TGeoNodeCache* TGeoManager::GetCache ( ) const
inline
const Double_t* TGeoManager::GetCldir ( ) const
inline

Definition at line 492 of file TGeoManager.h.

const Double_t* TGeoManager::GetCldirChecked ( ) const
inline

Definition at line 491 of file TGeoManager.h.

TGeoShape* TGeoManager::GetClippingShape ( ) const
inline

Definition at line 190 of file TGeoManager.h.

const Double_t* TGeoManager::GetCurrentDirection ( ) const
inline

Definition at line 489 of file TGeoManager.h.

TGeoHMatrix* TGeoManager::GetCurrentMatrix ( ) const
inline
TGeoNavigator * TGeoManager::GetCurrentNavigator ( ) const

Returns current navigator for the calling thread.

Definition at line 861 of file TGeoManager.cxx.

Referenced by cd(), CdDown(), CdNext(), CdNode(), CdTop(), CdUp(), TGeoChecker::CheckOverlapsBySampling(), CheckPath(), TGeoChecker::CheckVoxels(), CloseGeometry(), TGeoShapeAssembly::Contains(), CrossBoundaryAndLocate(), TGeoShapeAssembly::DistFromOutside(), DoBackupState(), DoRestoreState(), TGeoParallelWorld::FindNextBoundary(), FindNextBoundary(), FindNextBoundaryAndStep(), FindNextDaughterBoundary(), TGeoParallelWorld::FindNode(), FindNode(), FindNormal(), FindNormalFast(), GetBranchNames(), GetBranchNumbers(), GetBranchOnlys(), GetCache(), GetCldir(), GetCldirChecked(), GetCurrentDirection(), GetCurrentMatrix(), GetCurrentNode(), GetCurrentNodeId(), GetCurrentPoint(), GetCurrentVolume(), GetHMatrix(), GetLastPoint(), GetLastSafety(), GetLevel(), GetMother(), GetMotherMatrix(), GetNextNode(), GetNmany(), GetNodeId(), GetNormal(), GetPath(), GetSafeDistance(), GetSafeLevel(), GetStackLevel(), GetStep(), GetVirtualLevel(), GotoSafeLevel(), InitTrack(), InspectState(), IsCheckingOverlaps(), IsCurrentOverlapping(), IsEntering(), IsExiting(), IsInPhiRange(), IsNullStep(), IsOnBoundary(), IsOutside(), IsSameLocation(), IsSamePoint(), IsStartSafe(), IsStepEntering(), IsStepExiting(), LocalToMaster(), LocalToMasterBomb(), LocalToMasterVect(), MasterToLocal(), MasterToLocalBomb(), MasterToLocalVect(), MasterToTop(), PopDummy(), PopPath(), PopPoint(), TGeoNode::PrintCandidates(), PushPath(), PushPoint(), ResetState(), TGeoParallelWorld::Safety(), Safety(), SearchNode(), SetCheckingOverlaps(), SetCldirChecked(), SetCurrentDirection(), SetCurrentPoint(), SetLastPoint(), SetOutside(), SetStartSafe(), SetStep(), SetTopVolume(), Step(), and TopToMaster().

TGeoNode* TGeoManager::GetCurrentNode ( ) const
inline
Int_t TGeoManager::GetCurrentNodeId ( ) const

Get the unique ID of the current node.

Definition at line 1634 of file TGeoManager.cxx.

const Double_t* TGeoManager::GetCurrentPoint ( ) const
inline
TVirtualGeoTrack* TGeoManager::GetCurrentTrack ( )
inline

Definition at line 373 of file TGeoManager.h.

TGeoVolume* TGeoManager::GetCurrentVolume ( ) const
inline
TGeoElementTable * TGeoManager::GetElementTable ( )
TVirtualGeoPainter * TGeoManager::GetGeomPainter ( )
TGeoHMatrix* TGeoManager::GetGLMatrix ( ) const
inline

Definition at line 484 of file TGeoManager.h.

Referenced by TGeoShape::FillBuffer3D(), and TGeoShape::TransformPoints().

TGeoHMatrix * TGeoManager::GetHMatrix ( )

Return stored current matrix (global matrix of the next touched node).

Definition at line 2006 of file TGeoManager.cxx.

Referenced by TGeoVolume::FindMatrixOfDaughterVolume().

const Double_t* TGeoManager::GetLastPoint ( ) const
inline

Definition at line 375 of file TGeoManager.h.

Double_t TGeoManager::GetLastSafety ( ) const
inline

Definition at line 385 of file TGeoManager.h.

TVirtualGeoTrack* TGeoManager::GetLastTrack ( )
inline

Definition at line 374 of file TGeoManager.h.

Int_t TGeoManager::GetLevel ( ) const
inline
TObjArray* TGeoManager::GetListOfGShapes ( ) const
inline

Definition at line 468 of file TGeoManager.h.

Referenced by TGeoBuilder::AddShape(), and TGeoPhysicalNode::Align().

TObjArray* TGeoManager::GetListOfGVolumes ( ) const
inline

Definition at line 466 of file TGeoManager.h.

Referenced by TGeoBuilder::Division(), and TGeoBuilder::Volume().

TList* TGeoManager::GetListOfMaterials ( ) const
inline
TObjArray* TGeoManager::GetListOfMatrices ( ) const
inline
TList* TGeoManager::GetListOfMedia ( ) const
inline
TGeoNavigatorArray * TGeoManager::GetListOfNavigators ( ) const

Get list of navigators for the calling thread.

Definition at line 879 of file TGeoManager.cxx.

Referenced by CloseGeometry(), and SetTopVolume().

TObjArray* TGeoManager::GetListOfNodes ( )
inline

Definition at line 459 of file TGeoManager.h.

Referenced by TGeoNode::FindNode().

TObjArray* TGeoManager::GetListOfOverlaps ( )
inline
TObjArray* TGeoManager::GetListOfPhysicalNodes ( )
inline

Definition at line 460 of file TGeoManager.h.

Referenced by TGeoPainter::Paint(), and RefreshPhysicalNodes().

TObjArray* TGeoManager::GetListOfShapes ( ) const
inline
TObjArray* TGeoManager::GetListOfTracks ( ) const
inline

Definition at line 470 of file TGeoManager.h.

TObjArray* TGeoManager::GetListOfUVolumes ( ) const
inline

Definition at line 469 of file TGeoManager.h.

Referenced by TGeoChecker::CheckGeometryFull(), and TGeoMCGeometry::NofVolumes().

TObjArray* TGeoManager::GetListOfVolumes ( ) const
inline
TGeoVolume* TGeoManager::GetMasterVolume ( ) const
inline
TGeoMaterial * TGeoManager::GetMaterial ( const char *  matname) const

Search for a named material. All trailing blanks stripped.

Definition at line 2802 of file TGeoManager.cxx.

TGeoMaterial * TGeoManager::GetMaterial ( Int_t  id) const

Return material at position id.

Definition at line 2837 of file TGeoManager.cxx.

Int_t TGeoManager::GetMaterialIndex ( const char *  matname) const

Return index of named material.

Definition at line 2846 of file TGeoManager.cxx.

Int_t TGeoManager::GetMaxDaughters ( )
static

Return maximum number of daughters of a volume used in the geometry.

Definition at line 1974 of file TGeoManager.cxx.

Referenced by ClassImp(), and TGeoStateInfo::TGeoStateInfo().

Int_t TGeoManager::GetMaxLevel ( ) const
inline

Definition at line 495 of file TGeoManager.h.

Referenced by TGeoNavigator::BuildCache().

Int_t TGeoManager::GetMaxLevels ( )
static

Return maximum number of levels used in the geometry.

Definition at line 1982 of file TGeoManager.cxx.

Int_t TGeoManager::GetMaxThreads ( ) const
inline

Definition at line 436 of file TGeoManager.h.

Int_t TGeoManager::GetMaxVisNodes ( ) const
inline

Definition at line 196 of file TGeoManager.h.

Referenced by TGeoPainter::CountVisibleNodes().

Int_t TGeoManager::GetMaxXtruVert ( )
static

Return maximum number of vertices for an xtru shape used.

Definition at line 1990 of file TGeoManager.cxx.

Referenced by ClassImp(), and TGeoStateInfo::TGeoStateInfo().

TGeoMedium * TGeoManager::GetMedium ( const char *  medium) const

Search for a named tracking medium. All trailing blanks stripped.

Definition at line 2813 of file TGeoManager.cxx.

Referenced by TGeoVolume::Divide(), TGeoVolumeMulti::Divide(), TGeoMCGeometry::MediumId(), and TGeoBuilder::Volume().

TGeoMedium * TGeoManager::GetMedium ( Int_t  numed) const

Search for a tracking medium with a given ID.

Definition at line 2824 of file TGeoManager.cxx.

TGeoNode* TGeoManager::GetMother ( Int_t  up = 1) const
inline

Definition at line 480 of file TGeoManager.h.

Referenced by TGeoChecker::PropagateInGeom(), and TGeoPainter::Raytrace().

TGeoHMatrix* TGeoManager::GetMotherMatrix ( Int_t  up = 1) const
inline

Definition at line 481 of file TGeoManager.h.

Int_t TGeoManager::GetNAlignable ( Bool_t  with_uid = kFALSE) const

Retreives number of PN entries with or without UID.

Definition at line 3174 of file TGeoManager.cxx.

TGeoNode* TGeoManager::GetNextNode ( ) const
inline

Definition at line 479 of file TGeoManager.h.

Int_t TGeoManager::GetNmany ( ) const
inline

Definition at line 179 of file TGeoManager.h.

Int_t TGeoManager::GetNNodes ( )
inline

Definition at line 531 of file TGeoManager.h.

Referenced by TGeoNodeCache::BuildIdArray().

TGeoNode* TGeoManager::GetNode ( Int_t  level) const
inline

Definition at line 477 of file TGeoManager.h.

Int_t TGeoManager::GetNodeId ( ) const
inline

Definition at line 478 of file TGeoManager.h.

const Double_t* TGeoManager::GetNormal ( ) const
inline

Definition at line 493 of file TGeoManager.h.

Int_t TGeoManager::GetNsegments ( ) const

Get number of segments approximating circles.

Definition at line 3366 of file TGeoManager.cxx.

Referenced by TGeoEltu::DistancetoPrimitive(), TGeoParaboloid::DistancetoPrimitive(), TGeoCone::DistancetoPrimitive(), TGeoTube::DistancetoPrimitive(), TGeoTorus::DistancetoPrimitive(), TGeoPcon::DistancetoPrimitive(), TGeoTubeSeg::DistancetoPrimitive(), TGeoConeSeg::DistancetoPrimitive(), TGeoEltu::GetBuffer3D(), TGeoParaboloid::GetBuffer3D(), TGeoTube::GetBuffer3D(), TGeoSphere::GetBuffer3D(), TGeoTorus::GetBuffer3D(), TGeoCone::GetBuffer3D(), TGeoPcon::GetBuffer3D(), TGeoHype::GetBuffer3D(), TGeoTubeSeg::GetBuffer3D(), TGeoConeSeg::GetBuffer3D(), TGeoCtub::GetBuffer3D(), TGeoTube::GetMeshNumbers(), TGeoSphere::GetMeshNumbers(), TGeoParaboloid::GetMeshNumbers(), TGeoTorus::GetMeshNumbers(), TGeoCone::GetMeshNumbers(), TGeoHype::GetMeshNumbers(), TGeoPcon::GetMeshNumbers(), TGeoTubeSeg::GetMeshNumbers(), TGeoConeSeg::GetMeshNumbers(), TGeoTube::GetNmeshVertices(), TGeoParaboloid::GetNmeshVertices(), TGeoTorus::GetNmeshVertices(), TGeoCone::GetNmeshVertices(), TGeoPcon::GetNmeshVertices(), TGeoHype::GetNmeshVertices(), TGeoTubeSeg::GetNmeshVertices(), TGeoConeSeg::GetNmeshVertices(), TGeoCtub::GetNmeshVertices(), TGeoPcon::GetNsegments(), TGeoParaboloid::MakeBuffer3D(), TGeoTube::MakeBuffer3D(), TGeoTorus::MakeBuffer3D(), TGeoCone::MakeBuffer3D(), TGeoPcon::MakeBuffer3D(), TGeoHype::MakeBuffer3D(), TGeoTubeSeg::MakeBuffer3D(), TGeoConeSeg::MakeBuffer3D(), TGeoEltu::SetPoints(), TGeoParaboloid::SetPoints(), TGeoTube::SetPoints(), TGeoTorus::SetPoints(), TGeoCone::SetPoints(), TGeoPcon::SetPoints(), TGeoHype::SetPoints(), TGeoTubeSeg::SetPoints(), TGeoConeSeg::SetPoints(), TGeoCtub::SetPoints(), TGeoParaboloid::SetSegsAndPols(), TGeoTube::SetSegsAndPols(), TGeoTorus::SetSegsAndPols(), TGeoCone::SetSegsAndPols(), TGeoPcon::SetSegsAndPols(), TGeoHype::SetSegsAndPols(), TGeoTubeSeg::SetSegsAndPols(), TGeoConeSeg::SetSegsAndPols(), and TEveGeoManagerHolder::TEveGeoManagerHolder().

Int_t TGeoManager::GetNtracks ( ) const
inline

Definition at line 372 of file TGeoManager.h.

Int_t TGeoManager::GetNumThreads ( )
static

Returns number of threads that were set to use geometry.

Definition at line 1998 of file TGeoManager.cxx.

TVirtualGeoPainter* TGeoManager::GetPainter ( ) const
inline
TGeoVolume* TGeoManager::GetPaintVolume ( ) const
inline

Definition at line 199 of file TGeoManager.h.

Referenced by TGeoShape::FillBuffer3D(), and TGeoShape::GetBasicColor().

TGeoParallelWorld* TGeoManager::GetParallelWorld ( ) const
inline
TVirtualGeoTrack * TGeoManager::GetParentTrackOfId ( Int_t  id) const

Get parent track with a given ID.

Definition at line 2077 of file TGeoManager.cxx.

const char* TGeoManager::GetParticleName ( ) const
inline

Definition at line 241 of file TGeoManager.h.

Referenced by TGeoTrack::Paint(), and TGeoTrack::PaintCollect().

const char * TGeoManager::GetPath ( ) const
const char * TGeoManager::GetPdgName ( Int_t  pdg) const

Get name for given pdg code;.

Definition at line 1913 of file TGeoManager.cxx.

Referenced by TVirtualGeoTrack::GetName(), and SetPdgName().

TGeoPhysicalNode* TGeoManager::GetPhysicalNode ( Int_t  i) const
inline

Definition at line 501 of file TGeoManager.h.

Double_t TGeoManager::GetSafeDistance ( ) const
inline

Definition at line 384 of file TGeoManager.h.

Int_t TGeoManager::GetSafeLevel ( ) const

Go upwards the tree until a non-overlaping node.

Definition at line 2111 of file TGeoManager.cxx.

Int_t TGeoManager::GetStackLevel ( ) const
inline

Definition at line 497 of file TGeoManager.h.

Double_t TGeoManager::GetStep ( ) const
inline
Double_t TGeoManager::GetTmax ( ) const
inline

Definition at line 198 of file TGeoManager.h.

Bool_t TGeoManager::GetTminTmax ( Double_t tmin,
Double_t tmax 
) const

Get time cut for drawing tracks.

Definition at line 3937 of file TGeoManager.cxx.

Referenced by TVirtualGeoTrack::IsInTimeRange(), TGeoTrack::PaintTrack(), and TGeoTrack::Size().

TGeoNode* TGeoManager::GetTopNode ( ) const
inline
TGeoVolume* TGeoManager::GetTopVolume ( ) const
inline
TVirtualGeoTrack* TGeoManager::GetTrack ( Int_t  index)
inline

Definition at line 376 of file TGeoManager.h.

Referenced by DrawTracks().

Int_t TGeoManager::GetTrackIndex ( Int_t  id) const

Get index for track id, -1 if not found.

Definition at line 2089 of file TGeoManager.cxx.

TVirtualGeoTrack * TGeoManager::GetTrackOfId ( Int_t  id) const

Get track with a given ID.

Definition at line 2063 of file TGeoManager.cxx.

Referenced by FindTrackWithId().

Int_t TGeoManager::GetUID ( const char *  volname) const

Retreive unique id for a volume name. Return -1 if name not found.

Definition at line 2774 of file TGeoManager.cxx.

Referenced by AddVolume(), and TGeoMCGeometry::VolId().

Int_t TGeoManager::GetVerboseLevel ( )
static
Int_t TGeoManager::GetVirtualLevel ( )

Find level of virtuality of current overlapping node (number of levels up having the same tracking media.

Definition at line 2032 of file TGeoManager.cxx.

Double_t TGeoManager::GetVisDensity ( ) const
inline

Definition at line 200 of file TGeoManager.h.

Referenced by TGeoShape::FillBuffer3D().

Int_t TGeoManager::GetVisLevel ( ) const

Returns current depth to which geometry is drawn.

Definition at line 2015 of file TGeoManager.cxx.

Referenced by TGeoPainter::CountVisibleNodes(), TGeoVolumeEditor::DoVisAuto(), SaveAttributes(), and TGeoVolumeEditor::SetModel().

Int_t TGeoManager::GetVisOption ( ) const

Returns current depth to which geometry is drawn.

Definition at line 2023 of file TGeoManager.cxx.

Referenced by TGeoVolume::CountNodes(), and SaveAttributes().

TGeoVolume * TGeoManager::GetVolume ( const char *  name) const
TGeoVolume* TGeoManager::GetVolume ( Int_t  uid) const
inline

Definition at line 529 of file TGeoManager.h.

Bool_t TGeoManager::GotoSafeLevel ( )

Go upwards the tree until a non-overlaping node.

Definition at line 2103 of file TGeoManager.cxx.

TGeoManager * TGeoManager::Import ( const char *  filename,
const char *  name = "",
Option_t option = "" 
)
static

static function Import a geometry from a gdml or ROOT file

-Case 1: gdml if filename ends with ".gdml" the foreign geometry described with gdml is imported executing some python scripts in $ROOTSYS/gdml. NOTE that to use this option, the PYTHONPATH must be defined like export PYTHONPATH=$ROOTSYS/lib:$ROOTSYS/gdml

-Case 2: root file (.root) or root/xml file (.xml) Import in memory from filename the geometry with key=name. if name="" (default), the first TGeoManager object in the file is returned.

Note that this function deletes the current gGeoManager (if one) before importing the new object.

Definition at line 3817 of file TGeoManager.cxx.

Referenced by TEveManager::GetGeometry().

void TGeoManager::Init ( )
private

Initialize manager class.

Definition at line 436 of file TGeoManager.cxx.

Referenced by TGeoManager().

Bool_t TGeoManager::InitArrayPNE ( ) const
private

Initialize PNE array for fast access via index and unique-id.

Definition at line 3920 of file TGeoManager.cxx.

Referenced by GetAlignableEntry(), and GetAlignableEntryByUID().

TGeoNode * TGeoManager::InitTrack ( const Double_t point,
const Double_t dir 
)

Initialize current point and current direction vector (normalized) in MARS.

Return corresponding node.

Definition at line 2668 of file TGeoManager.cxx.

Referenced by TGeoChecker::LegoPlot(), TGeoChecker::PropagateInGeom(), TGeoChecker::RandomRays(), TGeoPainter::Raytrace(), and TGeoChecker::ShootRay().

TGeoNode * TGeoManager::InitTrack ( Double_t  x,
Double_t  y,
Double_t  z,
Double_t  nx,
Double_t  ny,
Double_t  nz 
)

Initialize current point and current direction vector (normalized) in MARS.

Return corresponding node.

Definition at line 2677 of file TGeoManager.cxx.

Bool_t TGeoManager::InsertPNEId ( Int_t  uid,
Int_t  ientry 
)
private

Insert a PN entry in the sorted array of indexes.

Definition at line 3184 of file TGeoManager.cxx.

Referenced by SetAlignableEntry().

void TGeoManager::InspectState ( ) const

Inspects path and all flags for the current state.

Definition at line 2685 of file TGeoManager.cxx.

Bool_t TGeoManager::IsActivityEnabled ( ) const
inline
Bool_t TGeoManager::IsAnimatingTracks ( ) const
inline

Definition at line 388 of file TGeoManager.h.

Referenced by TGeoTrack::Draw(), and SetTminTmax().

Bool_t TGeoManager::IsCheckingOverlaps ( ) const
inline

Definition at line 389 of file TGeoManager.h.

Referenced by TGeoVolume::CheckOverlaps().

Bool_t TGeoManager::IsCleaning ( ) const
inline

Definition at line 456 of file TGeoManager.h.

Referenced by TGeoMatrix::~TGeoMatrix(), and TGeoShape::~TGeoShape().

Bool_t TGeoManager::IsClosed ( ) const
inline
Bool_t TGeoManager::IsCurrentOverlapping ( ) const
inline

Definition at line 401 of file TGeoManager.h.

Bool_t TGeoManager::IsDrawingExtra ( ) const
inline

Definition at line 204 of file TGeoManager.h.

Referenced by TGeoPainter::Paint().

Bool_t TGeoManager::IsEntering ( ) const
inline

Definition at line 402 of file TGeoManager.h.

Referenced by TGeoChecker::LegoPlot(), and TGeoChecker::ShootRay().

Bool_t TGeoManager::IsExiting ( ) const
inline

Definition at line 403 of file TGeoManager.h.

Bool_t TGeoManager::IsFolder ( ) const
inlinevirtual

Returns kTRUE in case object contains browsable objects (like containers or lists of other objects).

Reimplemented from TObject.

Definition at line 182 of file TGeoManager.h.

Bool_t TGeoManager::IsInPhiRange ( ) const

True if current node is in phi range.

Definition at line 2650 of file TGeoManager.cxx.

Bool_t TGeoManager::IsLocked ( )
static

Check lock state.

Definition at line 3777 of file TGeoManager.cxx.

Referenced by TGeoPhysicalNode::Align(), and TEveManager::GetGeometry().

Bool_t TGeoManager::IsLoopingVolumes ( ) const
inlineprivate

Definition at line 140 of file TGeoManager.h.

Bool_t TGeoManager::IsMatrixReflection ( ) const
inline

Definition at line 391 of file TGeoManager.h.

Referenced by TGeoShape::FillBuffer3D().

Bool_t TGeoManager::IsMatrixTransform ( ) const
inline

Definition at line 390 of file TGeoManager.h.

Referenced by TGeoShape::FillBuffer3D(), and TGeoShape::TransformPoints().

Bool_t TGeoManager::IsMultiThread ( ) const
inline

Definition at line 439 of file TGeoManager.h.

Referenced by ClearThreadsMap(), and ThreadId().

Bool_t TGeoManager::IsNodeSelectable ( ) const
inline

Definition at line 205 of file TGeoManager.h.

Referenced by TGeoPainter::DistanceToPrimitiveVol().

Bool_t TGeoManager::IsNullStep ( ) const
inline

Definition at line 408 of file TGeoManager.h.

Bool_t TGeoManager::IsOnBoundary ( ) const
inline

Definition at line 407 of file TGeoManager.h.

Bool_t TGeoManager::IsOutside ( ) const
inline
Bool_t TGeoManager::IsParallelWorldNav ( ) const
inline
Bool_t TGeoManager::IsSameLocation ( Double_t  x,
Double_t  y,
Double_t  z,
Bool_t  change = kFALSE 
)

Checks if point (x,y,z) is still in the current node.

Definition at line 2634 of file TGeoManager.cxx.

Referenced by TGeoChecker::CheckBoundaryErrors(), and TGeoChecker::CheckBoundaryReference().

Bool_t TGeoManager::IsSameLocation ( ) const
inline

Definition at line 393 of file TGeoManager.h.

Bool_t TGeoManager::IsSamePoint ( Double_t  x,
Double_t  y,
Double_t  z 
) const

Check if a new point with given coordinates is the same as the last located one.

Definition at line 2642 of file TGeoManager.cxx.

Bool_t TGeoManager::IsStartSafe ( ) const
inline

Definition at line 395 of file TGeoManager.h.

Bool_t TGeoManager::IsStepEntering ( ) const
inline

Definition at line 404 of file TGeoManager.h.

Bool_t TGeoManager::IsStepExiting ( ) const
inline

Definition at line 405 of file TGeoManager.h.

Bool_t TGeoManager::IsStreamingVoxels ( ) const
inline

Definition at line 455 of file TGeoManager.h.

Bool_t TGeoManager::IsVisLeaves ( ) const
inline

Definition at line 206 of file TGeoManager.h.

void TGeoManager::LocalToMaster ( const Double_t local,
Double_t master 
) const
inline
void TGeoManager::LocalToMasterBomb ( const Double_t local,
Double_t master 
) const
inline

Definition at line 512 of file TGeoManager.h.

Referenced by TGeoShape::TransformPoints().

void TGeoManager::LocalToMasterVect ( const Double_t local,
Double_t master 
) const
inline

Definition at line 511 of file TGeoManager.h.

void TGeoManager::LockGeometry ( )
static

Lock current geometry so that no other geometry can be imported.

Definition at line 3761 of file TGeoManager.cxx.

Referenced by TEveManager::GetGeometry(), and RefreshPhysicalNodes().

TGeoPhysicalNode * TGeoManager::MakeAlignablePN ( const char *  name)

Make a physical node from the path pointed by an alignable object with a given name.

Definition at line 3241 of file TGeoManager.cxx.

TGeoPhysicalNode * TGeoManager::MakeAlignablePN ( TGeoPNEntry entry)

Make a physical node from the path pointed by a given alignable object.

Definition at line 3254 of file TGeoManager.cxx.

TGeoVolume * TGeoManager::MakeArb8 ( const char *  name,
TGeoMedium medium,
Double_t  dz,
Double_t vertices = 0 
)

Make an TGeoArb8 volume.

Definition at line 2926 of file TGeoManager.cxx.

TGeoVolume * TGeoManager::MakeBox ( const char *  name,
TGeoMedium medium,
Double_t  dx,
Double_t  dy,
Double_t  dz 
)

Make in one step a volume pointing to a box shape with given medium.

Definition at line 2935 of file TGeoManager.cxx.

Referenced by TStructViewerGUI::DrawNode(), and TStructViewerGUI::TStructViewerGUI().

TGeoVolume * TGeoManager::MakeCone ( const char *  name,
TGeoMedium medium,
Double_t  dz,
Double_t  rmin1,
Double_t  rmax1,
Double_t  rmin2,
Double_t  rmax2 
)

Make in one step a volume pointing to a cone shape with given medium.

Definition at line 3030 of file TGeoManager.cxx.

TGeoVolume * TGeoManager::MakeCons ( const char *  name,
TGeoMedium medium,
Double_t  dz,
Double_t  rmin1,
Double_t  rmax1,
Double_t  rmin2,
Double_t  rmax2,
Double_t  phi1,
Double_t  phi2 
)

Make in one step a volume pointing to a cone segment shape with given medium.

Definition at line 3040 of file TGeoManager.cxx.

TGeoVolume * TGeoManager::MakeCtub ( const char *  name,
TGeoMedium medium,
Double_t  rmin,
Double_t  rmax,
Double_t  dz,
Double_t  phi1,
Double_t  phi2,
Double_t  lx,
Double_t  ly,
Double_t  lz,
Double_t  tx,
Double_t  ty,
Double_t  tz 
)

Make in one step a volume pointing to a tube segment shape with given medium.

Definition at line 3020 of file TGeoManager.cxx.

TGeoVolume * TGeoManager::MakeEltu ( const char *  name,
TGeoMedium medium,
Double_t  a,
Double_t  b,
Double_t  dz 
)

Make in one step a volume pointing to a tube shape with given medium.

Definition at line 2993 of file TGeoManager.cxx.

TGeoVolume * TGeoManager::MakeGtra ( const char *  name,
TGeoMedium medium,
Double_t  dz,
Double_t  theta,
Double_t  phi,
Double_t  twist,
Double_t  h1,
Double_t  bl1,
Double_t  tl1,
Double_t  alpha1,
Double_t  h2,
Double_t  bl2,
Double_t  tl2,
Double_t  alpha2 
)

Make in one step a volume pointing to a twisted trapezoid shape with given medium.

Definition at line 3099 of file TGeoManager.cxx.

TGeoVolume * TGeoManager::MakeHype ( const char *  name,
TGeoMedium medium,
Double_t  rin,
Double_t  stin,
Double_t  rout,
Double_t  stout,
Double_t  dz 
)

Make in one step a volume pointing to a tube shape with given medium.

Definition at line 3002 of file TGeoManager.cxx.

TGeoVolume * TGeoManager::MakePara ( const char *  name,
TGeoMedium medium,
Double_t  dx,
Double_t  dy,
Double_t  dz,
Double_t  alpha,
Double_t  theta,
Double_t  phi 
)

Make in one step a volume pointing to a paralelipiped shape with given medium.

Definition at line 2944 of file TGeoManager.cxx.

TGeoVolume * TGeoManager::MakeParaboloid ( const char *  name,
TGeoMedium medium,
Double_t  rlo,
Double_t  rhi,
Double_t  dz 
)

Make in one step a volume pointing to a tube shape with given medium.

Definition at line 3011 of file TGeoManager.cxx.

TGeoVolume * TGeoManager::MakePcon ( const char *  name,
TGeoMedium medium,
Double_t  phi,
Double_t  dphi,
Int_t  nz 
)

Make in one step a volume pointing to a polycone shape with given medium.

Definition at line 3051 of file TGeoManager.cxx.

TGeoVolume * TGeoManager::MakePgon ( const char *  name,
TGeoMedium medium,
Double_t  phi,
Double_t  dphi,
Int_t  nedges,
Int_t  nz 
)

Make in one step a volume pointing to a polygone shape with given medium.

Definition at line 3060 of file TGeoManager.cxx.

TGeoPhysicalNode * TGeoManager::MakePhysicalNode ( const char *  path = 0)

Makes a physical node corresponding to a path.

If PATH is not specified, makes physical node matching current modeller state.

Definition at line 3275 of file TGeoManager.cxx.

Referenced by MakeAlignablePN().

TGeoVolume * TGeoManager::MakeSphere ( const char *  name,
TGeoMedium medium,
Double_t  rmin,
Double_t  rmax,
Double_t  themin = 0,
Double_t  themax = 180,
Double_t  phimin = 0,
Double_t  phimax = 360 
)

Make in one step a volume pointing to a sphere shape with given medium.

Definition at line 2954 of file TGeoManager.cxx.

Referenced by TGeoChecker::CheckPoint().

TGeoVolume * TGeoManager::MakeTorus ( const char *  name,
TGeoMedium medium,
Double_t  r,
Double_t  rmin,
Double_t  rmax,
Double_t  phi1 = 0,
Double_t  dphi = 360 
)

Make in one step a volume pointing to a torus shape with given medium.

Definition at line 2964 of file TGeoManager.cxx.

TVirtualGeoTrack * TGeoManager::MakeTrack ( Int_t  id,
Int_t  pdgcode,
TObject particle 
)

Makes a primary track but do not attach it to the list of tracks.

The track can be attached as daughter to another one with TVirtualGeoTrack::AddTrack

Definition at line 783 of file TGeoManager.cxx.

TGeoVolume * TGeoManager::MakeTrap ( const char *  name,
TGeoMedium medium,
Double_t  dz,
Double_t  theta,
Double_t  phi,
Double_t  h1,
Double_t  bl1,
Double_t  tl1,
Double_t  alpha1,
Double_t  h2,
Double_t  bl2,
Double_t  tl2,
Double_t  alpha2 
)

Make in one step a volume pointing to a trapezoid shape with given medium.

Definition at line 3088 of file TGeoManager.cxx.

TGeoVolume * TGeoManager::MakeTrd1 ( const char *  name,
TGeoMedium medium,
Double_t  dx1,
Double_t  dx2,
Double_t  dy,
Double_t  dz 
)

Make in one step a volume pointing to a TGeoTrd1 shape with given medium.

Definition at line 3069 of file TGeoManager.cxx.

TGeoVolume * TGeoManager::MakeTrd2 ( const char *  name,
TGeoMedium medium,
Double_t  dx1,
Double_t  dx2,
Double_t  dy1,
Double_t  dy2,
Double_t  dz 
)

Make in one step a volume pointing to a TGeoTrd2 shape with given medium.

Definition at line 3078 of file TGeoManager.cxx.

TGeoVolume * TGeoManager::MakeTube ( const char *  name,
TGeoMedium medium,
Double_t  rmin,
Double_t  rmax,
Double_t  dz 
)

Make in one step a volume pointing to a tube shape with given medium.

Definition at line 2973 of file TGeoManager.cxx.

TGeoVolume * TGeoManager::MakeTubs ( const char *  name,
TGeoMedium medium,
Double_t  rmin,
Double_t  rmax,
Double_t  dz,
Double_t  phiStart,
Double_t  phiEnd 
)

Make in one step a volume pointing to a tube segment shape with given medium.

The segment will be from phiStart to phiEnd, the angles are expressed in degree

Definition at line 2983 of file TGeoManager.cxx.

TGeoVolumeAssembly * TGeoManager::MakeVolumeAssembly ( const char *  name)

Make an assembly of volumes.

Definition at line 3317 of file TGeoManager.cxx.

TGeoVolumeMulti * TGeoManager::MakeVolumeMulti ( const char *  name,
TGeoMedium medium 
)
TGeoVolume * TGeoManager::MakeXtru ( const char *  name,
TGeoMedium medium,
Int_t  nz 
)

Make a TGeoXtru-shaped volume with nz planes.

Definition at line 3110 of file TGeoManager.cxx.

void TGeoManager::MasterToLocal ( const Double_t master,
Double_t local 
) const
inline
void TGeoManager::MasterToLocalBomb ( const Double_t master,
Double_t local 
) const
inline

Definition at line 515 of file TGeoManager.h.

void TGeoManager::MasterToLocalVect ( const Double_t master,
Double_t local 
) const
inline

Definition at line 514 of file TGeoManager.h.

void TGeoManager::MasterToTop ( const Double_t master,
Double_t top 
) const

Convert coordinates from master volume frame to top.

Definition at line 3960 of file TGeoManager.cxx.

Referenced by TGeoTrack::PaintCollectTrack(), and TGeoTrack::PaintTrack().

TGeoMaterial * TGeoManager::Material ( const char *  name,
Double_t  a,
Double_t  z,
Double_t  dens,
Int_t  uid,
Double_t  radlen = 0,
Double_t  intlen = 0 
)

Create material with given A, Z and density, having an unique id.

Definition at line 1286 of file TGeoManager.cxx.

Referenced by TGeoMCGeometry::Material().

void TGeoManager::Matrix ( Int_t  index,
Double_t  theta1,
Double_t  phi1,
Double_t  theta2,
Double_t  phi2,
Double_t  theta3,
Double_t  phi3 
)

Create rotation matrix named 'mat<index>'.

index rotation matrix number theta1 polar angle for axis X phi1 azimuthal angle for axis X theta2 polar angle for axis Y phi2 azimuthal angle for axis Y theta3 polar angle for axis Z phi3 azimuthal angle for axis Z

Definition at line 1276 of file TGeoManager.cxx.

Referenced by TGeoMCGeometry::Matrix().

TGeoMedium * TGeoManager::Medium ( const char *  name,
Int_t  numed,
Int_t  nmat,
Int_t  isvol,
Int_t  ifield,
Double_t  fieldm,
Double_t  tmaxfd,
Double_t  stemax,
Double_t  deemax,
Double_t  epsil,
Double_t  stmin 
)

Create tracking medium.

numed tracking medium number assigned name tracking medium name nmat material number isvol sensitive volume flag ifield magnetic field fieldm max. field value (kilogauss) tmaxfd max. angle due to field (deg/step) stemax max. step allowed deemax max. fraction of energy lost in a step epsil tracking precision (cm) stmin min. step due to continuous processes (cm)

ifield = 0 if no magnetic field; ifield = -1 if user decision in guswim; ifield = 1 if tracking performed with g3rkuta; ifield = 2 if tracking performed with g3helix; ifield = 3 if tracking performed with g3helx3.

Definition at line 1332 of file TGeoManager.cxx.

Referenced by TGeoMCGeometry::Medium().

TGeoMaterial * TGeoManager::Mixture ( const char *  name,
Float_t a,
Float_t z,
Double_t  dens,
Int_t  nelem,
Float_t wmat,
Int_t  uid 
)

Create mixture OR COMPOUND IMAT as composed by THE BASIC nelem materials defined by arrays A,Z and WMAT, having an unique id.

Definition at line 1296 of file TGeoManager.cxx.

Referenced by TGeoMCGeometry::Mixture().

TGeoMaterial * TGeoManager::Mixture ( const char *  name,
Double_t a,
Double_t z,
Double_t  dens,
Int_t  nelem,
Double_t wmat,
Int_t  uid 
)

Create mixture OR COMPOUND IMAT as composed by THE BASIC nelem materials defined by arrays A,Z and WMAT, having an unique id.

Definition at line 1306 of file TGeoManager.cxx.

void TGeoManager::ModifiedPad ( ) const

Send "Modified" signal to painter.

Definition at line 2918 of file TGeoManager.cxx.

Referenced by AnimateTracks(), DrawTracks(), SetTminTmax(), TGeoNode::SetVisibility(), and TGeoNode::VisibleDaughters().

void TGeoManager::Node ( const char *  name,
Int_t  nr,
const char *  mother,
Double_t  x,
Double_t  y,
Double_t  z,
Int_t  irot,
Bool_t  isOnly,
Float_t upar,
Int_t  npar = 0 
)

Create a node called <name_nr> pointing to the volume called <name> as daughter of the volume called <mother> (gspos).

The relative matrix is made of : a translation (x,y,z) and a rotation matrix named <matIROT>. In case npar>0, create the volume to be positioned in mother, according its actual parameters (gsposp). NAME Volume name NUMBER Copy number of the volume MOTHER Mother volume name X X coord. of the volume in mother ref. sys. Y Y coord. of the volume in mother ref. sys. Z Z coord. of the volume in mother ref. sys. IROT Rotation matrix number w.r.t. mother ref. sys. ISONLY ONLY/MANY flag

Definition at line 1355 of file TGeoManager.cxx.

Referenced by TGeoMCGeometry::Gspos(), and TGeoMCGeometry::Gsposp().

void TGeoManager::Node ( const char *  name,
Int_t  nr,
const char *  mother,
Double_t  x,
Double_t  y,
Double_t  z,
Int_t  irot,
Bool_t  isOnly,
Double_t upar,
Int_t  npar = 0 
)

Create a node called <name_nr> pointing to the volume called <name> as daughter of the volume called <mother> (gspos).

The relative matrix is made of : a translation (x,y,z) and a rotation matrix named <matIROT>. In case npar>0, create the volume to be positioned in mother, according its actual parameters (gsposp). NAME Volume name NUMBER Copy number of the volume MOTHER Mother volume name X X coord. of the volume in mother ref. sys. Y Y coord. of the volume in mother ref. sys. Z Z coord. of the volume in mother ref. sys. IROT Rotation matrix number w.r.t. mother ref. sys. ISONLY ONLY/MANY flag

Definition at line 1377 of file TGeoManager.cxx.

TGeoManager & TGeoManager::operator= ( const TGeoManager gm)
protected

assignment operator

Definition at line 594 of file TGeoManager.cxx.

void TGeoManager::OptimizeVoxels ( const char *  filename = "tgeovox.C")

Optimize voxelization type for all volumes. Save best choice in a macro.

Definition at line 2311 of file TGeoManager.cxx.

Int_t TGeoManager::Parse ( const char *  expr,
TString expr1,
TString expr2,
TString expr3 
)
static

Parse a string boolean expression and do a syntax check.

Find top level boolean operator and returns its type. Fill the two substrings to which this operator applies. The returned integer is : -1 : parse error 0 : no boolean operator 1 : union - represented as '+' in expression 2 : difference (subtraction) - represented as '-' in expression 3 : intersection - represented as '*' in expression. Paranthesys should be used to avoid ambiguites. For instance : A+B-C will be interpreted as (A+B)-C which is not the same as A+(B-C) eliminate not needed paranthesys

Definition at line 2365 of file TGeoManager.cxx.

Referenced by TGeoBoolNode::MakeBranch(), and TGeoCompositeShape::MakeNode().

void TGeoManager::PopDummy ( Int_t  ipop = 9999)
inline

Definition at line 545 of file TGeoManager.h.

Bool_t TGeoManager::PopPath ( )
inline
Bool_t TGeoManager::PopPath ( Int_t  index)
inline

Definition at line 541 of file TGeoManager.h.

Bool_t TGeoManager::PopPoint ( )
inline

Definition at line 543 of file TGeoManager.h.

Bool_t TGeoManager::PopPoint ( Int_t  index)
inline

Definition at line 544 of file TGeoManager.h.

void TGeoManager::PrintOverlaps ( ) const

Prints the current list of overlaps.

Definition at line 3626 of file TGeoManager.cxx.

Int_t TGeoManager::PushPath ( Int_t  startlevel = 0)
inline
Int_t TGeoManager::PushPoint ( Int_t  startlevel = 0)
inline

Definition at line 542 of file TGeoManager.h.

void TGeoManager::RandomPoints ( const TGeoVolume vol,
Int_t  npoints = 10000,
Option_t option = "" 
)

Draw random points in the bounding box of a volume.

Definition at line 1885 of file TGeoManager.cxx.

Referenced by TGeoVolume::RandomPoints().

void TGeoManager::RandomRays ( Int_t  nrays = 1000,
Double_t  startx = 0,
Double_t  starty = 0,
Double_t  startz = 0,
const char *  target_vol = 0,
Bool_t  check_norm = kFALSE 
)

Randomly shoot nrays and plot intersections with surfaces for current top node.

Definition at line 2864 of file TGeoManager.cxx.

Referenced by TGeoVolume::RandomRays().

void TGeoManager::RefreshPhysicalNodes ( Bool_t  lock = kTRUE)

Refresh physical nodes to reflect the actual geometry paths after alignment was applied.

Optionally locks physical nodes (default).

Definition at line 3295 of file TGeoManager.cxx.

void TGeoManager::RegisterMatrix ( const TGeoMatrix matrix)

Register a matrix to the list of matrices.

It will be cleaned-up at the destruction TGeoManager.

Definition at line 1128 of file TGeoManager.cxx.

Referenced by TGeoMatrix::RegisterYourself().

void TGeoManager::RemoveMaterial ( Int_t  index)

Remove material at given index.

Definition at line 2872 of file TGeoManager.cxx.

void TGeoManager::RemoveNavigator ( const TGeoNavigator nav)

Clear a single navigator.

Definition at line 936 of file TGeoManager.cxx.

Int_t TGeoManager::ReplaceVolume ( TGeoVolume vorig,
TGeoVolume vnew 
)

Replaces all occurences of VORIG with VNEW in the geometry tree.

The volume VORIG is not replaced from the list of volumes, but all node referencing it will reference VNEW instead. Returns number of occurences changed.

Definition at line 1138 of file TGeoManager.cxx.

Referenced by TransformVolumeToAssembly().

void TGeoManager::ResetState ( )

Reset current state flags.

Definition at line 2590 of file TGeoManager.cxx.

Referenced by TGeoChecker::TimingPerVolume().

void TGeoManager::ResetUserData ( )

Sets all pointers TGeoVolume::fField to NULL.

User data becomes decoupled from geometry. Deletion has to be managed by users.

Definition at line 2882 of file TGeoManager.cxx.

void TGeoManager::RestoreMasterVolume ( )

Restore the master volume of the geometry.

Definition at line 2892 of file TGeoManager.cxx.

Referenced by TGeoChecker::TestOverlaps().

Double_t TGeoManager::Safety ( Bool_t  inside = kFALSE)

Compute safe distance from the current point.

This represent the distance from POINT to the closest boundary.

Definition at line 2157 of file TGeoManager.cxx.

Referenced by TGeoChecker::CheckPoint(), and TGeoChecker::TimingPerVolume().

TGeoNode * TGeoManager::SamplePoints ( Int_t  npoints,
Double_t dist,
Double_t  epsil = 1E-5,
const char *  g3path = "" 
)

shoot npoints randomly in a box of 1E-5 arround current point.

return minimum distance to points outside

Definition at line 3405 of file TGeoManager.cxx.

void TGeoManager::SaveAttributes ( const char *  filename = "tgeoatt.C")

Save current attributes in a macro.

Definition at line 2478 of file TGeoManager.cxx.

TGeoNode * TGeoManager::SearchNode ( Bool_t  downwards = kFALSE,
const TGeoNode skipnode = 0 
)

Returns the deepest node containing fPoint, which must be set a priori.

Definition at line 2533 of file TGeoManager.cxx.

void TGeoManager::SelectTrackingMedia ( )

Define different tracking media.

printf("List of materials :\n");

Definition at line 3462 of file TGeoManager.cxx.

Referenced by CloseGeometry().

TGeoPNEntry * TGeoManager::SetAlignableEntry ( const char *  unique_name,
const char *  path,
Int_t  uid = -1 
)

Creates an aligneable object with unique name corresponding to a path and adds it to the list of alignables.

An optional unique ID can be provided, in which case PN entries can be searched fast by uid.

Definition at line 3120 of file TGeoManager.cxx.

void TGeoManager::SetAllIndex ( )

Assigns uid's for all materials,media and matrices.

Definition at line 1416 of file TGeoManager.cxx.

Referenced by TGeoVolume::SavePrimitive().

void TGeoManager::SetAnimateTracks ( Bool_t  flag = kTRUE)
inline

Definition at line 534 of file TGeoManager.h.

Referenced by TGeoTrack::AnimateTrack(), AnimateTracks(), and DrawTracks().

void TGeoManager::SetBombFactors ( Double_t  bombx = 1.3,
Double_t  bomby = 1.3,
Double_t  bombz = 1.3,
Double_t  bombr = 1.3 
)

Set factors that will "bomb" all translations in cartesian and cylindrical coordinates.

Definition at line 2200 of file TGeoManager.cxx.

Referenced by ClearAttributes().

void TGeoManager::SetCheckedNode ( TGeoNode node)

Assign a given node to be checked for ovelaps. Any other overlaps will be ignored.

Definition at line 2242 of file TGeoManager.cxx.

Referenced by TGeoPhysicalNode::Align().

void TGeoManager::SetCheckingOverlaps ( Bool_t  flag = kTRUE)
inline

Definition at line 396 of file TGeoManager.h.

Referenced by TGeoNode::CheckOverlaps().

void TGeoManager::SetCldirChecked ( Double_t dir)
inline

Definition at line 507 of file TGeoManager.h.

void TGeoManager::SetClipping ( Bool_t  flag = kTRUE)
inline

Definition at line 209 of file TGeoManager.h.

void TGeoManager::SetClippingShape ( TGeoShape clip)

Set a user-defined shape as clipping for ray tracing.

Definition at line 2208 of file TGeoManager.cxx.

Referenced by SetClipping().

void TGeoManager::SetCurrentDirection ( Double_t dir)
inline
void TGeoManager::SetCurrentDirection ( Double_t  nx,
Double_t  ny,
Double_t  nz 
)
inline

Definition at line 506 of file TGeoManager.h.

Bool_t TGeoManager::SetCurrentNavigator ( Int_t  index)

Switch to another existing navigator for the calling thread.

Definition at line 891 of file TGeoManager.cxx.

void TGeoManager::SetCurrentPoint ( Double_t point)
inline
void TGeoManager::SetCurrentPoint ( Double_t  x,
Double_t  y,
Double_t  z 
)
inline

Definition at line 503 of file TGeoManager.h.

void TGeoManager::SetCurrentTrack ( Int_t  i)
inline

Definition at line 370 of file TGeoManager.h.

void TGeoManager::SetCurrentTrack ( TVirtualGeoTrack track)
inline

Definition at line 371 of file TGeoManager.h.

void TGeoManager::SetDrawExtraPaths ( Bool_t  flag = kTRUE)
inline

Definition at line 219 of file TGeoManager.h.

void TGeoManager::SetExplodedView ( Int_t  iopt = 0)

Set type of exploding view (see TGeoPainter::SetExplodedView())

Definition at line 3333 of file TGeoManager.cxx.

Referenced by ClearAttributes().

void TGeoManager::SetLastPoint ( Double_t  x,
Double_t  y,
Double_t  z 
)
inline

Definition at line 504 of file TGeoManager.h.

void TGeoManager::SetLoopVolumes ( Bool_t  flag = kTRUE)
inlineprivate

Definition at line 144 of file TGeoManager.h.

void TGeoManager::SetMatrixReflection ( Bool_t  flag = kTRUE)
inline
void TGeoManager::SetMatrixTransform ( Bool_t  on = kTRUE)
inline

Definition at line 398 of file TGeoManager.h.

void TGeoManager::SetMaxThreads ( Int_t  nthreads)

Set maximum number of threads for navigation.

Definition at line 958 of file TGeoManager.cxx.

void TGeoManager::SetMaxVisNodes ( Int_t  maxnodes = 10000)

set the maximum number of visible nodes.

Definition at line 2221 of file TGeoManager.cxx.

Referenced by TEveGeoTopNode::Paint(), and SetVisLevel().

void TGeoManager::SetMultiThread ( Bool_t  flag = kTRUE)
inline

Definition at line 438 of file TGeoManager.h.

void TGeoManager::SetNavigatorsLock ( Bool_t  flag)
static

Set the lock for navigators.

Definition at line 912 of file TGeoManager.cxx.

void TGeoManager::SetNmeshPoints ( Int_t  npoints = 1000)

Set the number of points to be generated on the shape outline when checking for overlaps.

Definition at line 2249 of file TGeoManager.cxx.

void TGeoManager::SetNodeSelectable ( Bool_t  flag = kTRUE)
inline

Definition at line 220 of file TGeoManager.h.

void TGeoManager::SetNsegments ( Int_t  nseg)

Set number of segments for approximating circles in drawing.

Definition at line 3356 of file TGeoManager.cxx.

Referenced by TGeoVolume::CheckOverlaps(), TEveGeoManagerHolder::TEveGeoManagerHolder(), TStructViewerGUI::TStructViewerGUI(), and TEveGeoManagerHolder::~TEveGeoManagerHolder().

void TGeoManager::SetOutside ( Bool_t  flag = kTRUE)
inline

Definition at line 410 of file TGeoManager.h.

Referenced by TGeoPainter::Raytrace().

void TGeoManager::SetPaintVolume ( TGeoVolume vol)
inline
void TGeoManager::SetParticleName ( const char *  pname)
inline

Definition at line 240 of file TGeoManager.h.

Referenced by TGeoTrack::Draw().

void TGeoManager::SetPdgName ( Int_t  pdg,
const char *  name 
)

Set a name for a particle having a given pdg.

Definition at line 1926 of file TGeoManager.cxx.

Referenced by TVirtualGeoTrack::SetName().

void TGeoManager::SetPhiRange ( Double_t  phimin = 0.,
Double_t  phimax = 360. 
)

Set cut phi range.

Definition at line 3342 of file TGeoManager.cxx.

void TGeoManager::SetStartSafe ( Bool_t  flag = kTRUE)
inline

Definition at line 397 of file TGeoManager.h.

void TGeoManager::SetStep ( Double_t  step)
inline
void TGeoManager::SetTminTmax ( Double_t  tmin = 0,
Double_t  tmax = 999 
)

Set time cut interval for drawing tracks.

If called with no arguments, time cut will be disabled.

Definition at line 3948 of file TGeoManager.cxx.

Referenced by TGeoTrack::AnimateTrack(), and AnimateTracks().

void TGeoManager::SetTopVisible ( Bool_t  vis = kTRUE)

make top volume visible on screen

Definition at line 2234 of file TGeoManager.cxx.

Referenced by TGeoChecker::CheckPoint(), TGeoVolumeEditor::DoAddNode(), TGeoVolumeEditor::DoApplyDiv(), and TEveGeoTopNode::Paint().

void TGeoManager::SetTopVolume ( TGeoVolume vol)
void TGeoManager::SetUseParallelWorldNav ( Bool_t  flag)

Activate/deactivate usage of parallel world navigation.

Can only be done if there is a parallel world. Activating navigation will automatically close the parallel geometry.

Definition at line 3991 of file TGeoManager.cxx.

void TGeoManager::SetVerboseLevel ( Int_t  vl)
static

Return current verbosity level (static function).

Definition at line 3795 of file TGeoManager.cxx.

Referenced by TGeoChecker::CheckBoundaryReference().

void TGeoManager::SetVisDensity ( Double_t  density = 0.01)

Set density threshold.

Volumes with densities lower than this become transparent.

Definition at line 2279 of file TGeoManager.cxx.

void TGeoManager::SetVisibility ( TObject obj,
Bool_t  vis 
)

Set visibility for a volume.

Definition at line 1076 of file TGeoManager.cxx.

void TGeoManager::SetVisLevel ( Int_t  level = 3)
void TGeoManager::SetVisOption ( Int_t  option = 0)

set drawing mode : option=0 (default) all nodes drawn down to vislevel option=1 leaves and nodes at vislevel drawn option=2 path is drawn option=4 visibility changed

Definition at line 2261 of file TGeoManager.cxx.

Referenced by ClearAttributes(), TGeoVolume::InvisibleAll(), TGeoVolume::SetVisContainers(), TGeoVolume::SetVisibility(), TGeoVolume::SetVisLeaves(), TGeoVolume::SetVisOnly(), ViewLeaves(), and TGeoVolume::VisibleDaughters().

void TGeoManager::SetVolumeAttribute ( const char *  name,
const char *  att,
Int_t  val 
)

Set volume attributes in G3 style.

Definition at line 2165 of file TGeoManager.cxx.

ULong_t TGeoManager::SizeOf ( const TGeoNode node,
Option_t option 
)
virtual

computes the total size in bytes of the branch starting with node.

The option can specify if all the branch has to be parsed or only the node

Definition at line 3667 of file TGeoManager.cxx.

void TGeoManager::SortOverlaps ( )

Sort overlaps by decreasing overlap distance. Extrusions comes first.

Definition at line 2303 of file TGeoManager.cxx.

Referenced by TGeoNode::CheckOverlaps(), and TGeoVolume::CheckOverlaps().

TGeoNode * TGeoManager::Step ( Bool_t  is_geom = kTRUE,
Bool_t  cross = kTRUE 
)

Make a rectiliniar step of length fStep from current point (fPoint) on current direction (fDirection).

If the step is imposed by geometry, is_geom flag must be true (default). The cross flag specifies if the boundary should be crossed in case of a geometry step (default true). Returns new node after step. Set also on boundary condition.

Definition at line 3396 of file TGeoManager.cxx.

Referenced by TGeoChecker::LegoPlot(), TGeoPainter::Raytrace(), and TGeoChecker::ShootRay().

void TGeoManager::Test ( Int_t  npoints = 1000000,
Option_t option = "" 
)

Check time of finding "Where am I" for n points.

Definition at line 1892 of file TGeoManager.cxx.

void TGeoManager::TestOverlaps ( const char *  path = "")

Geometry overlap checker based on sampling.

Definition at line 1899 of file TGeoManager.cxx.

Int_t TGeoManager::ThreadId ( )
static

Translates the current thread id to an ordinal number.

This can be used to manage data which is pspecific for a given thread. static __thread Int_t tid = -1; if (tid > -1) return tid;

Definition at line 1029 of file TGeoManager.cxx.

Referenced by TGeoVolumeAssembly::GetCurrentNodeIndex(), TGeoVolumeAssembly::GetNextNodeIndex(), TGeoPgon::GetThreadData(), TGeoXtru::GetThreadData(), TGeoBoolNode::GetThreadData(), TGeoPatternFinder::GetThreadData(), TGeoVolumeAssembly::GetThreadData(), TGeoNavigator::operator=(), TGeoVolumeAssembly::SetCurrentNodeIndex(), TGeoVolumeAssembly::SetNextNodeIndex(), and TGeoNavigator::TGeoNavigator().

void TGeoManager::TopToMaster ( const Double_t top,
Double_t master 
) const

Convert coordinates from top volume frame to master.

Definition at line 3968 of file TGeoManager.cxx.

Int_t TGeoManager::TransformVolumeToAssembly ( const char *  vname)

Transform all volumes named VNAME to assemblies. The volumes must be virtual.

Definition at line 1207 of file TGeoManager.cxx.

void TGeoManager::UnbombTranslation ( const Double_t tr,
Double_t bombtr 
)

Get the new 'unbombed' translation vector according current exploded view mode.

Definition at line 1102 of file TGeoManager.cxx.

Referenced by TGeoMatrix::MasterToLocalBomb(), and TGeoTranslation::MasterToLocalBomb().

void TGeoManager::UnlockGeometry ( )
static

Unlock current geometry.

Definition at line 3769 of file TGeoManager.cxx.

Referenced by TEveManager::GetGeometry().

void TGeoManager::UpdateElements ( )
private

Update element flags when geometry is loaded from a file.

Definition at line 3878 of file TGeoManager.cxx.

Referenced by Import().

void TGeoManager::ViewLeaves ( Bool_t  flag = kTRUE)

Set visualization option (leaves only OR all volumes)

Definition at line 2269 of file TGeoManager.cxx.

TGeoVolume * TGeoManager::Volume ( const char *  name,
const char *  shape,
Int_t  nmed,
Float_t upar,
Int_t  npar = 0 
)

Create a volume in GEANT3 style.

NAME Volume name SHAPE Volume type NMED Tracking medium number NPAR Number of shape parameters UPAR Vector containing shape parameters

Definition at line 1393 of file TGeoManager.cxx.

Referenced by TGeoMCGeometry::Gsvolu().

TGeoVolume * TGeoManager::Volume ( const char *  name,
const char *  shape,
Int_t  nmed,
Double_t upar,
Int_t  npar = 0 
)

Create a volume in GEANT3 style.

NAME Volume name SHAPE Volume type NMED Tracking medium number NPAR Number of shape parameters UPAR Vector containing shape parameters

Definition at line 1407 of file TGeoManager.cxx.

void TGeoManager::Voxelize ( Option_t option = 0)
private

Voxelize all non-divided volumes.

Definition at line 2900 of file TGeoManager.cxx.

Referenced by CloseGeometry().

Double_t TGeoManager::Weight ( Double_t  precision = 0.01,
Option_t option = "va" 
)

Estimate weight of volume VOL with a precision SIGMA(W)/W better than PRECISION.

Option can be "v" - verbose (default)

Definition at line 3639 of file TGeoManager.cxx.

Referenced by TGeoVolume::Weight().

Member Data Documentation

Bool_t TGeoManager::fActivity
private

flag for GL reflections

Definition at line 86 of file TGeoManager.h.

Referenced by Init(), IsActivityEnabled(), and operator=().

TObjArray* TGeoManager::fArrayPNE
mutableprivate
UChar_t* TGeoManager::fBits
private

Definition at line 103 of file TGeoManager.h.

Referenced by GetBits(), Init(), operator=(), and ~TGeoManager().

TGeoShape* TGeoManager::fClippingShape
private

Definition at line 121 of file TGeoManager.h.

Referenced by GetClippingShape(), Init(), operator=(), and SetClippingShape().

Bool_t TGeoManager::fClosed
private
TGeoNavigator* TGeoManager::fCurrentNavigator
private

Lock existing navigators.

Definition at line 114 of file TGeoManager.h.

Referenced by CloseGeometry(), GetCurrentNavigator(), Init(), operator=(), SetCurrentNavigator(), and SetTopVolume().

TVirtualGeoTrack* TGeoManager::fCurrentTrack
private

Definition at line 73 of file TGeoManager.h.

Referenced by GetCurrentTrack(), GetParentTrackOfId(), Init(), and operator=().

TGeoVolume* TGeoManager::fCurrentVolume
private

current navigator

Definition at line 115 of file TGeoManager.h.

Referenced by AddVolume(), Init(), and operator=().

Bool_t TGeoManager::fDrawExtra
private

Definition at line 83 of file TGeoManager.h.

Referenced by Init(), IsDrawingExtra(), and operator=().

TGeoElementTable* TGeoManager::fElementTable
private

clipping shape for raytracing

Definition at line 122 of file TGeoManager.h.

Referenced by CloseGeometry(), GetElementTable(), Init(), operator=(), UpdateElements(), and ~TGeoManager().

Int_t TGeoManager::fExplodedView
private

Definition at line 67 of file TGeoManager.h.

Referenced by GetBombMode(), Init(), operator=(), and SetExplodedView().

TGeoHMatrix* TGeoManager::fGLMatrix
private

Definition at line 119 of file TGeoManager.h.

Referenced by GetGLMatrix(), Init(), operator=(), and ~TGeoManager().

Bool_t TGeoManager::fgLock
staticprotected

Definition at line 49 of file TGeoManager.h.

Referenced by Import(), Init(), IsLocked(), LockGeometry(), and UnlockGeometry().

Bool_t TGeoManager::fgLockNavigators
staticprivate

Number of registered threads.

Definition at line 113 of file TGeoManager.h.

Referenced by SetNavigatorsLock().

Int_t TGeoManager::fgMaxDaughters = 1
staticprotected

Maximum level in geometry.

Definition at line 52 of file TGeoManager.h.

Referenced by CountLevels(), and GetMaxDaughters().

Int_t TGeoManager::fgMaxLevel = 1
staticprotected

Verbosity level for Info messages (no IO).

Definition at line 51 of file TGeoManager.h.

Referenced by CountLevels(), and GetMaxLevels().

Int_t TGeoManager::fgMaxXtruVert = 1
staticprotected

Maximum number of daughters.

Definition at line 53 of file TGeoManager.h.

Referenced by CountLevels(), and GetMaxXtruVert().

Int_t TGeoManager::fgNumThreads = 0
staticprivate

Thread id's map.

Definition at line 112 of file TGeoManager.h.

Referenced by ClearThreadsMap(), GetNumThreads(), and ThreadId().

TObjArray* TGeoManager::fGShapes
private

Definition at line 94 of file TGeoManager.h.

Referenced by CleanGarbage(), GetListOfGShapes(), Init(), and operator=().

TGeoManager::ThreadsMap_t * TGeoManager::fgThreadId = 0
staticprivate

Map between thread id's and navigator arrays.

Definition at line 111 of file TGeoManager.h.

Referenced by ClearThreadsMap(), Init(), operator=(), TGeoManager(), and ThreadId().

Int_t TGeoManager::fgVerboseLevel = 1
staticprotected
TObjArray* TGeoManager::fGVolumes
private

list of runtime shapes

Definition at line 95 of file TGeoManager.h.

Referenced by AddVolume(), CleanGarbage(), CloseGeometry(), FindVolumeFast(), GetListOfGVolumes(), Init(), operator=(), and SetVolumeAttribute().

THashList* TGeoManager::fHashGVolumes
private

hash list of volumes providing fast search

Definition at line 128 of file TGeoManager.h.

Referenced by AddVolume(), CloseGeometry(), FindVolumeFast(), Init(), operator=(), and ~TGeoManager().

THashList* TGeoManager::fHashPNE
private

hash list of group volumes providing fast search

Definition at line 129 of file TGeoManager.h.

Referenced by GetAlignableEntry(), GetNAlignable(), Init(), InitArrayPNE(), operator=(), SetAlignableEntry(), and ~TGeoManager().

THashList* TGeoManager::fHashVolumes
private

volume currently painted

Definition at line 127 of file TGeoManager.h.

Referenced by AddVolume(), CloseGeometry(), FindVolumeFast(), Init(), operator=(), and ~TGeoManager().

Bool_t TGeoManager::fIsGeomCleaning
private

flag set when reading geometry

Definition at line 80 of file TGeoManager.h.

Referenced by Init(), IsCleaning(), operator=(), and ~TGeoManager().

Bool_t TGeoManager::fIsGeomReading
private
Bool_t TGeoManager::fIsNodeSelectable
private

switch ON/OFF volume activity (default OFF - all volumes active))

Definition at line 87 of file TGeoManager.h.

Referenced by Init(), IsNodeSelectable(), and operator=().

Int_t* TGeoManager::fKeyPNEId
private

Definition at line 133 of file TGeoManager.h.

Referenced by GetAlignableEntryByUID(), Init(), InsertPNEId(), operator=(), and ~TGeoManager().

Bool_t TGeoManager::fLoopVolumes
private

flag that geometry is closed

Definition at line 77 of file TGeoManager.h.

Referenced by Init(), IsLoopingVolumes(), and operator=().

TGeoVolume* TGeoManager::fMasterVolume
private

top physical node

Definition at line 118 of file TGeoManager.h.

Referenced by Browse(), CloseGeometry(), CountLevels(), GetMasterVolume(), Init(), operator=(), RestoreMasterVolume(), and SetTopVolume().

TList* TGeoManager::fMaterials
private
TObjArray* TGeoManager::fMatrices
private

current painter

Definition at line 90 of file TGeoManager.h.

Referenced by Browse(), CloseGeometry(), GetByteCount(), GetListOfMatrices(), Init(), operator=(), SetAllIndex(), and ~TGeoManager().

Bool_t TGeoManager::fMatrixReflection
private

flag for using GL matrix

Definition at line 85 of file TGeoManager.h.

Referenced by Init(), IsMatrixReflection(), and operator=().

Bool_t TGeoManager::fMatrixTransform
private

flag that the list of physical nodes has to be drawn

Definition at line 84 of file TGeoManager.h.

Referenced by Init(), IsMatrixTransform(), and operator=().

Int_t TGeoManager::fMaxThreads
private

Definition at line 135 of file TGeoManager.h.

Referenced by ClearThreadData(), CreateThreadData(), Init(), operator=(), and SetMaxThreads().

Int_t TGeoManager::fMaxVisNodes
private

Definition at line 72 of file TGeoManager.h.

Referenced by GetMaxVisNodes(), Init(), operator=(), SetMaxVisNodes(), and SetVisLevel().

TList* TGeoManager::fMedia
private
Bool_t TGeoManager::fMultiThread
private
NavigatorsMap_t TGeoManager::fNavigators
private
Int_t TGeoManager::fNLevel
private

array of node id's

Definition at line 125 of file TGeoManager.h.

Referenced by CloseGeometry(), GetMaxLevel(), Init(), and operator=().

Int_t TGeoManager::fNNodes
private

upper time limit for tracks drawing

Definition at line 63 of file TGeoManager.h.

Referenced by CloseGeometry(), GetNNodes(), Init(), and operator=().

Int_t* TGeoManager::fNodeIdArray
private

table of elements

Definition at line 124 of file TGeoManager.h.

Referenced by Init(), and operator=().

TObjArray* TGeoManager::fNodes
private

Definition at line 101 of file TGeoManager.h.

Referenced by GetListOfNodes(), Init(), operator=(), SetTopVolume(), and ~TGeoManager().

Int_t TGeoManager::fNpdg
private

current track

Definition at line 74 of file TGeoManager.h.

Referenced by GetPdgName(), Init(), operator=(), and SetPdgName().

Int_t TGeoManager::fNPNEId
private

Definition at line 132 of file TGeoManager.h.

Referenced by GetAlignableEntryByUID(), GetNAlignable(), Init(), InsertPNEId(), and operator=().

Int_t TGeoManager::fNsegments
private

Definition at line 70 of file TGeoManager.h.

Referenced by GetNsegments(), Init(), operator=(), and SetNsegments().

Int_t TGeoManager::fNtracks
private
TObjArray* TGeoManager::fOverlaps
private
TVirtualGeoPainter* TGeoManager::fPainter
private
TGeoVolume* TGeoManager::fPaintVolume
private

Definition at line 126 of file TGeoManager.h.

Referenced by GetPaintVolume(), Init(), and operator=().

TGeoParallelWorld* TGeoManager::fParallelWorld
private
TString TGeoManager::fParticleName
private

path to current node

Definition at line 65 of file TGeoManager.h.

Referenced by operator=().

TString TGeoManager::fPath
private

Definition at line 64 of file TGeoManager.h.

Int_t TGeoManager::fPdgId[1024]
private

Definition at line 75 of file TGeoManager.h.

Referenced by GetPdgName(), Init(), operator=(), SetPdgName(), and TGeoManager().

TObjArray* TGeoManager::fPdgNames
private

Definition at line 97 of file TGeoManager.h.

Referenced by GetPdgName(), Init(), operator=(), SetPdgName(), and ~TGeoManager().

Bool_t TGeoManager::fPhiCut
private

flag to notify that the manager is being destructed

Definition at line 81 of file TGeoManager.h.

Referenced by Init(), IsInPhiRange(), operator=(), and SetPhiRange().

Double_t TGeoManager::fPhimax
private

lowest range for phi cut

Definition at line 60 of file TGeoManager.h.

Referenced by Init(), IsInPhiRange(), operator=(), and SetPhiRange().

Double_t TGeoManager::fPhimin
private

Definition at line 59 of file TGeoManager.h.

Referenced by Init(), IsInPhiRange(), operator=(), and SetPhiRange().

TObjArray* TGeoManager::fPhysicalNodes
private
TObjArray* TGeoManager::fShapes
private
Int_t TGeoManager::fSizePNEId
private

array of phisical node entries

Definition at line 131 of file TGeoManager.h.

Referenced by Init(), InsertPNEId(), operator=(), and ~TGeoManager().

Bool_t TGeoManager::fStreamVoxels
private

flag volume lists loop

Definition at line 78 of file TGeoManager.h.

Referenced by CloseGeometry(), Export(), Init(), IsStreamingVoxels(), operator=(), and Voxelize().

Bool_t TGeoManager::fTimeCut
private

Definition at line 82 of file TGeoManager.h.

Referenced by GetTminTmax(), Init(), operator=(), and SetTminTmax().

Double_t TGeoManager::fTmax
private

lower time limit for tracks drawing

Definition at line 62 of file TGeoManager.h.

Referenced by GetTmax(), GetTminTmax(), Init(), operator=(), and SetTminTmax().

Double_t TGeoManager::fTmin
private

highest range for phi cut

Definition at line 61 of file TGeoManager.h.

Referenced by GetTminTmax(), Init(), operator=(), and SetTminTmax().

TGeoNode* TGeoManager::fTopNode
private
TGeoVolume* TGeoManager::fTopVolume
private
TObjArray* TGeoManager::fTracks
private
TObjArray* TGeoManager::fUniqueVolumes
private
Bool_t TGeoManager::fUsePWNav
private

Flag for multi-threading.

Definition at line 137 of file TGeoManager.h.

Referenced by Init(), IsParallelWorldNav(), operator=(), and SetUseParallelWorldNav().

Int_t* TGeoManager::fValuePNEId
private

Definition at line 134 of file TGeoManager.h.

Referenced by GetAlignableEntryByUID(), Init(), InsertPNEId(), operator=(), and ~TGeoManager().

Double_t TGeoManager::fVisDensity
private

particles to be drawn

Definition at line 66 of file TGeoManager.h.

Referenced by GetVisDensity(), Init(), operator=(), and SetVisDensity().

Int_t TGeoManager::fVisLevel
private

Definition at line 69 of file TGeoManager.h.

Referenced by GetVisLevel(), Init(), operator=(), SetMaxVisNodes(), and SetVisLevel().

Int_t TGeoManager::fVisOption
private

Definition at line 68 of file TGeoManager.h.

Referenced by GetVisOption(), Init(), operator=(), and SetVisOption().

TObjArray* TGeoManager::fVolumes
private

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