Volume families.
A volume family is represented by the class TGeoVolumeMulti. It represents a class of volumes having the same shape type and each member will be identified by the same name and volume ID. Any operation applied to a TGeoVolume equally affects all volumes in that family. The creation of a family is generally not a user task, but can be forced in particular cases:
where VNAME is the family name, NMED is the medium number and SHAPE is the shape type that can be:
Volumes are then added to a given family upon adding the generic name as node inside other volume:
here:
The parameters order and number are the same as in the corresponding shape constructors.
Another particular case where volume families are used is when we want that a volume positioned inside a container to match one ore more container limits. Suppose we want to position the same box inside 2 different volumes and we want the Z size to match the one of each container:
Note that the third parameter of PVOL is negative, which does not make sense as half-length on Z. This is interpreted as: when positioned, create a box replacing all invalid parameters with the corresponding dimensions of the container. This is also internally handled by the TGeoVolumeMulti class, which does not need to be instantiated by users.
Volumes can be divided according a pattern. The most simple division can be done along one axis, that can be: X, Y, Z, Phi, Rxy or Rxyz. Let's take the most simple case: we would like to divide a box in N equal slices along X coordinate, representing a new volume family. Supposing we already have created the initial box, this can be done like:
where SLICE is the name of the new family representing all slices and 1 is the slicing axis. The meaning of the axis index is the following: for all volumes having shapes like box, trd1, trd2, trap, gtra or para - 1,2,3 means X,Y,Z; for tube, tubs, cone, cons - 1 means Rxy, 2 means phi and 3 means Z; for pcon and pgon - 2 means phi and 3 means Z; for spheres 1 means R and 2 means phi. In fact, the division operation has the same effect as positioning volumes in a given order inside the divided container - the advantage being that the navigation in such a structure is much faster. When a volume is divided, a volume family corresponding to the slices is created. In case all slices can be represented by a single shape, only one volume is added to the family and positioned N times inside the divided volume, otherwise, each slice will be represented by a distinct volume in the family. Divisions can be also performed in a given range of one axis. For that, one have to specify also the starting coordinate value and the step:
A check is always done on the resulting division range : if not fitting into the container limits, an error message is posted. If we will browse the divided volume we will notice that it will contain N nodes starting with index 1 upto N. The first one has the lower X limit at START position, while the last one will have the upper X limit at START+N*STEP. The resulting slices cannot be positioned inside an other volume (they are by default positioned inside the divided one) but can be further divided and may contain other volumes:
When doing that, we have to remember that SLICEY represents a family, therefore all members of the family will be divided on Y and the other volume will be added as node inside all. In the example above all the resulting slices had the same shape as the divided volume (box). This is not always the case. For instance, dividing a volume with TUBE shape on PHI axis will create equal slices having TUBESEG shape. Other divisions can also create slices having shapes with different dimensions, e.g. the division of a TRD1 volume on Z. When positioning volumes inside slices, one can do it using the generic volume family (e.g. slicey). This should be done as if the coordinate system of the generic slice was the same as the one of the divided volume. The generic slice in case of PHI division is centered with respect to X axis. If the family contains slices of different sizes, any volume positioned inside should fit into the smallest one. Examples for specific divisions according to shape types can be found inside shape classes.
The GEANT3 option MANY is supported by TGeoVolumeOverlap class. An overlapping volume is in fact a virtual container that does not represent a physical object. It contains a list of nodes that are not its daughters but that must be checked always before the container itself. This list must be defined by users and it is checked and resolved in a priority order. Note that the feature is non-standard to geometrical modelers and it was introduced just to support conversions of GEANT3 geometries, therefore its extensive usage should be avoided.
Definition at line 267 of file TGeoVolume.h.
Public Types | |
| enum | { kSingleKey = (1ULL << (0)) , kOverwrite = (1ULL << (1)) , kWriteDelete = (1ULL << (2)) } |
| enum | { kBitMask = 0x00ffffff } |
| enum | { kIsOnHeap = 0x01000000 , kNotDeleted = 0x02000000 , kZombie = 0x04000000 , kInconsistent = 0x08000000 , kBitMask = 0x00ffffff } |
| enum | EDeprecatedStatusBits { kObjInCanvas = (1ULL << (3)) } |
| enum | EGeoActivityAtt { kActOverride = (1ULL << (8)) , kActNone = (1ULL << (9)) , kActThis = (1ULL << (10)) , kActDaughters = (1ULL << (11)) } |
| enum | EGeoOptimizationAtt { kUseBoundingBox = (1ULL << (16)) , kUseVoxels = (1ULL << (17)) , kUseGsord = (1ULL << (18)) } |
| enum | EGeoSavePrimitiveAtt { kSavePrimitiveAtt = (1ULL << (19)) , kSaveNodesAtt = (1ULL << (20)) } |
| enum | EGeoVisibilityAtt { kVisOverride = (1ULL << (0)) , kVisNone = (1ULL << (1)) , kVisThis = (1ULL << (2)) , kVisDaughters = (1ULL << (3)) , kVisOneLevel = (1ULL << (4)) , kVisStreamed = (1ULL << (5)) , kVisTouched = (1ULL << (6)) , kVisOnScreen = (1ULL << (7)) , kVisContainers = (1ULL << (12)) , kVisOnly = (1ULL << (13)) , kVisBranch = (1ULL << (14)) , kVisRaytrace = (1ULL << (15)) } |
| enum | EGeoVolumeTypes { kVolumeReplicated = (1ULL << (14)) , kVolumeSelected = (1ULL << (15)) , kVolumeDiv = (1ULL << (16)) , kVolumeOverlap = (1ULL << (17)) , kVolumeImportNodes = (1ULL << (18)) , kVolumeMulti = (1ULL << (19)) , kVoxelsXYZ = (1ULL << (20)) , kVoxelsCyl = (1ULL << (21)) , kVolumeClone = (1ULL << (22)) , kVolumeAdded = (1ULL << (23)) , kVolumeOC = (1ULL << (21)) } |
| enum | EStatusBits { kCanDelete = (1ULL << (0)) , kMustCleanup = (1ULL << (3)) , kIsReferenced = (1ULL << (4)) , kHasUUID = (1ULL << (5)) , kCannotPick = (1ULL << (6)) , kNoContextMenu = (1ULL << (8)) , kInvalidObject = (1ULL << (13)) } |
Public Member Functions | |
| TGeoVolumeMulti () | |
| dummy constructor | |
| TGeoVolumeMulti (const char *name, TGeoMedium *med=nullptr) | |
| default constructor | |
| ~TGeoVolumeMulti () override | |
| Destructor. | |
| void | AbstractMethod (const char *method) const |
| Call this function within a function that you don't want to define as purely virtual, in order not to force all users deriving from that class to implement that maybe (on their side) unused function; but at the same time, emit a run-time warning if they try to call it, telling that it is not implemented in the derived class: action must thus be taken on the user side to override it. | |
| TGeoNode * | AddNode (TGeoVolume *vol, Int_t copy_no, TGeoMatrix *mat, Option_t *option="") override |
| Add a new node to the list of nodes. | |
| void | AddNodeOffset (TGeoVolume *vol, Int_t copy_no, Double_t offset=0, Option_t *option="") |
| Add a division node to the list of nodes. | |
| void | AddNodeOverlap (TGeoVolume *vol, Int_t copy_no, TGeoMatrix *mat, Option_t *option="") override |
| Add a new node to the list of nodes, This node is possibly overlapping with other daughters of the volume or extruding the volume. | |
| void | AddVolume (TGeoVolume *vol) |
| Add a volume with valid shape to the list of volumes. | |
| virtual void | AppendPad (Option_t *option="") |
| Append graphics object to current pad. | |
| void | Browse (TBrowser *b) override |
| How to browse a volume. | |
| Double_t | Capacity () const |
| Computes the capacity of this [cm^3] as the capacity of its shape. | |
| virtual void | cd (Int_t inode) const |
| Actualize matrix of node indexed <inode>. | |
| ULong_t | CheckedHash () |
| Check and record whether this class has a consistent Hash/RecursiveRemove setup (*) and then return the regular Hash value for this object. | |
| void | CheckGeometry (Int_t nrays=1, Double_t startx=0, Double_t starty=0, Double_t startz=0) const |
| Shoot nrays with random directions from starting point (startx, starty, startz) in the reference frame of this volume. | |
| void | CheckOverlaps (Double_t ovlp=0.1, Option_t *option="") |
| Overlap checking tool. Check for illegal overlaps within a limit OVLP. | |
| void | CheckOverlapsBySampling (Double_t ovlp=0.1, Int_t npoints=1000000) |
| Overlap by sampling legacy checking tool. Check for illegal overlaps within a limit OVLP. | |
| void | CheckShape (Int_t testNo, Int_t nsamples=10000, Option_t *option="") |
| Tests for checking the shape navigation algorithms. See TGeoShape::CheckShape(). | |
| void | CheckShapes () |
| check for negative parameters in shapes. | |
| virtual const char * | ClassName () const |
| Returns name of class to which the object belongs. | |
| void | CleanAll () |
| Clean data of the volume. | |
| void | Clear (Option_t *option="") override |
| Set name and title to empty strings (""). | |
| void | ClearNodes () |
| void | ClearShape () |
| Clear the shape of this volume from the list held by the current manager. | |
| virtual void | ClearThreadData () const |
| TObject * | Clone (const char *newname="") const override |
| Make a clone of an object using the Streamer facility. | |
| void | CloneNodesAndConnect (TGeoVolume *newmother) const |
| Clone the array of nodes. | |
| virtual TGeoVolume * | CloneVolume () const |
| Clone this volume. | |
| Int_t | Compare (const TObject *obj) const override |
| Compare two TNamed objects. | |
| Bool_t | Contains (const Double_t *point) const |
| void | Copy (TAttFill &attfill) const |
| void | Copy (TAttLine &attline) const |
| void | Copy (TObject &named) const override |
| Copy this to obj. | |
| Int_t | CountNodes (Int_t nlevels=1000, Int_t option=0) |
| Count total number of subnodes starting from this volume, nlevels down. | |
| virtual void | CreateThreadData (Int_t nthreads) |
| virtual void | Delete (Option_t *option="") |
| Delete this object. | |
| Int_t | DistancetoLine (Int_t px, Int_t py, Double_t xp1, Double_t yp1, Double_t xp2, Double_t yp2) |
| Int_t | DistancetoPrimitive (Int_t px, Int_t py) override |
| compute the closest distance of approach from point px,py to this volume | |
| TGeoVolume * | Divide (const char *divname, Int_t iaxis, Int_t ndiv, Double_t start, Double_t step, Int_t numed=0, Option_t *option="") override |
| division of multiple volumes | |
| void | Draw (Option_t *option="") override |
| draw top volume according to option | |
| virtual void | DrawClass () const |
| Draw class inheritance tree of the class to which this object belongs. | |
| virtual TObject * | DrawClone (Option_t *option="") const |
| Draw a clone of this object in the current selected pad with: gROOT->SetSelectedPad(c1). | |
| virtual void | DrawOnly (Option_t *option="") |
| draw only this volume | |
| virtual void | Dump () const |
| Dump contents of object on stdout. | |
| virtual void | Error (const char *method, const char *msgfmt,...) const |
| Issue error message. | |
| virtual void | Execute (const char *method, const char *params, Int_t *error=nullptr) |
| Execute method on this object with the given parameter string, e.g. | |
| virtual void | Execute (TMethod *method, TObjArray *params, Int_t *error=nullptr) |
| Execute method on this object with parameters stored in the TObjArray. | |
| void | ExecuteEvent (Int_t event, Int_t px, Int_t py) override |
| Execute mouse actions on this volume. | |
| Int_t | Export (const char *filename, const char *name="", Option_t *option="") |
| Export this volume to a file. | |
| virtual void | Fatal (const char *method, const char *msgfmt,...) const |
| Issue fatal error message. | |
| virtual void | FillBuffer (char *&buffer) |
| Encode TNamed into output buffer. | |
| Bool_t | FindMatrixOfDaughterVolume (TGeoVolume *vol) const |
| Find a daughter node having VOL as volume and fill TGeoManager::fHMatrix with its global matrix. | |
| TGeoNode * | FindNode (const char *name) const |
| search a daughter inside the list of nodes | |
| virtual TObject * | FindObject (const char *name) const |
| Must be redefined in derived classes. | |
| virtual TObject * | FindObject (const TObject *obj) const |
| Must be redefined in derived classes. | |
| void | FindOverlaps () const |
| loop all nodes marked as overlaps and find overlapping brothers | |
| Int_t | GetAxis () const |
| virtual Int_t | GetByteCount () const |
| get the total size in bytes for this volume | |
| virtual Int_t | GetCurrentNodeIndex () const |
| virtual Option_t * | GetDrawOption () const |
| Get option used by the graphics system to draw this object. | |
| TObject * | GetField () const |
| virtual Color_t | GetFillColor () const |
| Return the fill area color. | |
| virtual Style_t | GetFillStyle () const |
| Return the fill area style. | |
| TGeoPatternFinder * | GetFinder () const |
| TGeoExtension * | GetFWExtension () const |
| TGeoManager * | GetGeoManager () const |
| const char * | GetIconName () const override |
| Returns mime type name of object. | |
| Int_t | GetIndex (const TGeoNode *node) const |
| get index number for a given daughter | |
| TGeoShape * | GetLastShape () const |
| Returns the last shape. | |
| virtual Color_t | GetLineColor () const |
| Return the line color. | |
| virtual Style_t | GetLineStyle () const |
| Return the line style. | |
| virtual Width_t | GetLineWidth () const |
| Return the line width. | |
| TGeoMaterial * | GetMaterial () const |
| TGeoMedium * | GetMedium () const |
| const char * | GetName () const override |
| Returns name of object. | |
| Int_t | GetNdaughters () const |
| Int_t | GetNdiv () const |
| virtual Int_t | GetNextNodeIndex () const |
| TGeoNode * | GetNode (const char *name) const |
| get the pointer to a daughter node | |
| TGeoNode * | GetNode (Int_t i) const |
| Int_t | GetNodeIndex (const TGeoNode *node, Int_t *check_list, Int_t ncheck) const |
| Get the index of a daughter within check_list by providing the node pointer. | |
| TObjArray * | GetNodes () |
| Int_t | GetNtotal () const |
| Int_t | GetNumber () const |
| Int_t | GetNvolumes () const |
| char * | GetObjectInfo (Int_t px, Int_t py) const override |
| Get volume info for the browser. | |
| Bool_t | GetOptimalVoxels () const |
| Returns true if cylindrical voxelization is optimal. | |
| Option_t * | GetOption () const override |
| const char * | GetPointerName () const |
| Provide a pointer name containing uid. | |
| Int_t | GetRefCount () const |
| TGeoShape * | GetShape () const |
| Double_t | GetStart () const |
| Double_t | GetStep () const |
| const char * | GetTitle () const override |
| Returns title of object. | |
| Char_t | GetTransparency () const |
| virtual UInt_t | GetUniqueID () const |
| Return the unique object id. | |
| TGeoExtension * | GetUserExtension () const |
| TGeoVolume * | GetVolume (Int_t id) const |
| TGeoVoxelFinder * | GetVoxels () const |
| Getter for optimization structure. | |
| void | Grab () |
| void | GrabFocus () |
| Move perspective view focus to this volume. | |
| TGeoExtension * | GrabFWExtension () const |
| Get a copy of the framework extension pointer. | |
| TGeoExtension * | GrabUserExtension () const |
| Get a copy of the user extension pointer. | |
| void | Gsord (Int_t) |
| virtual Bool_t | HandleTimer (TTimer *timer) |
| Execute action in response of a timer timing out. | |
| ULong_t | Hash () const override |
| Return hash value for this object. | |
| Bool_t | HasInconsistentHash () const |
| Return true is the type of this object is known to have an inconsistent setup for Hash and RecursiveRemove (i.e. | |
| virtual void | Info (const char *method, const char *msgfmt,...) const |
| Issue info message. | |
| virtual Bool_t | InheritsFrom (const char *classname) const |
| Returns kTRUE if object inherits from class "classname". | |
| virtual Bool_t | InheritsFrom (const TClass *cl) const |
| Returns kTRUE if object inherits from TClass cl. | |
| virtual void | Inspect () const |
| Dump contents of this object in a graphics canvas. | |
| void | InspectMaterial () const |
| Inspect the material for this volume. | |
| void | InspectShape () const |
| void | InvertBit (UInt_t f) |
| void | InvisibleAll (Bool_t flag=kTRUE) |
| Make volume and each of it daughters (in)visible. | |
| TClass * | IsA () const override |
| Bool_t | IsActive () const |
| Bool_t | IsActiveDaughters () const |
| Bool_t | IsAdded () const |
| Bool_t | IsAllInvisible () const |
| Return TRUE if volume and all daughters are invisible. | |
| virtual Bool_t | IsAssembly () const |
| Returns true if the volume is an assembly or a scaled assembly. | |
| Bool_t | IsCylVoxels () const |
| Bool_t | IsDestructed () const |
| IsDestructed. | |
| virtual Bool_t | IsEqual (const TObject *obj) const |
| Default equal comparison (objects are equal if they have the same address in memory). | |
| Bool_t | IsFolder () const override |
| Return TRUE if volume contains nodes. | |
| Bool_t | IsOnHeap () const |
| Bool_t | IsOverlappingCandidate () const |
| Bool_t | IsRaytracing () const |
| Check if the painter is currently ray-tracing the content of this volume. | |
| Bool_t | IsReplicated () const |
| Bool_t | IsRunTime () const |
| Bool_t | IsSelected () const |
| Bool_t | IsSortable () const override |
| Bool_t | IsStyleDefault () const |
| check if the visibility and attributes are the default ones | |
| Bool_t | IsTopVolume () const |
| True if this is the top volume of the geometry. | |
| virtual Bool_t | IsTransparent () const |
| Bool_t | IsValid () const |
| Bool_t | IsVisBranch () const |
| Bool_t | IsVisContainers () const |
| Bool_t | IsVisDaughters () const |
| virtual Bool_t | IsVisible () const |
| Bool_t | IsVisibleDaughters () const |
| Bool_t | IsVisLeaves () const |
| Bool_t | IsVisOnly () const |
| Bool_t | IsVisRaytrace () const |
| Bool_t | IsVisStreamed () const |
| Bool_t | IsVisTouched () const |
| Bool_t | IsVolumeMulti () const override |
| Bool_t | IsXYZVoxels () const |
| Bool_t | IsZombie () const |
| TH2F * | LegoPlot (Int_t ntheta=20, Double_t themin=0., Double_t themax=180., Int_t nphi=60, Double_t phimin=0., Double_t phimax=360., Double_t rmin=0., Double_t rmax=9999999, Option_t *option="") |
| Generate a lego plot fot the top volume, according to option. | |
| void | ls (Option_t *option="") const override |
| List TNamed name and title. | |
| void | MakeCopyNodes (const TGeoVolume *other) |
| make a new list of nodes and copy all nodes of other volume inside | |
| TGeoVolume * | MakeCopyVolume (TGeoShape *newshape) override |
| Make a copy of this volume build a volume with same name, shape and medium. | |
| TGeoVolume * | MakeReflectedVolume (const char *newname="") const |
| Make a copy of this volume which is reflected with respect to XY plane. | |
| 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). | |
| virtual void | Modify () |
| virtual void | Modify () |
| virtual void | ModifyOn (TVirtualPad &pad) |
| virtual void | ModifyOn (TVirtualPad &pad) |
| virtual Bool_t | Notify () |
| This method must be overridden to handle object notification (the base implementation is no-op). | |
| void | Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const |
| Use this method to declare a method obsolete. | |
| void | operator delete (void *, size_t) |
| Operator delete for sized deallocation. | |
| void | operator delete (void *ptr) |
| Operator delete. | |
| void | operator delete (void *ptr, void *vp) |
| Only called by placement new when throwing an exception. | |
| void | operator delete[] (void *, size_t) |
| Operator delete [] for sized deallocation. | |
| void | operator delete[] (void *ptr) |
| Operator delete []. | |
| void | operator delete[] (void *ptr, void *vp) |
| Only called by placement new[] when throwing an exception. | |
| void * | operator new (size_t sz) |
| void * | operator new (size_t sz, void *vp) |
| void * | operator new[] (size_t sz) |
| void * | operator new[] (size_t sz, void *vp) |
| Bool_t | OptimizeVoxels () |
| Perform an extensive sampling to find which type of voxelization is most efficient. | |
| void | Paint (Option_t *option="") override |
| paint volume | |
| virtual void | Pop () |
| Pop on object drawn in a pad to the top of the display list. | |
| void | Print (Option_t *option="") const override |
| Print volume info. | |
| void | PrintNodes () const |
| print nodes | |
| void | PrintVoxels () const |
| Print the voxels for this volume. | |
| void | RandomPoints (Int_t npoints=1000000, Option_t *option="") |
| Draw random points in the bounding box of this volume. | |
| void | RandomRays (Int_t nrays=10000, Double_t startx=0, Double_t starty=0, Double_t startz=0, const char *target_vol=nullptr, Bool_t check_norm=kFALSE) |
| Random raytracing method. | |
| void | Raytrace (Bool_t flag=kTRUE) |
| Draw this volume with current settings and perform raytracing in the pad. | |
| virtual Int_t | Read (const char *name) |
| Read contents of object with specified name from the current directory. | |
| virtual void | RecursiveRemove (TObject *obj) |
| Recursively remove this object from a list. | |
| void | RegisterYourself (Option_t *option="") |
| Register the volume and all materials/media/matrices/shapes to the manager. | |
| void | Release () |
| void | RemoveNode (TGeoNode *node) |
| Remove an existing daughter. | |
| TGeoNode * | ReplaceNode (TGeoNode *nodeorig, TGeoShape *newshape=nullptr, TGeoMatrix *newpos=nullptr, TGeoMedium *newmed=nullptr) |
| Replace an existing daughter with a new volume having the same name but possibly a new shape, position or medium. | |
| void | ReplayCreation (const TGeoVolume *other) |
| Recreate the content of the other volume without pointer copying. | |
| void | ResetAttBit (UInt_t f) |
| virtual void | ResetAttFill (Option_t *option="") |
| virtual void | ResetAttLine (Option_t *option="") |
| void | ResetBit (UInt_t f) |
| void | ResetTransparency (Char_t transparency=-1) |
| void | SaveAs (const char *filename="", Option_t *option="") const override |
| Save geometry having this as top volume as a C++ macro. | |
| virtual void | SaveFillAttributes (std::ostream &out, const char *name, Int_t coldef=1, Int_t stydef=1001) |
| virtual void | SaveLineAttributes (std::ostream &out, const char *name, Int_t coldef=1, Int_t stydef=1, Int_t widdef=1) |
| void | SavePrimitive (std::ostream &out, Option_t *option="") override |
| Save a primitive as a C++ statement(s) on output stream "out". | |
| void | SelectVolume (Bool_t clear=kFALSE) |
| Select this volume as matching an arbitrary criteria. | |
| void | SetActiveDaughters (Bool_t flag=kTRUE) |
| void | SetActivity (Bool_t flag=kTRUE) |
| void | SetAdded () |
| void | SetAsTopVolume () |
| Set this volume as the TOP one (the whole geometry starts from here). | |
| void | SetAttBit (UInt_t f) |
| void | SetAttBit (UInt_t f, Bool_t set) |
| void | SetAttVisibility (Bool_t vis) |
| void | SetBit (UInt_t f) |
| void | SetBit (UInt_t f, Bool_t set) |
| Set or unset the user status bits as specified in f. | |
| void | SetCurrentPoint (Double_t x, Double_t y, Double_t z) |
| Set the current tracking point. | |
| void | SetCylVoxels (Bool_t flag=kTRUE) |
| virtual void | SetDrawOption (Option_t *option="") |
| Set drawing option for object. | |
| void | SetField (TObject *field) |
| virtual void | SetFillAttributes () |
| virtual void | SetFillColor (Color_t fcolor) |
| Set the fill area color. | |
| void | SetFillColor (TColorNumber) |
| virtual void | SetFillColorAlpha (Color_t fcolor, Float_t falpha) |
| virtual void | SetFillStyle (Style_t fstyle) |
| Set the fill area style. | |
| void | SetFinder (TGeoPatternFinder *finder) |
| void | SetFWExtension (TGeoExtension *ext) |
| Connect framework defined extension to the volume. | |
| void | SetInvisible () |
| virtual void | SetLineAttributes () |
| void | SetLineColor (TColorNumber lcolor) |
| void | SetLineColor (Color_t lcolor) override |
| Set the line color for all components. | |
| virtual void | SetLineColorAlpha (Color_t lcolor, Float_t lalpha) |
| void | SetLineStyle (Style_t lstyle) override |
| Set the line style for all components. | |
| void | SetLineWidth (Width_t lwidth) override |
| Set the line width for all components. | |
| void | SetMedium (TGeoMedium *medium) override |
| Set medium for a multiple volume. | |
| virtual void | SetName (const char *name) |
| Set the name of the TNamed. | |
| virtual void | SetNameTitle (const char *name, const char *title) |
| Set all the TNamed parameters (name and title). | |
| void | SetNodes (TObjArray *nodes) |
| void | SetNtotal (Int_t ntotal) |
| void | SetNumber (Int_t number) |
| void | SetOptimization (Option_t *option) |
| Set optimization flags. | |
| void | SetOption (const char *option) |
| Set the current options (none implemented). | |
| void | SetOverlappingCandidate (Bool_t flag) |
| void | SetReplicated () |
| void | SetShape (const TGeoShape *shape) |
| set the shape associated with this volume | |
| virtual void | SetTitle (const char *title="") |
| Set the title of the TNamed. | |
| void | SetTransparency (Char_t transparency=0) |
| virtual void | SetUniqueID (UInt_t uid) |
| Set the unique object id. | |
| void | SetUserExtension (TGeoExtension *ext) |
| Connect user-defined extension to the volume. | |
| void | SetVisBranch () |
| Set branch type visibility. | |
| void | SetVisContainers (Bool_t flag=kTRUE) override |
| Set visibility for containers. | |
| void | SetVisDaughters (Bool_t vis=kTRUE) |
| Set visibility for the daughters. | |
| void | SetVisibility (Bool_t vis=kTRUE) override |
| Set visibility for all components. | |
| void | SetVisLeaves (Bool_t flag=kTRUE) override |
| Set visibility for leaves. | |
| void | SetVisOnly (Bool_t flag=kTRUE) override |
| Set visibility for leaves. | |
| void | SetVisRaytrace (Bool_t flag=kTRUE) |
| void | SetVisStreamed (Bool_t vis=kTRUE) |
| Mark attributes as "streamed to file". | |
| void | SetVisTouched (Bool_t vis=kTRUE) |
| Mark visualization attributes as "modified". | |
| void | SetVoxelFinder (TGeoVoxelFinder *finder) |
| virtual Int_t | Sizeof () const |
| Return size of the TNamed part of the TObject. | |
| virtual void | Sizeof3D () const |
| Set total size of this 3D object (used by X3D interface). | |
| void | SortNodes () |
| sort nodes by decreasing volume of the bounding box. | |
| void | Streamer (TBuffer &) override |
| Stream an object of class TGeoVolume. | |
| void | StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b) |
| virtual void | SysError (const char *method, const char *msgfmt,...) const |
| Issue system error message. | |
| Bool_t | TestAttBit (UInt_t f) const |
| Bool_t | TestBit (UInt_t f) const |
| Int_t | TestBits (UInt_t f) const |
| void | UnmarkSaved () |
| Reset SavePrimitive bits. | |
| virtual void | UseCurrentStyle () |
| Set current style settings in this object This function is called when either TCanvas::UseCurrentStyle or TROOT::ForceStyle have been invoked. | |
| Bool_t | Valid () const |
| Check if the shape of this volume is valid. | |
| void | VisibleDaughters (Bool_t vis=kTRUE) |
| set visibility for daughters | |
| void | Voxelize (Option_t *option) |
| build the voxels for this volume | |
| virtual void | Warning (const char *method, const char *msgfmt,...) const |
| Issue warning message. | |
| Double_t | Weight (Double_t precision=0.01, Option_t *option="va") |
| Estimate the weight of a volume (in kg) with SIGMA(M)/M better than PRECISION. | |
| Double_t | WeightA () const |
| Analytical computation of the weight. | |
| virtual Int_t | Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0) |
| Write this object to the current directory. | |
| virtual Int_t | Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0) const |
| Write this object to the current directory. | |
Static Public Member Functions | |
| static TClass * | Class () |
| static const char * | Class_Name () |
| static constexpr Version_t | Class_Version () |
| static void | CreateDummyMedium () |
| Create a dummy medium. | |
| static const char * | DeclFileName () |
| static TGeoMedium * | DummyMedium () |
| static Longptr_t | GetDtorOnly () |
| Return destructor only flag. | |
| static Bool_t | GetObjectStat () |
| Get status of object stat flag. | |
| static TGeoVolume * | Import (const char *filename, const char *name="", Option_t *option="") |
| Import a volume from a file. | |
| static void | SetDtorOnly (void *obj) |
| Set destructor only flag. | |
| static void | SetObjectStat (Bool_t stat) |
| Turn on/off tracking of objects in the TObjectTable. | |
Protected Types | |
| enum | { kOnlyPrepStep = (1ULL << (3)) } |
Protected Member Functions | |
| virtual void | DoError (int level, const char *location, const char *fmt, va_list va) const |
| Interface to ErrorHandler (protected). | |
| void | MakeZombie () |
| void | SavePrimitiveNameTitle (std::ostream &out, const char *variable_name) |
| Save object name and title into the output stream "out". | |
Static Protected Member Functions | |
| static void | SavePrimitiveConstructor (std::ostream &out, TClass *cl, const char *variable_name, const char *constructor_agrs="", Bool_t empty_line=kTRUE) |
| Save object constructor in the output stream "out". | |
| static void | SavePrimitiveDraw (std::ostream &out, const char *variable_name, Option_t *option=nullptr) |
| Save invocation of primitive Draw() method Skipped if option contains "nodraw" string. | |
| static TString | SavePrimitiveVector (std::ostream &out, const char *prefix, Int_t len, Double_t *arr, Int_t flag=0) |
| Save array in the output stream "out" as vector. | |
Protected Attributes | |
| TObject * | fField |
| ! just a hook for now | |
| Color_t | fFillColor |
| Fill area color. | |
| Style_t | fFillStyle |
| Fill area style. | |
| TGeoPatternFinder * | fFinder |
| TGeoExtension * | fFWExtension |
| ! Transient framework-defined extension to volumes | |
| UInt_t | fGeoAtt |
| TGeoManager * | fGeoManager |
| ! pointer to TGeoManager owning this volume | |
| Color_t | fLineColor |
| Line color. | |
| Style_t | fLineStyle |
| Line style. | |
| Width_t | fLineWidth |
| Line width. | |
| TGeoMedium * | fMedium |
| TString | fName |
| TObjArray * | fNodes |
| Int_t | fNtotal |
| Int_t | fNumber |
| TString | fOption |
| ! option - if any | |
| Int_t | fRefCount |
| TGeoShape * | fShape |
| TString | fTitle |
| Char_t | fTransparency |
| TGeoExtension * | fUserExtension |
| ! Transient user-defined extension to volumes | |
| TGeoVoxelFinder * | fVoxels |
Static Protected Attributes | |
| static TGeoMedium * | fgDummyMedium = nullptr |
| ! dummy medium | |
Private Member Functions | |
| TGeoVolumeMulti (const TGeoVolumeMulti &)=delete | |
| TGeoVolumeMulti & | operator= (const TGeoVolumeMulti &)=delete |
Static Private Member Functions | |
| static void | AddToTObjectTable (TObject *) |
| Private helper function which will dispatch to TObjectTable::AddObj. | |
Private Attributes | |
| Bool_t | fAttSet |
| Int_t | fAxis |
| UInt_t | fBits |
| bit field status word | |
| TGeoVolumeMulti * | fDivision |
| Int_t | fNdiv |
| Int_t | fNumed |
| Double_t | fStart |
| Double_t | fStep |
| UInt_t | fUniqueID |
| object unique identifier | |
| TObjArray * | fVolumes |
Static Private Attributes | |
| static Longptr_t | fgDtorOnly = 0 |
| object for which to call dtor only (i.e. no delete) | |
| static Bool_t | fgObjectStat = kTRUE |
| if true keep track of objects in TObjectTable | |
#include <TGeoVolume.h>
|
protectedinherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
| Enumerator | |
|---|---|
| kVolumeReplicated | |
| kVolumeSelected | |
| kVolumeDiv | |
| kVolumeOverlap | |
| kVolumeImportNodes | |
| kVolumeMulti | |
| kVoxelsXYZ | |
| kVoxelsCyl | |
| kVolumeClone | |
| kVolumeAdded | |
| kVolumeOC | |
Definition at line 71 of file TGeoVolume.h.
|
inherited |
|
privatedelete |
| TGeoVolumeMulti::TGeoVolumeMulti | ( | ) |
dummy constructor
Definition at line 2663 of file TGeoVolume.cxx.
| TGeoVolumeMulti::TGeoVolumeMulti | ( | const char * | name, |
| TGeoMedium * | med = nullptr ) |
default constructor
Definition at line 2679 of file TGeoVolume.cxx.
|
override |
Destructor.
Definition at line 2699 of file TGeoVolume.cxx.
|
inherited |
Call this function within a function that you don't want to define as purely virtual, in order not to force all users deriving from that class to implement that maybe (on their side) unused function; but at the same time, emit a run-time warning if they try to call it, telling that it is not implemented in the derived class: action must thus be taken on the user side to override it.
In other word, this method acts as a "runtime purely virtual" warning instead of a "compiler purely virtual" error.
Definition at line 1149 of file TObject.cxx.
|
overridevirtual |
Add a new node to the list of nodes.
This is the usual method for adding daughters inside the container volume.
Reimplemented from TGeoVolume.
Definition at line 2745 of file TGeoVolume.cxx.
|
inherited |
Add a division node to the list of nodes.
The method is called by TGeoVolume::Divide() for creating the division nodes.
Definition at line 1138 of file TGeoVolume.cxx.
|
overridevirtual |
Add a new node to the list of nodes, This node is possibly overlapping with other daughters of the volume or extruding the volume.
Reimplemented from TGeoVolume.
Definition at line 2766 of file TGeoVolume.cxx.
|
staticprivateinherited |
Private helper function which will dispatch to TObjectTable::AddObj.
Included here to avoid circular dependency between header files.
Definition at line 195 of file TObject.cxx.
| void TGeoVolumeMulti::AddVolume | ( | TGeoVolume * | vol | ) |
Add a volume with valid shape to the list of volumes.
Copy all existing nodes to this volume
Definition at line 2709 of file TGeoVolume.cxx.
|
virtualinherited |
Append graphics object to current pad.
In case no current pad is set yet, create a default canvas with the name "c1".
Definition at line 204 of file TObject.cxx.
|
overridevirtualinherited |
|
inherited |
Computes the capacity of this [cm^3] as the capacity of its shape.
In case of assemblies, the capacity is computed as the sum of daughter's capacities.
Definition at line 574 of file TGeoVolume.cxx.
|
virtualinherited |
Actualize matrix of node indexed <inode>.
Definition at line 1085 of file TGeoVolume.cxx.
|
inlineinherited |
Check and record whether this class has a consistent Hash/RecursiveRemove setup (*) and then return the regular Hash value for this object.
The intent is for this routine to be called instead of directly calling the function Hash during "insert" operations. See TObject::HasInconsistenTObjectHash();
(*) The setup is consistent when all classes in the class hierarchy that overload TObject::Hash do call ROOT::CallRecursiveRemoveIfNeeded in their destructor. i.e. it is safe to call the Hash virtual function during the RecursiveRemove operation.
|
inherited |
Shoot nrays with random directions from starting point (startx, starty, startz) in the reference frame of this volume.
Track each ray until exiting geometry, then shoot backwards from exiting point and compare boundary crossing points.
Definition at line 591 of file TGeoVolume.cxx.
Overlap checking tool. Check for illegal overlaps within a limit OVLP.
Definition at line 606 of file TGeoVolume.cxx.
Overlap by sampling legacy checking tool. Check for illegal overlaps within a limit OVLP.
Definition at line 737 of file TGeoVolume.cxx.
|
inherited |
Tests for checking the shape navigation algorithms. See TGeoShape::CheckShape().
Definition at line 771 of file TGeoVolume.cxx.
|
inherited |
check for negative parameters in shapes.
Definition at line 796 of file TGeoVolume.cxx.
|
static |
|
static |
|
inlinestaticconstexpr |
Definition at line 307 of file TGeoVolume.h.
|
virtualinherited |
Returns name of class to which the object belongs.
Definition at line 227 of file TObject.cxx.
|
inherited |
Clean data of the volume.
Definition at line 779 of file TGeoVolume.cxx.
|
overridevirtualinherited |
Set name and title to empty strings ("").
Reimplemented from TObject.
Reimplemented in TPrincipal, TProcessID, TStreamerInfo, TTask, TVirtualFitter, and TVirtualStreamerInfo.
Definition at line 63 of file TNamed.cxx.
|
inlineinherited |
Definition at line 95 of file TGeoVolume.h.
|
inherited |
Clear the shape of this volume from the list held by the current manager.
Definition at line 788 of file TGeoVolume.cxx.
|
virtualinherited |
Reimplemented in TGeoVolumeAssembly.
Definition at line 428 of file TGeoVolume.cxx.
|
overridevirtualinherited |
Make a clone of an object using the Streamer facility.
If newname is specified, this will be the name of the new object.
Reimplemented from TObject.
Reimplemented in TStreamerInfo, and TTreeIndex.
Definition at line 73 of file TNamed.cxx.
|
inherited |
Clone the array of nodes.
Definition at line 2000 of file TGeoVolume.cxx.
|
virtualinherited |
Clone this volume.
build a volume with same name, shape and medium
Reimplemented in TGeoVolumeAssembly.
Definition at line 1951 of file TGeoVolume.cxx.
Compare two TNamed objects.
Returns 0 when equal, -1 when this is smaller and +1 when bigger (like strcmp).
Reimplemented from TObject.
Reimplemented in TStructNodeProperty.
Definition at line 84 of file TNamed.cxx.
Definition at line 105 of file TGeoVolume.h.
|
inherited |
|
inherited |
|
overridevirtualinherited |
Copy this to obj.
Reimplemented from TObject.
Reimplemented in TPieSlice, TProfile2D, TProfile3D, TProfile, TStyle, TSystemDirectory, TSystemFile, TText, and TXTRU.
Definition at line 93 of file TNamed.cxx.
Count total number of subnodes starting from this volume, nlevels down.
Definition at line 850 of file TGeoVolume.cxx.
|
staticinherited |
Create a dummy medium.
Definition at line 415 of file TGeoVolume.cxx.
|
virtualinherited |
Reimplemented in TGeoVolumeAssembly.
Definition at line 438 of file TGeoVolume.cxx.
|
inlinestatic |
Definition at line 307 of file TGeoVolume.h.
|
virtualinherited |
Delete this object.
Typically called as a command via the interpreter. Normally use "delete" operator when object has been allocated on the heap.
Reimplemented in RooLinkedList, TAxis, TBtree, TCanvas, TClonesArray, TCollection, TDirectory, TDirectoryFile, TExMap, TFile, TGFrame, TGItemContext, TGTextEdit, THashList, THashTable, TKey, TKeySQL, TKeyXML, TList, TListOfDataMembers, TListOfEnums, TListOfEnumsWithLock, TListOfFunctions, TListOfFunctionTemplates, TMap, TMVA::Results, TObjArray, TObjectTable, TOrdCollection, TProtoClass, TQCommand, TRefArray, TSystemDirectory, TSystemFile, TThread, TTree, TTreeViewer, TViewPubDataMembers, and TViewPubFunctions.
Definition at line 268 of file TObject.cxx.
|
inherited |
compute the closest distance of approach from point px,py to this volume
Reimplemented from TObject.
Definition at line 1311 of file TGeoVolume.cxx.
|
overridevirtual |
division of multiple volumes
Reimplemented from TGeoVolume.
Definition at line 2796 of file TGeoVolume.cxx.
|
protectedvirtualinherited |
Interface to ErrorHandler (protected).
Reimplemented in TThread, and TTreeViewer.
Definition at line 1059 of file TObject.cxx.
|
overridevirtualinherited |
draw top volume according to option
Reimplemented from TObject.
Definition at line 1326 of file TGeoVolume.cxx.
|
virtualinherited |
Draw class inheritance tree of the class to which this object belongs.
If a class B inherits from a class A, description of B is drawn on the right side of description of A. Member functions overridden by B are shown in class A with a blue line crossing-out the corresponding member function. The following picture is the class inheritance tree of class TPaveLabel:
Reimplemented in TGFrame, TSystemDirectory, and TSystemFile.
Definition at line 308 of file TObject.cxx.
Draw a clone of this object in the current selected pad with: gROOT->SetSelectedPad(c1).
If pad was not selected - gPad will be used.
Reimplemented in TAxis, TCanvas, TGFrame, TSystemDirectory, and TSystemFile.
Definition at line 319 of file TObject.cxx.
|
virtualinherited |
draw only this volume
Reimplemented in TGeoVolumeAssembly.
Definition at line 1345 of file TGeoVolume.cxx.
|
staticinherited |
Definition at line 448 of file TGeoVolume.cxx.
|
virtualinherited |
Dump contents of object on stdout.
Using the information in the object dictionary (class TClass) each data member is interpreted. If a data member is a pointer, the pointer value is printed
The following output is the Dump of a TArrow object:
Reimplemented in TClass, TCollection, TGFrame, TGPack, and TSystemFile.
Definition at line 367 of file TObject.cxx.
|
virtualinherited |
Issue error message.
Use "location" to specify the method where the error occurred. Accepts standard printf formatting arguments.
Reimplemented in TFitResult.
Definition at line 1098 of file TObject.cxx.
|
virtualinherited |
Execute method on this object with the given parameter string, e.g.
"3.14,1,\"text\"".
Reimplemented in ROOT::R::TRInterface, TCling, TContextMenu, TInterpreter, and TMethodCall.
Definition at line 378 of file TObject.cxx.
|
virtualinherited |
Execute method on this object with parameters stored in the TObjArray.
The TObjArray should contain an argv vector like:
Reimplemented in ROOT::R::TRInterface, TCling, TContextMenu, TInterpreter, and TMethodCall.
Definition at line 398 of file TObject.cxx.
Execute mouse actions on this volume.
Reimplemented from TObject.
Definition at line 1830 of file TGeoVolume.cxx.
|
inherited |
Export this volume to a file.
NOTE that to use this option, the PYTHONPATH must be defined like export PYTHONPATH=$ROOTSYS/lib:$ROOTSYS/gdml
Definition at line 1047 of file TGeoVolume.cxx.
|
virtualinherited |
Issue fatal error message.
Use "location" to specify the method where the fatal error occurred. Accepts standard printf formatting arguments.
Definition at line 1126 of file TObject.cxx.
|
virtualinherited |
Encode TNamed into output buffer.
Reimplemented in TDirectoryFile, TFile, TKey, TKeySQL, TKeyXML, TSQLFile, and TXMLFile.
Definition at line 103 of file TNamed.cxx.
|
inherited |
Find a daughter node having VOL as volume and fill TGeoManager::fHMatrix with its global matrix.
Definition at line 2538 of file TGeoVolume.cxx.
|
inherited |
search a daughter inside the list of nodes
Definition at line 1841 of file TGeoVolume.cxx.
|
virtualinherited |
Must be redefined in derived classes.
This function is typically used with TCollections, but can also be used to find an object by name inside this object.
Reimplemented in RooAbsCollection, RooLinkedList, TBtree, TCollection, TDirectory, TFolder, TGeometry, TGraph2D, TGraph, TH1, THashList, THashTable, THbookFile, TList, TListOfDataMembers, TListOfEnums, TListOfEnumsWithLock, TListOfFunctions, TListOfFunctionTemplates, TListOfTypes, TMap, TObjArray, TPad, TROOT, TViewPubDataMembers, and TViewPubFunctions.
Definition at line 425 of file TObject.cxx.
Must be redefined in derived classes.
This function is typically used with TCollections, but can also be used to find an object inside this object.
Reimplemented in RooAbsCollection, RooLinkedList, TBtree, TCollection, TDirectory, TFolder, TGeometry, TGraph2D, TGraph, TH1, THashList, THashTable, THbookFile, TList, TListOfDataMembers, TListOfEnums, TListOfEnumsWithLock, TListOfFunctions, TListOfFunctionTemplates, TListOfTypes, TMap, TObjArray, TPad, TROOT, TViewPubDataMembers, and TViewPubFunctions.
Definition at line 435 of file TObject.cxx.
|
inherited |
loop all nodes marked as overlaps and find overlapping brothers
Definition at line 2347 of file TGeoVolume.cxx.
|
inline |
Definition at line 295 of file TGeoVolume.h.
|
virtualinherited |
get the total size in bytes for this volume
Definition at line 2324 of file TGeoVolume.cxx.
|
inlinevirtualinherited |
Reimplemented in TGeoVolumeAssembly.
Definition at line 168 of file TGeoVolume.h.
|
virtualinherited |
Get option used by the graphics system to draw this object.
Note that before calling object.GetDrawOption(), you must have called object.Draw(..) before in the current pad.
Reimplemented in TBrowser, TFitEditor, TGedFrame, TGFileBrowser, TRootBrowser, and TRootBrowserLite.
Definition at line 445 of file TObject.cxx.
|
staticinherited |
Return destructor only flag.
Definition at line 1196 of file TObject.cxx.
|
inlineinherited |
Definition at line 177 of file TGeoVolume.h.
|
inlinevirtualinherited |
Return the fill area color.
Reimplemented in TGraphMultiErrors, TGWin32, TGWin32VirtualXProxy, and TGX11.
Definition at line 32 of file TAttFill.h.
|
inlinevirtualinherited |
Return the fill area style.
Reimplemented in TGraphMultiErrors, TGWin32, TGWin32VirtualXProxy, and TGX11.
Definition at line 33 of file TAttFill.h.
|
inlineinherited |
Definition at line 178 of file TGeoVolume.h.
|
inlineinherited |
Definition at line 134 of file TGeoVolume.h.
|
inlineinherited |
Definition at line 174 of file TGeoVolume.h.
|
inlineoverridevirtualinherited |
Returns mime type name of object.
Used by the TBrowser (via TGMimeTypes class). Override for class of which you would like to have different icons for objects of the same class.
Reimplemented from TObject.
Definition at line 180 of file TGeoVolume.h.
get index number for a given daughter
Definition at line 1863 of file TGeoVolume.cxx.
| TGeoShape * TGeoVolumeMulti::GetLastShape | ( | ) | const |
Returns the last shape.
Definition at line 2785 of file TGeoVolume.cxx.
|
inlinevirtualinherited |
Return the line color.
Reimplemented in TGraphMultiErrors, and TGWin32VirtualXProxy.
Definition at line 36 of file TAttLine.h.
|
inlinevirtualinherited |
Return the line style.
Reimplemented in TGraphMultiErrors, TGWin32, TGWin32VirtualXProxy, and TGX11.
Definition at line 37 of file TAttLine.h.
|
inlinevirtualinherited |
Return the line width.
Reimplemented in TGraphMultiErrors, TGWin32, TGWin32VirtualXProxy, and TGX11.
Definition at line 38 of file TAttLine.h.
|
inlineinherited |
Definition at line 175 of file TGeoVolume.h.
|
inlineinherited |
Definition at line 176 of file TGeoVolume.h.
|
inlineoverridevirtualinherited |
|
inlineinherited |
Definition at line 363 of file TGeoVolume.h.
|
inline |
Definition at line 296 of file TGeoVolume.h.
|
inlinevirtualinherited |
Reimplemented in TGeoVolumeAssembly.
Definition at line 169 of file TGeoVolume.h.
|
inherited |
get the pointer to a daughter node
Definition at line 2313 of file TGeoVolume.cxx.
Definition at line 183 of file TGeoVolume.h.
|
inherited |
Get the index of a daughter within check_list by providing the node pointer.
Definition at line 1849 of file TGeoVolume.cxx.
|
inlineinherited |
Definition at line 170 of file TGeoVolume.h.
|
inlineinherited |
Definition at line 172 of file TGeoVolume.h.
|
inlineinherited |
Definition at line 185 of file TGeoVolume.h.
|
inline |
Definition at line 294 of file TGeoVolume.h.
Get volume info for the browser.
Reimplemented from TObject.
Definition at line 1880 of file TGeoVolume.cxx.
|
staticinherited |
Get status of object stat flag.
Definition at line 1181 of file TObject.cxx.
|
inherited |
Returns true if cylindrical voxelization is optimal.
Definition at line 1892 of file TGeoVolume.cxx.
|
inlineoverridevirtualinherited |
Reimplemented from TObject.
Definition at line 188 of file TGeoVolume.h.
|
inherited |
Provide a pointer name containing uid.
Definition at line 1912 of file TGeoVolume.cxx.
|
inlineinherited |
Definition at line 132 of file TGeoVolume.h.
|
inlineinherited |
Definition at line 191 of file TGeoVolume.h.
|
inline |
Definition at line 297 of file TGeoVolume.h.
|
inline |
Definition at line 298 of file TGeoVolume.h.
|
inlineoverridevirtualinherited |
|
inlineinherited |
Definition at line 370 of file TGeoVolume.h.
|
virtualinherited |
Return the unique object id.
Definition at line 480 of file TObject.cxx.
|
inlineinherited |
Definition at line 133 of file TGeoVolume.h.
|
inline |
Definition at line 287 of file TGeoVolume.h.
|
inherited |
Getter for optimization structure.
Definition at line 1922 of file TGeoVolume.cxx.
|
inlineinherited |
Definition at line 137 of file TGeoVolume.h.
|
inherited |
Move perspective view focus to this volume.
Definition at line 1932 of file TGeoVolume.cxx.
|
inherited |
Get a copy of the framework extension pointer.
The user must call Release() on the copy pointer once this pointer is not needed anymore (equivalent to delete() after calling new())
Definition at line 1645 of file TGeoVolume.cxx.
|
inherited |
Get a copy of the user extension pointer.
The user must call Release() on the copy pointer once this pointer is not needed anymore (equivalent to delete() after calling new())
Definition at line 1633 of file TGeoVolume.cxx.
|
inlineinherited |
Definition at line 193 of file TGeoVolume.h.
Execute action in response of a timer timing out.
This method must be overridden if an object has to react to timers.
Reimplemented in TGCommandPlugin, TGDNDManager, TGFileContainer, TGHtml, TGLEventHandler, TGPopupMenu, TGraphTime, TGScrollBar, TGShutter, TGTextEdit, TGTextEditor, TGTextEntry, TGTextView, TGToolTip, TGuiBldDragManager, TGWindow, and TTreeViewer.
Definition at line 516 of file TObject.cxx.
|
inlineoverridevirtualinherited |
Return hash value for this object.
Note: If this routine is overloaded in a derived class, this derived class should also add
Otherwise, when RecursiveRemove is called (by ~TObject or example) for this type of object, the transversal of THashList and THashTable containers will will have to be done without call Hash (and hence be linear rather than logarithmic complexity). You will also see warnings like
Reimplemented from TObject.
|
inlineinherited |
Return true is the type of this object is known to have an inconsistent setup for Hash and RecursiveRemove (i.e.
missing call to RecursiveRemove in destructor).
Note: Since the consistency is only tested for during inserts, this routine will return true for object that have never been inserted whether or not they have a consistent setup. This has no negative side-effect as searching for the object with the right or wrong Hash will always yield a not-found answer (Since anyway no hash can be guaranteed unique, there is always a check)
|
staticinherited |
Import a volume from a file.
Definition at line 993 of file TGeoVolume.cxx.
|
virtualinherited |
Issue info message.
Use "location" to specify the method where the warning occurred. Accepts standard printf formatting arguments.
Definition at line 1072 of file TObject.cxx.
|
virtualinherited |
Returns kTRUE if object inherits from class "classname".
Reimplemented in TClass.
Definition at line 549 of file TObject.cxx.
Returns kTRUE if object inherits from TClass cl.
Reimplemented in TClass.
Definition at line 557 of file TObject.cxx.
|
virtualinherited |
Dump contents of this object in a graphics canvas.
Same action as Dump but in a graphical form. In addition pointers to other objects can be followed.
The following picture is the Inspect of a histogram object:
Reimplemented in ROOT::Experimental::XRooFit::xRooNode, TGFrame, TInspectorObject, and TSystemFile.
Definition at line 570 of file TObject.cxx.
|
inherited |
Inspect the material for this volume.
Definition at line 985 of file TGeoVolume.cxx.
|
inlineinherited |
Definition at line 196 of file TGeoVolume.h.
Make volume and each of it daughters (in)visible.
Definition at line 915 of file TGeoVolume.cxx.
|
inlineoverridevirtual |
Reimplemented from TGeoVolume.
Definition at line 307 of file TGeoVolume.h.
|
inlineinherited |
Definition at line 146 of file TGeoVolume.h.
|
inlineinherited |
Definition at line 147 of file TGeoVolume.h.
|
inlineinherited |
Definition at line 148 of file TGeoVolume.h.
|
inherited |
Return TRUE if volume and all daughters are invisible.
Definition at line 901 of file TGeoVolume.cxx.
|
virtualinherited |
Returns true if the volume is an assembly or a scaled assembly.
Reimplemented in TGeoVolumeAssembly.
Definition at line 1942 of file TGeoVolume.cxx.
|
inlineinherited |
Definition at line 152 of file TGeoVolume.h.
|
inlineinherited |
IsDestructed.
Default equal comparison (objects are equal if they have the same address in memory).
More complicated classes might want to override this function.
Reimplemented in TGObject, TObjString, TPair, and TQCommand.
Definition at line 589 of file TObject.cxx.
|
overridevirtualinherited |
Return TRUE if volume contains nodes.
Reimplemented from TObject.
Definition at line 943 of file TGeoVolume.cxx.
|
inlineinherited |
Definition at line 149 of file TGeoVolume.h.
|
inherited |
Check if the painter is currently ray-tracing the content of this volume.
Definition at line 977 of file TGeoVolume.cxx.
|
inlineinherited |
Definition at line 150 of file TGeoVolume.h.
|
inlineinherited |
Definition at line 110 of file TGeoVolume.h.
|
inlineinherited |
Definition at line 151 of file TGeoVolume.h.
|
inlineoverridevirtualinherited |
Reimplemented from TObject.
Reimplemented in TStructNodeProperty.
|
inherited |
check if the visibility and attributes are the default ones
Definition at line 951 of file TGeoVolume.cxx.
|
inherited |
True if this is the top volume of the geometry.
Definition at line 967 of file TGeoVolume.cxx.
|
inlinevirtualinherited |
Reimplemented in TGWin32VirtualXProxy.
Definition at line 49 of file TAttFill.h.
|
inlineinherited |
Definition at line 155 of file TGeoVolume.h.
|
inlineinherited |
Definition at line 158 of file TGeoVolume.h.
|
inlinevirtualinherited |
Reimplemented in TGeoVolumeAssembly.
Definition at line 156 of file TGeoVolume.h.
|
inlineinherited |
Definition at line 157 of file TGeoVolume.h.
|
inlineinherited |
Definition at line 159 of file TGeoVolume.h.
|
inlineinherited |
Definition at line 160 of file TGeoVolume.h.
|
inlineoverridevirtual |
Reimplemented from TGeoVolume.
Definition at line 299 of file TGeoVolume.h.
|
inlineinherited |
Definition at line 153 of file TGeoVolume.h.
|
inherited |
Generate a lego plot fot the top volume, according to option.
Definition at line 1452 of file TGeoVolume.cxx.
|
overridevirtualinherited |
List TNamed name and title.
Reimplemented from TObject.
Reimplemented in ROOT::Experimental::XRooFit::xRooBrowser, TNode, TROOT, TStreamerBase, TStreamerElement, TStreamerInfo, TStreamerSTL, TTask, TText, and TVirtualStreamerInfo.
Definition at line 112 of file TNamed.cxx.
|
inherited |
make a new list of nodes and copy all nodes of other volume inside
Definition at line 2028 of file TGeoVolume.cxx.
|
overridevirtual |
Make a copy of this volume build a volume with same name, shape and medium.
Reimplemented from TGeoVolume.
Definition at line 2851 of file TGeoVolume.cxx.
|
inherited |
Make a copy of this volume which is reflected with respect to XY plane.
Definition at line 2078 of file TGeoVolume.cxx.
|
inherited |
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).
Definition at line 1160 of file TObject.cxx.
|
virtualinherited |
|
virtualinherited |
|
virtualinherited |
|
virtualinherited |
|
virtualinherited |
This method must be overridden to handle object notification (the base implementation is no-op).
Different objects in ROOT use the Notify method for different purposes, in coordination with other objects that call this method at the appropriate time.
For example, TLeaf uses it to load class information; TBranchRef to load contents of referenced branches TBranchRef; most notably, based on Notify, TChain implements a callback mechanism to inform interested parties when it switches to a new sub-tree.
Reimplemented in h1analysis, h1analysisTreeReader, TARInterruptHandler, TASInputHandler, TASInterruptHandler, TASLogHandler, TASSigPipeHandler, TBlinkTimer, TBranchElement, TBranchRef, TBreakLineCom, TBrowserTimer, TCollection, TDelCharCom, TDelTextCom, TFileHandler, TGContainerKeyboardTimer, TGContainerScrollTimer, TGInputHandler, TGLRedrawTimer, TGTextEditHist, TGuiBldDragManagerRepeatTimer, TIdleTimer, TInsCharCom, TInsTextCom, TInterruptHandler, TLeafObject, TMessageHandler, TNotifyLink< Type >, TNotifyLink< RNoCleanupNotifierHelper >, TNotifyLink< ROOT::Detail::TBranchProxy >, TNotifyLink< TTreeReader >, TPopupDelayTimer, TProcessEventTimer, TRefTable, TRepeatTimer, TSBRepeatTimer, TSelector, TSelectorDraw, TSelectorEntries, TSignalHandler, TSingleShotCleaner, TSocketHandler, TStdExceptionHandler, TSysEvtHandler, TTermInputHandler, TThreadTimer, TTimeOutTimer, TTimer, TTipDelayTimer, TTree, TTreeFormula, TTreeFormulaManager, TTreeReader, TViewTimer, and TViewUpdateTimer.
Definition at line 618 of file TObject.cxx.
|
inherited |
Use this method to declare a method obsolete.
Specify as of which version the method is obsolete and as from which version it will be removed.
Definition at line 1169 of file TObject.cxx.
|
inherited |
Operator delete for sized deallocation.
Definition at line 1234 of file TObject.cxx.
|
inherited |
Operator delete.
Definition at line 1212 of file TObject.cxx.
|
inherited |
Only called by placement new when throwing an exception.
Definition at line 1266 of file TObject.cxx.
|
inherited |
Operator delete [] for sized deallocation.
Definition at line 1245 of file TObject.cxx.
|
inherited |
Operator delete [].
Definition at line 1223 of file TObject.cxx.
|
inherited |
Only called by placement new[] when throwing an exception.
Definition at line 1274 of file TObject.cxx.
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
privatedelete |
|
inherited |
Perform an extensive sampling to find which type of voxelization is most efficient.
Definition at line 1367 of file TGeoVolume.cxx.
|
overridevirtualinherited |
|
virtualinherited |
Pop on object drawn in a pad to the top of the display list.
I.e. it will be drawn last and on top of all other primitives.
Reimplemented in TFrame, TPad, and TVirtualPad.
Definition at line 640 of file TObject.cxx.
|
overridevirtualinherited |
|
inherited |
print nodes
Definition at line 1440 of file TGeoVolume.cxx.
|
inherited |
Print the voxels for this volume.
Definition at line 1402 of file TGeoVolume.cxx.
Draw random points in the bounding box of this volume.
Definition at line 1512 of file TGeoVolume.cxx.
|
inherited |
Random raytracing method.
Definition at line 1529 of file TGeoVolume.cxx.
Draw this volume with current settings and perform raytracing in the pad.
Definition at line 1547 of file TGeoVolume.cxx.
|
virtualinherited |
Read contents of object with specified name from the current directory.
First the key with the given name is searched in the current directory, next the key buffer is deserialized into the object. The object must have been created before via the default constructor. See TObject::Write().
Reimplemented in TBuffer, TKey, TKeySQL, and TKeyXML.
Definition at line 673 of file TObject.cxx.
|
virtualinherited |
Recursively remove this object from a list.
Typically implemented by classes that can contain multiple references to a same object.
Reimplemented in RooAbsCollection, RooAbsData, RooLinkedList, RooMCStudy, ROOT::Internal::TCheckHashRecursiveRemoveConsistency, ROOT::RBrowserDataCleanup, RooWorkspace, TBrowser, TChain, TCling, TCollection, TDialogCanvas, TDirectory, TEfficiency, TFileMerger, TFitEditor, TFolder, TFriendElement, TGedEditor, TGeometry, TGFileBrowser, TGraph2D, TGraph, TH1, TH1Editor, TH2Editor, THashList, THistPainter, THStack, TInspectCanvas, TLegend, TList, TListOfDataMembers, TListOfEnums, TListOfEnumsWithLock, TListOfFunctions, TListOfFunctionTemplates, TMultiGraph, TNode, TObjArray, TObjectRefSpy, TObjectSpy, TPad, TProcessID, TROOT, TRootBrowser, TRootBrowserHistory, TRootBrowserLite, TRootContextMenu, TTree, TTreePlayer, TViewPubDataMembers, TViewPubFunctions, and TVirtualPad.
Definition at line 684 of file TObject.cxx.
|
inherited |
Register the volume and all materials/media/matrices/shapes to the manager.
Definition at line 1469 of file TGeoVolume.cxx.
|
inlineinherited |
Definition at line 138 of file TGeoVolume.h.
|
inherited |
Remove an existing daughter.
Definition at line 2371 of file TGeoVolume.cxx.
|
inherited |
Replace an existing daughter with a new volume having the same name but possibly a new shape, position or medium.
Not allowed for positioned assemblies. For division cells, the new shape/matrix are ignored.
Definition at line 2389 of file TGeoVolume.cxx.
|
inherited |
Recreate the content of the other volume without pointer copying.
Voxels are ignored and supposed to be created in a later step via Voxelize.
Definition at line 1412 of file TGeoVolume.cxx.
|
virtualinherited |
Reimplemented in TGWin32VirtualXProxy.
|
virtualinherited |
Reimplemented in TGWin32VirtualXProxy.
|
inlineinherited |
Definition at line 385 of file TGeoVolume.h.
|
overridevirtualinherited |
Save geometry having this as top volume as a C++ macro.
Reimplemented from TObject.
Definition at line 1567 of file TGeoVolume.cxx.
|
virtualinherited |
|
virtualinherited |
|
overridevirtualinherited |
Save a primitive as a C++ statement(s) on output stream "out".
Reimplemented from TObject.
Definition at line 1655 of file TGeoVolume.cxx.
|
staticprotectedinherited |
Save object constructor in the output stream "out".
Can be used as first statement when implementing SavePrimitive() method for the object
Definition at line 777 of file TObject.cxx.
|
staticprotectedinherited |
Save invocation of primitive Draw() method Skipped if option contains "nodraw" string.
Definition at line 845 of file TObject.cxx.
|
protectedinherited |
Save object name and title into the output stream "out".
Definition at line 135 of file TNamed.cxx.
|
staticprotectedinherited |
Save array in the output stream "out" as vector.
Create unique variable name based on prefix value Returns name of vector which can be used in constructor or in other places of C++ code If flag === kTRUE, just add empty line If flag === 111, check if array is empty and return nullptr or <vectorname>.data()
Definition at line 796 of file TObject.cxx.
Select this volume as matching an arbitrary criteria.
The volume is added to a static list and the flag TGeoVolume::kVolumeSelected is set. All flags need to be reset at the end by calling the method with CLEAR=true. This will also clear the list.
Definition at line 2445 of file TGeoVolume.cxx.
Definition at line 214 of file TGeoVolume.h.
Definition at line 213 of file TGeoVolume.h.
|
inlineinherited |
Definition at line 216 of file TGeoVolume.h.
|
inherited |
Set this volume as the TOP one (the whole geometry starts from here).
Definition at line 2171 of file TGeoVolume.cxx.
|
inlineinherited |
Definition at line 234 of file TGeoVolume.h.
Set or unset the user status bits as specified in f.
Definition at line 888 of file TObject.cxx.
Set the current tracking point.
Definition at line 2179 of file TGeoVolume.cxx.
Definition at line 219 of file TGeoVolume.h.
|
virtualinherited |
Set drawing option for object.
This option only affects the drawing style and is stored in the option field of the TObjOptLink supporting a TPad's primitive list (TList). Note that it does not make sense to call object.SetDrawOption(option) before having called object.Draw().
Reimplemented in RooPlot, TAxis, TBrowser, TGedFrame, TGFrame, TPad, TPaveStats, TRootBrowserLite, TSystemDirectory, and TSystemFile.
Definition at line 871 of file TObject.cxx.
|
staticinherited |
Set destructor only flag.
Definition at line 1204 of file TObject.cxx.
|
inlineinherited |
Definition at line 232 of file TGeoVolume.h.
|
virtualinherited |
Reimplemented in TGWin32VirtualXProxy.
|
inlinevirtualinherited |
Set the fill area color.
Reimplemented in TGQuartz, TGraphMultiErrors, TGWin32, TGWin32VirtualXProxy, TGX11, TPDF, TPostScript, TSpider, TSVG, TTeXDump, and TVirtualX.
Definition at line 40 of file TAttFill.h.
|
inherited |
Reimplemented in TGraphMultiErrors.
|
inlinevirtualinherited |
Set the fill area style.
Reimplemented in TGQuartz, TGraphMultiErrors, TGWin32, TGWin32VirtualXProxy, TGX11, TPad, TSpider, and TVirtualX.
Definition at line 42 of file TAttFill.h.
|
inlineinherited |
Definition at line 245 of file TGeoVolume.h.
|
inherited |
Connect framework defined extension to the volume.
The volume "grabs" a copy, so the original object can be released by the producer. Release the previously connected extension if any.
NOTE: This interface is intended for the use by TGeo and the users should NOT connect extensions using this method
Definition at line 1618 of file TGeoVolume.cxx.
|
inlineinherited |
Definition at line 242 of file TGeoVolume.h.
|
virtualinherited |
Reimplemented in TGWin32VirtualXProxy.
|
inherited |
|
overridevirtual |
Set the line color for all components.
Reimplemented from TGeoVolume.
Definition at line 2913 of file TGeoVolume.cxx.
Reimplemented in TGraphMultiErrors.
|
overridevirtual |
Set the line style for all components.
Reimplemented from TGeoVolume.
Definition at line 2927 of file TGeoVolume.cxx.
|
overridevirtual |
Set the line width for all components.
Reimplemented from TGeoVolume.
Definition at line 2941 of file TGeoVolume.cxx.
|
overridevirtual |
Set medium for a multiple volume.
Reimplemented from TGeoVolume.
Definition at line 2955 of file TGeoVolume.cxx.
|
virtualinherited |
Set the name of the TNamed.
WARNING: if the object is a member of a THashTable or THashList container the container must be Rehash()'ed after SetName(). For example the list of objects in the current directory is a THashList.
Reimplemented in RooAbsArg, RooAbsData, RooDataHist, RooDataSet, RooFitResult, RooPlot, ROOT::Experimental::XRooFit::xRooNode, TChain, TColor, TDirectory, TEfficiency, TEventList, TEveScene, TFormula, TGraph2D, TGraph, TH1, TNode, TRotMatrix, TShape, TSystemDirectory, TSystemFile, and TTree.
Definition at line 149 of file TNamed.cxx.
|
virtualinherited |
Set all the TNamed parameters (name and title).
WARNING: if the name is changed and the object is a member of a THashTable or THashList container the container must be Rehash()'ed after SetName(). For example the list of objects in the current directory is a THashList.
Reimplemented in RooAbsArg, RooAbsData, RooDataHist, RooDataSet, RooFitResult, RooPlot, TContextMenu, TGraph2D, TGraph, TH1, and TNode.
Definition at line 163 of file TNamed.cxx.
|
inlineinherited |
Definition at line 224 of file TGeoVolume.h.
|
inlineinherited |
Definition at line 247 of file TGeoVolume.h.
|
inlineinherited |
Definition at line 246 of file TGeoVolume.h.
|
staticinherited |
Turn on/off tracking of objects in the TObjectTable.
Definition at line 1188 of file TObject.cxx.
|
inherited |
Set optimization flags.
Definition at line 147 of file TGeoAtt.cxx.
|
inherited |
Set the current options (none implemented).
Definition at line 2281 of file TGeoVolume.cxx.
|
inlineinherited |
Definition at line 229 of file TGeoVolume.h.
|
inlineinherited |
Definition at line 217 of file TGeoVolume.h.
|
inherited |
set the shape associated with this volume
Definition at line 2187 of file TGeoVolume.cxx.
|
virtualinherited |
Set the title of the TNamed.
Reimplemented in Axis2, RooPlot, ROOT::Experimental::XRooFit::xRooNode, ROOT::TSchemaRule::TSources, TASImage, TEfficiency, TF1, TGraph2D, TGraph, TH1, THnBase, TParallelCoordVar, TSystemDirectory, and TSystemFile.
Definition at line 173 of file TNamed.cxx.
|
inlineinherited |
Definition at line 378 of file TGeoVolume.h.
|
virtualinherited |
Set the unique object id.
Definition at line 899 of file TObject.cxx.
|
inherited |
Connect user-defined extension to the volume.
The volume "grabs" a copy, so the original object can be released by the producer. Release the previously connected extension if any.
NOTE: This interface is intended for user extensions and is guaranteed not to be used by TGeo
Definition at line 1600 of file TGeoVolume.cxx.
|
inherited |
Set branch type visibility.
Definition at line 65 of file TGeoAtt.cxx.
Set visibility for containers.
Reimplemented from TGeoAtt.
Definition at line 2485 of file TGeoVolume.cxx.
Set visibility for the daughters.
Definition at line 115 of file TGeoAtt.cxx.
Set visibility for all components.
Reimplemented from TGeoVolume.
Definition at line 2969 of file TGeoVolume.cxx.
Set visibility for leaves.
Reimplemented from TGeoAtt.
Definition at line 2499 of file TGeoVolume.cxx.
Set visibility for leaves.
Reimplemented from TGeoAtt.
Definition at line 2513 of file TGeoVolume.cxx.
Mark attributes as "streamed to file".
Definition at line 127 of file TGeoAtt.cxx.
Mark visualization attributes as "modified".
Definition at line 137 of file TGeoAtt.cxx.
|
inlineinherited |
Definition at line 244 of file TGeoVolume.h.
|
virtualinherited |
Return size of the TNamed part of the TObject.
Reimplemented in TDirectory, TDirectoryFile, TFile, TKey, TSQLFile, and TXMLFile.
Definition at line 182 of file TNamed.cxx.
|
virtualinherited |
|
inherited |
sort nodes by decreasing volume of the bounding box.
ONLY nodes comes first, then overlapping nodes and finally division nodes.
Definition at line 2200 of file TGeoVolume.cxx.
|
overridevirtual |
Stream an object of class TGeoVolume.
Reimplemented from TGeoVolume.
|
inline |
Definition at line 307 of file TGeoVolume.h.
|
virtualinherited |
Issue system error message.
Use "location" to specify the method where the system error occurred. Accepts standard printf formatting arguments.
Definition at line 1112 of file TObject.cxx.
|
inherited |
Reset SavePrimitive bits.
Definition at line 1819 of file TGeoVolume.cxx.
|
virtualinherited |
|
inherited |
Check if the shape of this volume is valid.
Definition at line 2529 of file TGeoVolume.cxx.
set visibility for daughters
Definition at line 2573 of file TGeoVolume.cxx.
|
inherited |
build the voxels for this volume
Definition at line 2584 of file TGeoVolume.cxx.
|
virtualinherited |
Issue warning message.
Use "location" to specify the method where the warning occurred. Accepts standard printf formatting arguments.
Definition at line 1084 of file TObject.cxx.
Estimate the weight of a volume (in kg) with SIGMA(M)/M better than PRECISION.
Option can contain : v - verbose, a - analytical (default)
Definition at line 2621 of file TGeoVolume.cxx.
|
inherited |
Analytical computation of the weight.
Definition at line 2637 of file TGeoVolume.cxx.
|
virtualinherited |
Write this object to the current directory.
For more see the const version of this method.
Reimplemented in ROOT::TBufferMergerFile, TBuffer, TCollection, TDirectory, TDirectoryFile, TFile, TMap, TParallelMergingFile, TSQLFile, TTree, and TXMLFile.
Definition at line 989 of file TObject.cxx.
|
virtualinherited |
Write this object to the current directory.
The data structure corresponding to this object is serialized. The corresponding buffer is written to the current directory with an associated key with name "name".
Writing an object to a file involves the following steps:
Bufsize can be given to force a given buffer size to write this object. By default, the buffersize will be taken from the average buffer size of all objects written to the current file so far.
If a name is specified, it will be the name of the key. If name is not given, the name of the key will be the name as returned by GetName().
The option can be a combination of: kSingleKey, kOverwrite or kWriteDelete Using the kOverwrite option a previous key with the same name is overwritten. The previous key is deleted before writing the new object. Using the kWriteDelete option a previous key with the same name is deleted only after the new object has been written. This option is safer than kOverwrite but it is slower. NOTE: Neither kOverwrite nor kWriteDelete reduces the size of a TFile– the space is simply freed up to be overwritten; in the case of a TTree, it is more complicated. If one opens a TTree, appends some entries, then writes it out, the behaviour is effectively the same. If, however, one creates a new TTree and writes it out in this way, only the metadata is replaced, effectively making the old data invisible without deleting it. TTree::Delete() can be used to mark all disk space occupied by a TTree as free before overwriting its metadata this way. The kSingleKey option is only used by TCollection::Write() to write a container with a single key instead of each object in the container with its own key.
An object is read from the file into memory via TKey::Read() or via TObject::Read().
The function returns the total number of bytes written to the file. It returns 0 if the object cannot be written.
Reimplemented in TBuffer, TCollection, TDirectory, TDirectoryFile, TFile, TMap, TParallelMergingFile, TSQLFile, TTree, and TXMLFile.
Definition at line 964 of file TObject.cxx.
|
private |
Definition at line 276 of file TGeoVolume.h.
|
private |
Definition at line 273 of file TGeoVolume.h.
|
privateinherited |
|
private |
Definition at line 270 of file TGeoVolume.h.
|
protectedinherited |
! just a hook for now
Definition at line 53 of file TGeoVolume.h.
|
protectedinherited |
Fill area color.
Definition at line 24 of file TAttFill.h.
|
protectedinherited |
Fill area style.
Definition at line 25 of file TAttFill.h.
|
protectedinherited |
Definition at line 49 of file TGeoVolume.h.
|
protectedinherited |
! Transient framework-defined extension to volumes
Definition at line 60 of file TGeoVolume.h.
|
staticprivateinherited |
|
staticprotectedinherited |
! dummy medium
Definition at line 48 of file TGeoVolume.h.
|
protectedinherited |
! pointer to TGeoManager owning this volume
Definition at line 51 of file TGeoVolume.h.
|
protectedinherited |
Line color.
Definition at line 24 of file TAttLine.h.
|
protectedinherited |
Line style.
Definition at line 25 of file TAttLine.h.
|
protectedinherited |
Line width.
Definition at line 26 of file TAttLine.h.
|
protectedinherited |
Definition at line 47 of file TGeoVolume.h.
|
private |
Definition at line 272 of file TGeoVolume.h.
|
protectedinherited |
Definition at line 45 of file TGeoVolume.h.
|
protectedinherited |
Definition at line 56 of file TGeoVolume.h.
|
protectedinherited |
Definition at line 55 of file TGeoVolume.h.
|
private |
Definition at line 271 of file TGeoVolume.h.
|
protectedinherited |
! option - if any
Definition at line 54 of file TGeoVolume.h.
|
protectedinherited |
Definition at line 57 of file TGeoVolume.h.
|
protectedinherited |
Definition at line 46 of file TGeoVolume.h.
|
private |
Definition at line 274 of file TGeoVolume.h.
|
private |
Definition at line 275 of file TGeoVolume.h.
|
protectedinherited |
Definition at line 58 of file TGeoVolume.h.
|
privateinherited |
|
protectedinherited |
! Transient user-defined extension to volumes
Definition at line 59 of file TGeoVolume.h.
|
private |
Definition at line 269 of file TGeoVolume.h.
|
protectedinherited |
Definition at line 50 of file TGeoVolume.h.