Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
TEveElement Class Reference

Base class for TEveUtil visualization elements, providing hierarchy management, rendering control and list-tree item management.

Definition at line 35 of file TEveElement.h.

Classes

class  TEveListTreeInfo
 Structure holding information about TGListTree and TGListTreeItem that represents given TEveElement. More...
 

Public Types

enum  EChangeBits { kCBColorSelection = (1ULL << ( 0 )) , kCBTransBBox = (1ULL << ( 1 )) , kCBObjProps = (1ULL << ( 2 )) , kCBVisibility = (1ULL << ( 3 )) }
 
typedef void(TEveElement::* ImplySelect_foo) ()
 
typedef List_t::const_iterator List_ci
 
typedef List_t::iterator List_i
 
typedef std::list< TEveElement * > List_t
 
typedef void(TEveElement::* Select_foo) (Bool_t)
 
typedef Set_t::const_iterator Set_ci
 
typedef Set_t::iterator Set_i
 
typedef std::set< TEveElement * > Set_t
 
typedef sLTI_t::iterator sLTI_i
 
typedef sLTI_t::reverse_iterator sLTI_ri
 
typedef std::set< TEveListTreeInfosLTI_t
 

Public Member Functions

 TEveElement ()
 Default constructor.
 
 TEveElement (Color_t &main_color)
 Constructor.
 
 TEveElement (const TEveElement &e)
 Copy constructor.
 
virtual ~TEveElement ()
 Destructor.
 
virtual Bool_t AcceptElement (TEveElement *el)
 Check if el can be added to this element.
 
virtual void AddElement (TEveElement *el)
 Add el to the list of children.
 
virtual TGListTreeItemAddIntoListTree (TGListTree *ltree, TEveElement *parent)
 Add this render element into ltree to all items belonging to parent.
 
virtual TGListTreeItemAddIntoListTree (TGListTree *ltree, TGListTreeItem *parent_lti)
 Add this element into ltree to an already existing item parent_lti.
 
virtual TGListTreeItemAddIntoListTrees (TEveElement *parent)
 Add this render element into all list-trees and all items belonging to parent.
 
virtual void AddParent (TEveElement *re)
 Add re into the list parents.
 
virtual void AddStamp (UChar_t bits)
 Add (bitwise or) given stamps to fChangeBits.
 
virtual void Annihilate ()
 Optimized destruction without check of reference-count.
 
virtual void AnnihilateElements ()
 Annihilate elements.
 
Bool_t ApplyVizTag (const TString &tag, const TString &fallback_tag="")
 Set the VizTag, find model-element from the VizDB and copy visualization-parameters from it.
 
List_i BeginChildren ()
 
List_ci BeginChildren () const
 
List_i BeginParents ()
 
List_ci BeginParents () const
 
virtual Bool_t CanEditElement () const
 
virtual Bool_t CanEditMainColor () const
 
virtual Bool_t CanEditMainTrans () const
 
virtual Bool_t CanEditMainTransparency () const
 
virtual void CheckReferenceCount (const TEveException &eh="TEveElement::CheckReferenceCount ")
 Check external references to this and eventually auto-destruct the render-element.
 
virtual void ClearStamps ()
 
virtual void CloneChildrenRecurse (TEveElement *dest, Int_t level=0) const
 Clone children and attach them to the dest element.
 
virtual TEveElementCloneElement () const
 Clone the element via copy constructor.
 
virtual TEveElementCloneElementRecurse (Int_t level=0) const
 Clone elements and recurse 'level' deep over children.
 
virtual void CollectSceneParents (List_t &scenes)
 Collect all parents of class TEveScene.
 
virtual void CollectSceneParentsFromChildren (List_t &scenes, TEveElement *parent)
 Collect scene-parents from all children.
 
virtual void CopyVizParams (const TEveElement *el)
 Copy visualization parameters from element el.
 
virtual void CopyVizParamsFromDB ()
 Copy visualization parameters from the model-element fVizModel.
 
void CSCApplyMainColorToAllChildren ()
 
void CSCApplyMainColorToMatchingChildren ()
 
void CSCApplyMainTransparencyToAllChildren ()
 
void CSCApplyMainTransparencyToMatchingChildren ()
 
void CSCImplySelectAllChildren ()
 
void CSCTakeAnyParentAsMaster ()
 
void DecDenyDestroy ()
 Decreases the deny-destroy count of the element.
 
virtual void DecImpliedHighlighted ()
 Decrease element's implied-highlight count. Stamp appropriately.
 
virtual void DecImpliedSelected ()
 Decrease element's implied-selection count. Stamp appropriately.
 
void DecParentIgnoreCnt ()
 Decrease number of parents ignored in reference-counting.
 
virtual void Destroy ()
 Destroy this element.
 
virtual void DestroyElements ()
 Destroy all children of this element.
 
virtual void DestroyListSubTree (TGListTree *ltree, TGListTreeItem *parent)
 Destroy sub-tree under item 'parent' in list-tree 'ltree'.
 
virtual void DestroyMainTrans ()
 Destroy the main transformation matrix, it will always be taken as identity.
 
virtual void DestroyOrWarn ()
 Destroy this element. Prints a warning if deny-destroy is in force.
 
void DisableListElements (Bool_t rnr_self=kFALSE, Bool_t rnr_children=kFALSE)
 Disable rendering of children and their list contents.
 
void DumpSourceObject () const
 Call Dump() on source object.
 
virtual void ElementChanged (Bool_t update_scenes=kTRUE, Bool_t redraw=kFALSE)
 Call this after an element has been changed so that the state can be propagated around the framework.
 
void EnableListElements (Bool_t rnr_self=kTRUE, Bool_t rnr_children=kTRUE)
 Enable rendering of children and their list contents.
 
List_i EndChildren ()
 
List_ci EndChildren () const
 
List_i EndParents ()
 
List_ci EndParents () const
 
virtual void ExpandIntoListTree (TGListTree *ltree, TGListTreeItem *parent)
 Populates parent with elements.
 
void ExportSourceObjectToCINT (char *var_name) const
 Export source object to CINT with given name for the variable.
 
virtual void ExportToCINT (char *var_name)
 Export render-element to CINT with variable name var_name.
 
virtual void FillImpliedSelectedSet (Set_t &impSelSet)
 Populate set impSelSet with derived / dependant elements.
 
TEveElementFindChild (const TString &name, const TClass *cls=nullptr)
 Find the first child with given name.
 
TEveElementFindChild (TPRegexp &regexp, const TClass *cls=nullptr)
 Find the first child whose name matches regexp.
 
Int_t FindChildren (List_t &matches, const TString &name, const TClass *cls=nullptr)
 Find all children with given name and append them to matches list.
 
Int_t FindChildren (List_t &matches, TPRegexp &regexp, const TClass *cls=nullptr)
 Find all children whose name matches regexp and append them to matches list.
 
virtual sLTI_i FindItem (TGListTree *ltree)
 Find any list-tree-item of this element in list-tree 'ltree'.
 
virtual sLTI_i FindItem (TGListTree *ltree, TGListTreeItem *parent_lti)
 Find list-tree-item of this element with given parent list-tree-item.
 
virtual TGListTreeItemFindListTreeItem (TGListTree *ltree)
 Find any list-tree-item of this element in list-tree 'ltree'.
 
virtual TGListTreeItemFindListTreeItem (TGListTree *ltree, TGListTreeItem *parent_lti)
 Find list-tree-item of this element with given parent list-tree-item.
 
Bool_t FindVizModel ()
 Find model element in VizDB that corresponds to previously assigned fVizTag and set fVizModel accordingly.
 
TEveElementFirstChild () const
 Returns the first child element or 0 if the list is empty.
 
virtual TEveElementForwardEdit ()
 Returns element to be displayed in GUI editor on click.
 
virtual TEveElementForwardSelection ()
 Returns element to be selected on click.
 
UChar_t GetChangeBits () const
 
TEveCompoundGetCompound ()
 
Int_t GetDenyDestroy () const
 Returns the number of times deny-destroy has been requested on the element.
 
Bool_t GetDestroyOnZeroRefCnt () const
 Returns state of flag determining if the element will be destroyed when reference count reaches zero.
 
virtual TObjectGetEditorObject (const TEveException &eh) const
 
virtual const char * GetElementName () const
 Virtual function for retrieving name of the element.
 
virtual const char * GetElementTitle () const
 Virtual function for retrieving title of the render-element.
 
virtual TString GetHighlightTooltip ()
 
virtual const TGPictureGetListTreeCheckBoxIcon ()
 Returns list-tree-item check-box picture appropriate for given rendering state.
 
virtual const TGPictureGetListTreeIcon (Bool_t open=kFALSE)
 Returns pointer to first listtreeicon.
 
virtual Color_t GetMainColor () const
 
Color_tGetMainColorPtr () const
 
virtual Char_t GetMainTransparency () const
 
TEveElementGetMaster ()
 Returns the master element - that is:
 
virtual Int_t GetNItems () const
 
virtual TObjectGetObject (const TEveException &eh) const
 Get a TObject associated with this render-element.
 
Int_t GetParentIgnoreCnt () const
 Get number of parents that should be ignored in doing reference-counting.
 
virtual TObjectGetRenderObject (const TEveException &eh) const
 
virtual Bool_t GetRnrAnything () const
 
virtual Bool_t GetRnrChildren () const
 
virtual Bool_t GetRnrSelf () const
 
virtual Bool_t GetRnrState () const
 
virtual UChar_t GetSelectedLevel () const
 Get selection level, needed for rendering selection and highlight feedback.
 
TRefGetSource ()
 
TObjectGetSourceObject () const
 
void * GetUserData () const
 
TEveElementGetVizModel () const
 
const TStringGetVizTag () const
 
virtual Bool_t HandleElementPaste (TEveElement *el)
 React to element being pasted or dnd-ed.
 
Bool_t HasChild (TEveElement *el)
 Check if element el is a child of this element.
 
Bool_t HasChildren () const
 
virtual Bool_t HasMainColor () const
 
virtual Bool_t HasMainTrans () const
 
Bool_t HasParents () const
 
virtual void HighlightElement (Bool_t state)
 Set element's highlight state. Stamp appropriately.
 
void IncDenyDestroy ()
 Increases the deny-destroy count of the element.
 
virtual void IncImpliedHighlighted ()
 Increase element's implied-highlight count. Stamp appropriately.
 
virtual void IncImpliedSelected ()
 Increase element's implied-selection count. Stamp appropriately.
 
void IncParentIgnoreCnt ()
 Increase number of parents ignored in reference-counting.
 
virtual void InitMainTrans (Bool_t can_edit=kTRUE)
 Initialize the main transformation to identity matrix.
 
virtual TClassIsA () const
 
Bool_t IsPickable () const
 
TEveElementLastChild () const
 Returns the last child element or 0 if the list is empty.
 
virtual void NameTitleChanged ()
 Virtual function called when a name or title of the element has been changed.
 
Int_t NumChildren () const
 
Int_t NumParents () const
 
virtual void PadPaint (Option_t *option)
 Paint self and/or children into currently active pad.
 
virtual void PaintStandard (TObject *id)
 Paint object – a generic implementation for EVE elements.
 
void PrintSourceObject () const
 Call Print() on source object.
 
virtual void ProjectAllChildren (Bool_t same_depth=kTRUE)
 If this is a projectable, loop over all projected replicas and add the projected image of all children there.
 
virtual void ProjectChild (TEveElement *el, Bool_t same_depth=kTRUE)
 If this is a projectable, loop over all projected replicas and add the projected image of child 'el' there.
 
virtual void PropagateMainColorToProjecteds (Color_t color, Color_t old_color)
 Propagate color to projected elements.
 
virtual void PropagateMainTransparencyToProjecteds (Char_t t, Char_t old_t)
 Propagate transparency to projected elements.
 
virtual void PropagateRnrStateToProjecteds ()
 Propagate render state to the projected replicas of this element.
 
virtual void PropagateVizParamsToElements (TEveElement *el=nullptr)
 Propagate visualization parameters from element el (defaulting to this) to all elements (children).
 
virtual void PropagateVizParamsToProjecteds ()
 Propagate visualization parameters to dependent elements.
 
virtual TEveTransPtrMainTrans (Bool_t create=kTRUE)
 Return pointer to main transformation.
 
void RecheckImpliedSelections ()
 Call this if it is possible that implied-selection or highlight has changed for this element or for implied-selection this element is member of and you want to maintain consistent selection state.
 
const List_tRefChildren () const
 
virtual TEveTransRefMainTrans ()
 Return reference to main transformation.
 
virtual void RemoveElement (TEveElement *el)
 Remove el from the list of children.
 
virtual void RemoveElementLocal (TEveElement *el)
 Perform additional local removal of el.
 
virtual void RemoveElements ()
 Remove all elements.
 
virtual void RemoveElementsLocal ()
 Perform additional local removal of all elements.
 
virtual Bool_t RemoveFromListTree (TGListTree *ltree, TGListTreeItem *parent_lti)
 Remove element from list-tree 'ltree' where its parent item is 'parent_lti'.
 
virtual Int_t RemoveFromListTrees (TEveElement *parent)
 Remove element from all list-trees where 'parent' is the user-data of the parent list-tree-item.
 
virtual void RemoveParent (TEveElement *re)
 Remove re from the list of parents.
 
void ResetAllCSCBits ()
 
void ResetCSCBits (UChar_t f)
 
void SaveVizParams (std::ostream &out, const TString &tag, const TString &var)
 Save visualization parameters for this element with given tag.
 
virtual void SelectElement (Bool_t state)
 Set element's selection state. Stamp appropriately.
 
void SetCompound (TEveCompound *c)
 
void SetCSCBits (UChar_t f)
 
void SetDestroyOnZeroRefCnt (Bool_t d)
 Sets the state of flag determining if the element will be destroyed when reference count reaches zero.
 
void SetEditMainColor (Bool_t x)
 
void SetEditMainTransparency (Bool_t x)
 
virtual void SetElementName (const char *name)
 Virtual function for setting of name of an element.
 
virtual void SetElementNameTitle (const char *name, const char *title)
 Virtual function for setting of name and title of render element.
 
virtual void SetElementTitle (const char *title)
 Virtual function for setting of title of an element.
 
void SetMainAlpha (Float_t alpha)
 Set main-transparency via float alpha variable.
 
virtual void SetMainColor (Color_t color)
 Set main color of the element.
 
void SetMainColorPixel (Pixel_t pixel)
 Convert pixel to Color_t and call SetMainColor().
 
void SetMainColorPtr (Color_t *color)
 
void SetMainColorRGB (Float_t r, Float_t g, Float_t b)
 Convert RGB values to Color_t and call SetMainColor.
 
void SetMainColorRGB (UChar_t r, UChar_t g, UChar_t b)
 Convert RGB values to Color_t and call SetMainColor.
 
virtual void SetMainTransparency (Char_t t)
 Set main-transparency.
 
void SetPickable (Bool_t p)
 
void SetPickableRecursively (Bool_t p)
 Set pickable state on the element and all its children.
 
virtual Bool_t SetRnrChildren (Bool_t rnr)
 Set render state of this element's children, i.e.
 
virtual Bool_t SetRnrSelf (Bool_t rnr)
 Set render state of this element, i.e.
 
virtual Bool_t SetRnrSelfChildren (Bool_t rnr_self, Bool_t rnr_children)
 Set state for rendering of this element and its children.
 
virtual Bool_t SetRnrState (Bool_t rnr)
 Set render state of this element and of its children to the same value.
 
void SetSourceObject (TObject *o)
 
virtual void SetTransMatrix (const TGeoMatrix &mat)
 Set transformation matrix from TGeo's matrix.
 
virtual void SetTransMatrix (Double_t *carr)
 Set transformation matrix from column-major array.
 
void SetUserData (void *ud)
 
void SetVizModel (TEveElement *model)
 Set visualization-parameter model element.
 
void SetVizTag (const TString &tag)
 
virtual Bool_t SingleRnrState () const
 
void SpawnEditor ()
 Show GUI editor for this object.
 
void StampColorSelection ()
 
void StampObjProps ()
 
void StampTransBBox ()
 
void StampVisibility ()
 
virtual void Streamer (TBuffer &)
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
Bool_t TestCSCBits (UChar_t f) const
 
virtual void UnHighlighted ()
 Virtual function called when both fHighlighted is false and fImpliedHighlighted is 0.
 
virtual void UnSelected ()
 Virtual function called when both fSelected is false and fImpliedSelected is 0.
 
void VizDB_Apply (const char *tag)
 Set visual parameters for this object for given tag.
 
void VizDB_Insert (const char *tag, Bool_t replace=kTRUE, Bool_t update=kTRUE)
 Create a replica of element and insert it into VizDB with given tag.
 
void VizDB_Reapply ()
 Reset visual parameters for this object from VizDB.
 
void VizDB_UpdateModel (Bool_t update=kTRUE)
 Copy visual parameters from this element to viz-db model.
 
virtual void WriteVizParams (std::ostream &out, const TString &var)
 Write-out visual parameters for this object.
 

Static Public Member Functions

static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 

Static Public Attributes

static const TGPicturefgListTreeIcons [9] = { nullptr }
 
static const TGPicturefgRnrIcons [4] = { nullptr }
 

Protected Types

enum  ECompoundSelectionColorBits {
  kCSCBImplySelectAllChildren = (1ULL << ( 0 )) , kCSCBTakeAnyParentAsMaster = (1ULL << ( 1 )) , kCSCBApplyMainColorToAllChildren = (1ULL << ( 2 )) , kCSCBApplyMainColorToMatchingChildren = (1ULL << ( 3 )) ,
  kCSCBApplyMainTransparencyToAllChildren = (1ULL << ( 4 )) , kCSCBApplyMainTransparencyToMatchingChildren = (1ULL << ( 5 ))
}
 
enum  EDestruct { kNone , kStandard , kAnnihilate }
 

Protected Member Functions

virtual void AnnihilateRecursively ()
 Protected member function called from TEveElement::Annihilate().
 
virtual void PreDeleteElement ()
 Externally assigned and controlled user data.
 
virtual void RemoveElementsInternal ()
 Remove all elements.
 

Static Protected Member Functions

static const char * ToString (Bool_t b)
 Convert Bool_t to string - kTRUE or kFALSE.
 

Protected Attributes

Bool_t fCanEditMainColor
 
Bool_t fCanEditMainTrans
 
Bool_t fCanEditMainTransparency
 
UChar_t fChangeBits
 
List_t fChildren
 
TEveCompoundfCompound
 
UChar_t fCSCBits
 
Int_t fDenyDestroy
 Counter for top-level list-tree items that prevent automatic destruction.
 
Bool_t fDestroyOnZeroRefCnt
 Deny-destroy count.
 
Char_t fDestructing
 
Bool_t fHighlighted
 
Short_t fImpliedHighlighted
 
Short_t fImpliedSelected
 
sLTI_t fItems
 
Color_tfMainColorPtr
 
TEveTransfMainTrans
 
Char_t fMainTransparency
 
Int_t fNumChildren
 
Int_t fParentIgnoreCnt
 
List_t fParents
 
Bool_t fPickable
 
Bool_t fRnrChildren
 
Bool_t fRnrSelf
 
Bool_t fSelected
 
TRef fSource
 Set of list-tree-items.
 
Int_t fTopItemCnt
 Counter for parents that are ignored in ref-counting.
 
void * fUserData
 
TEveElementfVizModel
 
TString fVizTag
 Element used as model from VizDB.
 

Private Member Functions

TEveElementoperator= (const TEveElement &)=delete
 

Friends

class TEveManager
 

#include <TEveElement.h>

Inheritance diagram for TEveElement:
[legend]

Member Typedef Documentation

◆ ImplySelect_foo

typedef void(TEveElement::* TEveElement::ImplySelect_foo) ()

Definition at line 339 of file TEveElement.h.

◆ List_ci

typedef List_t::const_iterator TEveElement::List_ci

Definition at line 73 of file TEveElement.h.

◆ List_i

typedef List_t::iterator TEveElement::List_i

Definition at line 72 of file TEveElement.h.

◆ List_t

typedef std::list<TEveElement*> TEveElement::List_t

Definition at line 71 of file TEveElement.h.

◆ Select_foo

typedef void(TEveElement::* TEveElement::Select_foo) (Bool_t)

Definition at line 338 of file TEveElement.h.

◆ Set_ci

typedef Set_t::const_iterator TEveElement::Set_ci

Definition at line 77 of file TEveElement.h.

◆ Set_i

typedef Set_t::iterator TEveElement::Set_i

Definition at line 76 of file TEveElement.h.

◆ Set_t

typedef std::set<TEveElement*> TEveElement::Set_t

Definition at line 75 of file TEveElement.h.

◆ sLTI_i

typedef sLTI_t::iterator TEveElement::sLTI_i

Definition at line 68 of file TEveElement.h.

◆ sLTI_ri

typedef sLTI_t::reverse_iterator TEveElement::sLTI_ri

Definition at line 69 of file TEveElement.h.

◆ sLTI_t

Definition at line 67 of file TEveElement.h.

Member Enumeration Documentation

◆ EChangeBits

Enumerator
kCBColorSelection 
kCBTransBBox 
kCBObjProps 
kCBVisibility 

Definition at line 380 of file TEveElement.h.

◆ ECompoundSelectionColorBits

Enumerator
kCSCBImplySelectAllChildren 
kCSCBTakeAnyParentAsMaster 
kCSCBApplyMainColorToAllChildren 
kCSCBApplyMainColorToMatchingChildren 
kCSCBApplyMainTransparencyToAllChildren 
kCSCBApplyMainTransparencyToMatchingChildren 

Definition at line 318 of file TEveElement.h.

◆ EDestruct

enum TEveElement::EDestruct
protected
Enumerator
kNone 
kStandard 
kAnnihilate 

Definition at line 328 of file TEveElement.h.

Constructor & Destructor Documentation

◆ TEveElement() [1/3]

TEveElement::TEveElement ( )

Default constructor.

Definition at line 61 of file TEveElement.cxx.

◆ TEveElement() [2/3]

TEveElement::TEveElement ( Color_t main_color)

Constructor.

Definition at line 97 of file TEveElement.cxx.

◆ TEveElement() [3/3]

TEveElement::TEveElement ( const TEveElement e)

Copy constructor.

Does shallow copy. For deep-cloning and children-cloning, see:

Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t dest
Base class for TEveUtil visualization elements, providing hierarchy management, rendering control and...
Definition TEveElement.h:36
virtual void CloneChildrenRecurse(TEveElement *dest, Int_t level=0) const
Clone children and attach them to the dest element.
virtual TEveElement * CloneElementRecurse(Int_t level=0) const
Clone elements and recurse 'level' deep over children.

'TRef fSource' is copied but 'void* UserData' is NOT. If the element is projectable, its projections are NOT copied.

Not implemented for most sub-classes, let us know. Note that sub-classes of TEveProjected are NOT and will NOT be copyable.

Definition at line 143 of file TEveElement.cxx.

◆ ~TEveElement()

TEveElement::~TEveElement ( )
virtual

Destructor.

Do not call this method directly, either call Destroy() or Annihilate(). See also DestroyElements() and AnnihilateElements() if you need to delete all children of an element.

Definition at line 186 of file TEveElement.cxx.

Member Function Documentation

◆ AcceptElement()

Bool_t TEveElement::AcceptElement ( TEveElement el)
virtual

Check if el can be added to this element.

In the base-class version we only make sure the new child is not equal to this.

Reimplemented in TEveElementList, TEveSceneInfo, and TEveSelection.

Definition at line 1316 of file TEveElement.cxx.

◆ AddElement()

void TEveElement::AddElement ( TEveElement el)
virtual

Add el to the list of children.

Reimplemented in TEveCompound, TEveSelection, and TEveViewerList.

Definition at line 1324 of file TEveElement.cxx.

◆ AddIntoListTree() [1/2]

TGListTreeItem * TEveElement::AddIntoListTree ( TGListTree ltree,
TEveElement parent 
)
virtual

Add this render element into ltree to all items belonging to parent.

Returns list-tree-item from the first register entry (but we use a set for that so it can be anything).

Definition at line 786 of file TEveElement.cxx.

◆ AddIntoListTree() [2/2]

TGListTreeItem * TEveElement::AddIntoListTree ( TGListTree ltree,
TGListTreeItem parent_lti 
)
virtual

Add this element into ltree to an already existing item parent_lti.

Children, if any, are added as below the newly created item. Returns the newly created list-tree-item.

Definition at line 759 of file TEveElement.cxx.

◆ AddIntoListTrees()

TGListTreeItem * TEveElement::AddIntoListTrees ( TEveElement parent)
virtual

Add this render element into all list-trees and all items belonging to parent.

Returns list-tree-item from the first register entry (but we use a set for that so it can be anything).

Definition at line 807 of file TEveElement.cxx.

◆ AddParent()

void TEveElement::AddParent ( TEveElement re)
virtual

Add re into the list parents.

Adding parent is subordinate to adding an element. This is an internal function.

Definition at line 635 of file TEveElement.cxx.

◆ AddStamp()

void TEveElement::AddStamp ( UChar_t  bits)
virtual

Add (bitwise or) given stamps to fChangeBits.

Register this element to gEve as stamped. This method is virtual so that sub-classes can add additional actions. The base-class method should still be called (or replicated).

Reimplemented in TEveGeoNode, TEveGeoTopNode, and TEveSceneInfo.

Definition at line 2035 of file TEveElement.cxx.

◆ Annihilate()

void TEveElement::Annihilate ( )
virtual

Optimized destruction without check of reference-count.

Parents are not notified about child destruction. The method should only be used when an element does not have more than one parent – otherwise an exception is thrown.

Definition at line 1649 of file TEveElement.cxx.

◆ AnnihilateElements()

void TEveElement::AnnihilateElements ( )
virtual

Annihilate elements.

Definition at line 1683 of file TEveElement.cxx.

◆ AnnihilateRecursively()

void TEveElement::AnnihilateRecursively ( )
protectedvirtual

Protected member function called from TEveElement::Annihilate().

Definition at line 1612 of file TEveElement.cxx.

◆ ApplyVizTag()

Bool_t TEveElement::ApplyVizTag ( const TString tag,
const TString fallback_tag = "" 
)

Set the VizTag, find model-element from the VizDB and copy visualization-parameters from it.

If the model is not found and fallback_tag is non-null, its search is attempted as well. For example: ApplyVizTag("TPC Clusters", "Clusters");

If the model-element can not be found a warning is printed and false is returned.

Definition at line 397 of file TEveElement.cxx.

◆ BeginChildren() [1/2]

List_i TEveElement::BeginChildren ( )
inline

Definition at line 166 of file TEveElement.h.

◆ BeginChildren() [2/2]

List_ci TEveElement::BeginChildren ( ) const
inline

Definition at line 168 of file TEveElement.h.

◆ BeginParents() [1/2]

List_i TEveElement::BeginParents ( )
inline

Definition at line 158 of file TEveElement.h.

◆ BeginParents() [2/2]

List_ci TEveElement::BeginParents ( ) const
inline

Definition at line 160 of file TEveElement.h.

◆ CanEditElement()

virtual Bool_t TEveElement::CanEditElement ( ) const
inlinevirtual

Reimplemented in TEveGeoNode, and TEveGeoTopNode.

Definition at line 254 of file TEveElement.h.

◆ CanEditMainColor()

virtual Bool_t TEveElement::CanEditMainColor ( ) const
inlinevirtual

Reimplemented in TEveGeoNode.

Definition at line 266 of file TEveElement.h.

◆ CanEditMainTrans()

virtual Bool_t TEveElement::CanEditMainTrans ( ) const
inlinevirtual

Definition at line 286 of file TEveElement.h.

◆ CanEditMainTransparency()

virtual Bool_t TEveElement::CanEditMainTransparency ( ) const
inlinevirtual

Reimplemented in TEveGeoNode, and TEveTriangleSet.

Definition at line 279 of file TEveElement.h.

◆ CheckReferenceCount()

void TEveElement::CheckReferenceCount ( const TEveException eh = "TEveElement::CheckReferenceCount ")
virtual

Check external references to this and eventually auto-destruct the render-element.

Reimplemented in TEveTrackPropagator.

Definition at line 659 of file TEveElement.cxx.

◆ Class()

static TClass * TEveElement::Class ( )
static
Returns
TClass describing this class

◆ Class_Name()

static const char * TEveElement::Class_Name ( )
static
Returns
Name of this class

◆ Class_Version()

static constexpr Version_t TEveElement::Class_Version ( )
inlinestaticconstexpr
Returns
Version of this class

Definition at line 422 of file TEveElement.h.

◆ ClearStamps()

virtual void TEveElement::ClearStamps ( )
inlinevirtual

Definition at line 404 of file TEveElement.h.

◆ CloneChildrenRecurse()

void TEveElement::CloneChildrenRecurse ( TEveElement dest,
Int_t  level = 0 
) const
virtual

Clone children and attach them to the dest element.

If level == 0, only the direct descendants are cloned (default). If level == -1, all the hierarchy is cloned.

Definition at line 249 of file TEveElement.cxx.

◆ CloneElement()

TEveElement * TEveElement::CloneElement ( ) const
virtual

Clone the element via copy constructor.

Should be implemented for all classes that require cloning support.

Reimplemented in TEveElementList, and TEvePointSet.

Definition at line 224 of file TEveElement.cxx.

◆ CloneElementRecurse()

TEveElement * TEveElement::CloneElementRecurse ( Int_t  level = 0) const
virtual

Clone elements and recurse 'level' deep over children.

  • If level == 0, only the element itself is cloned (default).
  • If level == -1, all the hierarchy is cloned.

Definition at line 234 of file TEveElement.cxx.

◆ CollectSceneParents()

void TEveElement::CollectSceneParents ( List_t scenes)
virtual

Collect all parents of class TEveScene.

This is needed to automatically detect which scenes need to be updated.

Overriden in TEveScene to include itself and return.

Reimplemented in TEveScene.

Definition at line 692 of file TEveElement.cxx.

◆ CollectSceneParentsFromChildren()

void TEveElement::CollectSceneParentsFromChildren ( List_t scenes,
TEveElement parent 
)
virtual

Collect scene-parents from all children.

This is needed to automatically detect which scenes need to be updated during/after a full sub-tree update. Argument parent specifies parent in traversed hierarchy for which we can skip the upwards search.

Definition at line 705 of file TEveElement.cxx.

◆ CopyVizParams()

void TEveElement::CopyVizParams ( const TEveElement el)
virtual

Copy visualization parameters from element el.

This method needs to be overriden by any class that introduces new parameters. Color is copied in sub-classes which define it. See, for example, TEvePointSet::CopyVizParams(), TEveLine::CopyVizParams() and TEveTrack::CopyVizParams().

Reimplemented in TEveLine, TEvePointSet, TEveShape, TEveStraightLineSet, TEveTrack, and TEveTrackList.

Definition at line 462 of file TEveElement.cxx.

◆ CopyVizParamsFromDB()

void TEveElement::CopyVizParamsFromDB ( )
virtual

Copy visualization parameters from the model-element fVizModel.

A warning is printed if the model-element fVizModel is not set.

Definition at line 475 of file TEveElement.cxx.

◆ CSCApplyMainColorToAllChildren()

void TEveElement::CSCApplyMainColorToAllChildren ( )
inline

Definition at line 371 of file TEveElement.h.

◆ CSCApplyMainColorToMatchingChildren()

void TEveElement::CSCApplyMainColorToMatchingChildren ( )
inline

Definition at line 372 of file TEveElement.h.

◆ CSCApplyMainTransparencyToAllChildren()

void TEveElement::CSCApplyMainTransparencyToAllChildren ( )
inline

Definition at line 373 of file TEveElement.h.

◆ CSCApplyMainTransparencyToMatchingChildren()

void TEveElement::CSCApplyMainTransparencyToMatchingChildren ( )
inline

Definition at line 374 of file TEveElement.h.

◆ CSCImplySelectAllChildren()

void TEveElement::CSCImplySelectAllChildren ( )
inline

Definition at line 369 of file TEveElement.h.

◆ CSCTakeAnyParentAsMaster()

void TEveElement::CSCTakeAnyParentAsMaster ( )
inline

Definition at line 370 of file TEveElement.h.

◆ DecDenyDestroy()

void TEveElement::DecDenyDestroy ( )

Decreases the deny-destroy count of the element.

Call this after releasing an external pointer to the element.

Definition at line 1803 of file TEveElement.cxx.

◆ DecImpliedHighlighted()

void TEveElement::DecImpliedHighlighted ( )
virtual

Decrease element's implied-highlight count. Stamp appropriately.

Definition at line 1960 of file TEveElement.cxx.

◆ DecImpliedSelected()

void TEveElement::DecImpliedSelected ( )
virtual

Decrease element's implied-selection count. Stamp appropriately.

Definition at line 1915 of file TEveElement.cxx.

◆ DeclFileName()

static const char * TEveElement::DeclFileName ( )
inlinestatic
Returns
Name of the file containing the class declaration

Definition at line 422 of file TEveElement.h.

◆ DecParentIgnoreCnt()

void TEveElement::DecParentIgnoreCnt ( )

Decrease number of parents ignored in reference-counting.

Definition at line 1832 of file TEveElement.cxx.

◆ Destroy()

void TEveElement::Destroy ( )
virtual

Destroy this element.

Throws an exception if deny-destroy is in force. This method should be called instead of a destructor. Note that an exception will be thrown if the element has been protected against destruction with IncDenyDestroy().

Definition at line 1700 of file TEveElement.cxx.

◆ DestroyElements()

void TEveElement::DestroyElements ( )
virtual

Destroy all children of this element.

Definition at line 1733 of file TEveElement.cxx.

◆ DestroyListSubTree()

void TEveElement::DestroyListSubTree ( TGListTree ltree,
TGListTreeItem parent 
)
virtual

Destroy sub-tree under item 'parent' in list-tree 'ltree'.

Definition at line 742 of file TEveElement.cxx.

◆ DestroyMainTrans()

void TEveElement::DestroyMainTrans ( )
virtual

Destroy the main transformation matrix, it will always be taken as identity.

Editing of transformation parameters is disabled.

Definition at line 1287 of file TEveElement.cxx.

◆ DestroyOrWarn()

void TEveElement::DestroyOrWarn ( )
virtual

Destroy this element. Prints a warning if deny-destroy is in force.

Definition at line 1716 of file TEveElement.cxx.

◆ DisableListElements()

void TEveElement::DisableListElements ( Bool_t  rnr_self = kFALSE,
Bool_t  rnr_children = kFALSE 
)

Disable rendering of children and their list contents.

Arguments control how to set self/child rendering.

Same as above function, but default arguments are different. This is convenient for calls via context menu.

Definition at line 1598 of file TEveElement.cxx.

◆ DumpSourceObject()

void TEveElement::DumpSourceObject ( ) const

Call Dump() on source object.

Throws an exception if it is not set.

Definition at line 967 of file TEveElement.cxx.

◆ ElementChanged()

void TEveElement::ElementChanged ( Bool_t  update_scenes = kTRUE,
Bool_t  redraw = kFALSE 
)
virtual

Call this after an element has been changed so that the state can be propagated around the framework.

Reimplemented in TEveTrackPropagator.

Definition at line 1852 of file TEveElement.cxx.

◆ EnableListElements()

void TEveElement::EnableListElements ( Bool_t  rnr_self = kTRUE,
Bool_t  rnr_children = kTRUE 
)

Enable rendering of children and their list contents.

Arguments control how to set self/child rendering.

Definition at line 1580 of file TEveElement.cxx.

◆ EndChildren() [1/2]

List_i TEveElement::EndChildren ( )
inline

Definition at line 167 of file TEveElement.h.

◆ EndChildren() [2/2]

List_ci TEveElement::EndChildren ( ) const
inline

Definition at line 169 of file TEveElement.h.

◆ EndParents() [1/2]

List_i TEveElement::EndParents ( )
inline

Definition at line 159 of file TEveElement.h.

◆ EndParents() [2/2]

List_ci TEveElement::EndParents ( ) const
inline

Definition at line 161 of file TEveElement.h.

◆ ExpandIntoListTree()

void TEveElement::ExpandIntoListTree ( TGListTree ltree,
TGListTreeItem parent 
)
virtual

Populates parent with elements.

parent must be an already existing representation of this. Returns number of inserted elements. If parent already has children, it does nothing.

Element can be inserted in a list-tree several times, thus we can not search through fItems to get parent here. Anyhow, it is probably known as it must have been selected by the user.

Reimplemented in TEveGeoNode.

Definition at line 729 of file TEveElement.cxx.

◆ ExportSourceObjectToCINT()

void TEveElement::ExportSourceObjectToCINT ( char *  var_name) const

Export source object to CINT with given name for the variable.

Throws an exception if it is not set.

Definition at line 997 of file TEveElement.cxx.

◆ ExportToCINT()

void TEveElement::ExportToCINT ( char *  var_name)
virtual

Export render-element to CINT with variable name var_name.

Definition at line 957 of file TEveElement.cxx.

◆ FillImpliedSelectedSet()

void TEveElement::FillImpliedSelectedSet ( Set_t impSelSet)
virtual

Populate set impSelSet with derived / dependant elements.

If this is a TEveProjectable, the projected replicas are added to the set. Thus it does not have to be reimplemented for each sub-class of TEveProjected.

Note that this also takes care of projections of TEveCompound class, which is also a projectable.

Reimplemented in TEveCaloData, and TEveCompound.

Definition at line 1989 of file TEveElement.cxx.

◆ FindChild() [1/2]

TEveElement * TEveElement::FindChild ( const TString name,
const TClass cls = nullptr 
)

Find the first child with given name.

If cls is specified (non 0), it is also checked.

Returns 0 if not found.

Definition at line 1480 of file TEveElement.cxx.

◆ FindChild() [2/2]

TEveElement * TEveElement::FindChild ( TPRegexp regexp,
const TClass cls = nullptr 
)

Find the first child whose name matches regexp.

If cls is specified (non 0), it is also checked.

Returns 0 if not found.

Definition at line 1499 of file TEveElement.cxx.

◆ FindChildren() [1/2]

Int_t TEveElement::FindChildren ( List_t matches,
const TString name,
const TClass cls = nullptr 
)

Find all children with given name and append them to matches list.

If class is specified (non 0), it is also checked.

Returns number of elements added to the list.

Definition at line 1518 of file TEveElement.cxx.

◆ FindChildren() [2/2]

Int_t TEveElement::FindChildren ( List_t matches,
TPRegexp regexp,
const TClass cls = nullptr 
)

Find all children whose name matches regexp and append them to matches list.

Returns number of elements added to the list.

Definition at line 1542 of file TEveElement.cxx.

◆ FindItem() [1/2]

TEveElement::sLTI_i TEveElement::FindItem ( TGListTree ltree)
virtual

Find any list-tree-item of this element in list-tree 'ltree'.

Note that each element can be placed into the same list-tree on several postions.

Definition at line 883 of file TEveElement.cxx.

◆ FindItem() [2/2]

TEveElement::sLTI_i TEveElement::FindItem ( TGListTree ltree,
TGListTreeItem parent_lti 
)
virtual

Find list-tree-item of this element with given parent list-tree-item.

Definition at line 895 of file TEveElement.cxx.

◆ FindListTreeItem() [1/2]

TGListTreeItem * TEveElement::FindListTreeItem ( TGListTree ltree)
virtual

Find any list-tree-item of this element in list-tree 'ltree'.

Note that each element can be placed into the same list-tree on several postions.

Definition at line 909 of file TEveElement.cxx.

◆ FindListTreeItem() [2/2]

TGListTreeItem * TEveElement::FindListTreeItem ( TGListTree ltree,
TGListTreeItem parent_lti 
)
virtual

Find list-tree-item of this element with given parent list-tree-item.

Definition at line 921 of file TEveElement.cxx.

◆ FindVizModel()

Bool_t TEveElement::FindVizModel ( )

Find model element in VizDB that corresponds to previously assigned fVizTag and set fVizModel accordingly.

If the tag is not found in VizDB, the old model-element is kept and false is returned.

Definition at line 374 of file TEveElement.cxx.

◆ FirstChild()

TEveElement * TEveElement::FirstChild ( ) const

Returns the first child element or 0 if the list is empty.

Definition at line 1563 of file TEveElement.cxx.

◆ ForwardEdit()

TEveElement * TEveElement::ForwardEdit ( )
virtual

Returns element to be displayed in GUI editor on click.

If value is zero the displayed object will follow rules in TEveSelection.

Reimplemented in TEveCaloViz.

Definition at line 1884 of file TEveElement.cxx.

◆ ForwardSelection()

TEveElement * TEveElement::ForwardSelection ( )
virtual

Returns element to be selected on click.

If value is zero the selected object will follow rules in TEveSelection.

Reimplemented in TEveCaloViz.

Definition at line 1874 of file TEveElement.cxx.

◆ GetChangeBits()

UChar_t TEveElement::GetChangeBits ( ) const
inline

Definition at line 406 of file TEveElement.h.

◆ GetCompound()

TEveCompound * TEveElement::GetCompound ( )
inline

Definition at line 148 of file TEveElement.h.

◆ GetDenyDestroy()

Int_t TEveElement::GetDenyDestroy ( ) const

Returns the number of times deny-destroy has been requested on the element.

Definition at line 1785 of file TEveElement.cxx.

◆ GetDestroyOnZeroRefCnt()

Bool_t TEveElement::GetDestroyOnZeroRefCnt ( ) const

Returns state of flag determining if the element will be destroyed when reference count reaches zero.

This is true by default.

Definition at line 1766 of file TEveElement.cxx.

◆ GetEditorObject()

virtual TObject * TEveElement::GetEditorObject ( const TEveException eh) const
inlinevirtual

Reimplemented in TEveViewer.

Definition at line 199 of file TEveElement.h.

◆ GetElementName()

const char * TEveElement::GetElementName ( ) const
virtual

Virtual function for retrieving name of the element.

Here we attempt to cast the assigned object into TNamed and call GetName() there.

Reimplemented in TEveElementList, TEveGeoNode, and TEvePointSet.

Definition at line 265 of file TEveElement.cxx.

◆ GetElementTitle()

const char * TEveElement::GetElementTitle ( ) const
virtual

Virtual function for retrieving title of the render-element.

Here we attempt to cast the assigned object into TNamed and call GetTitle() there.

Reimplemented in TEveElementList, TEveGeoNode, and TEvePointSet.

Definition at line 278 of file TEveElement.cxx.

◆ GetHighlightTooltip()

virtual TString TEveElement::GetHighlightTooltip ( )
inlinevirtual

Reimplemented in TEveCaloData, and TEveDigitSet.

Definition at line 125 of file TEveElement.h.

◆ GetListTreeCheckBoxIcon()

const TGPicture * TEveElement::GetListTreeCheckBoxIcon ( )
virtual

Returns list-tree-item check-box picture appropriate for given rendering state.

Definition at line 2054 of file TEveElement.cxx.

◆ GetListTreeIcon()

const TGPicture * TEveElement::GetListTreeIcon ( Bool_t  open = kFALSE)
virtual

Returns pointer to first listtreeicon.

Reimplemented in TEveLine, TEvePointSet, TEveProjectionAxes, TEveScene, TEveText, TEveTrack, and TEveViewer.

Definition at line 2044 of file TEveElement.cxx.

◆ GetMainColor()

virtual Color_t TEveElement::GetMainColor ( ) const
inlinevirtual

Definition at line 272 of file TEveElement.h.

◆ GetMainColorPtr()

Color_t * TEveElement::GetMainColorPtr ( ) const
inline

Definition at line 268 of file TEveElement.h.

◆ GetMainTransparency()

virtual Char_t TEveElement::GetMainTransparency ( ) const
inlinevirtual

Reimplemented in TEveGeoNode.

Definition at line 281 of file TEveElement.h.

◆ GetMaster()

TEveElement * TEveElement::GetMaster ( )

Returns the master element - that is:

  • master of projectable, if this is a projected;
  • master of compound, if fCompound is set;
  • master of first compound parent, if kSCBTakeAnyParentAsMaster bit is set; If non of the above is true, this is returned.

Definition at line 609 of file TEveElement.cxx.

◆ GetNItems()

virtual Int_t TEveElement::GetNItems ( ) const
inlinevirtual

Definition at line 224 of file TEveElement.h.

◆ GetObject()

TObject * TEveElement::GetObject ( const TEveException eh) const
virtual

Get a TObject associated with this render-element.

Most cases uses double-inheritance from TEveElement and TObject so we just do a dynamic cast here. If some TEveElement descendant implements a different scheme, this virtual method should be overriden accordingly.

Reimplemented in TEveArrow, TEveDigitSet, TEveGeoNode, TEveGeoShape, TEvePointSet, and TEveElementList.

Definition at line 937 of file TEveElement.cxx.

◆ GetParentIgnoreCnt()

Int_t TEveElement::GetParentIgnoreCnt ( ) const

Get number of parents that should be ignored in doing reference-counting.

For example, this is used when subscribing an element to a visualization-database model object.

Definition at line 1816 of file TEveElement.cxx.

◆ GetRenderObject()

virtual TObject * TEveElement::GetRenderObject ( const TEveException eh) const
inlinevirtual

Definition at line 200 of file TEveElement.h.

◆ GetRnrAnything()

virtual Bool_t TEveElement::GetRnrAnything ( ) const
inlinevirtual

Definition at line 259 of file TEveElement.h.

◆ GetRnrChildren()

virtual Bool_t TEveElement::GetRnrChildren ( ) const
inlinevirtual

Definition at line 257 of file TEveElement.h.

◆ GetRnrSelf()

virtual Bool_t TEveElement::GetRnrSelf ( ) const
inlinevirtual

Definition at line 256 of file TEveElement.h.

◆ GetRnrState()

virtual Bool_t TEveElement::GetRnrState ( ) const
inlinevirtual

Definition at line 258 of file TEveElement.h.

◆ GetSelectedLevel()

UChar_t TEveElement::GetSelectedLevel ( ) const
virtual

Get selection level, needed for rendering selection and highlight feedback.

This should go to TAtt3D.

Definition at line 2003 of file TEveElement.cxx.

◆ GetSource()

TRef & TEveElement::GetSource ( )
inline

Definition at line 296 of file TEveElement.h.

◆ GetSourceObject()

TObject * TEveElement::GetSourceObject ( ) const
inline

Definition at line 297 of file TEveElement.h.

◆ GetUserData()

void * TEveElement::GetUserData ( ) const
inline

Definition at line 304 of file TEveElement.h.

◆ GetVizModel()

TEveElement * TEveElement::GetVizModel ( ) const
inline

Definition at line 134 of file TEveElement.h.

◆ GetVizTag()

const TString & TEveElement::GetVizTag ( ) const
inline

Definition at line 131 of file TEveElement.h.

◆ HandleElementPaste()

Bool_t TEveElement::HandleElementPaste ( TEveElement el)
virtual

React to element being pasted or dnd-ed.

Return true if redraw is needed.

Reimplemented in TEveProjectionManager, TEveSceneInfo, and TEveViewer.

Definition at line 1842 of file TEveElement.cxx.

◆ HasChild()

Bool_t TEveElement::HasChild ( TEveElement el)

Check if element el is a child of this element.

Definition at line 1469 of file TEveElement.cxx.

◆ HasChildren()

Bool_t TEveElement::HasChildren ( ) const
inline

Definition at line 171 of file TEveElement.h.

◆ HasMainColor()

virtual Bool_t TEveElement::HasMainColor ( ) const
inlinevirtual

Definition at line 271 of file TEveElement.h.

◆ HasMainTrans()

virtual Bool_t TEveElement::HasMainTrans ( ) const
inlinevirtual

Definition at line 287 of file TEveElement.h.

◆ HasParents()

Bool_t TEveElement::HasParents ( ) const
inline

Definition at line 163 of file TEveElement.h.

◆ HighlightElement()

void TEveElement::HighlightElement ( Bool_t  state)
virtual

Set element's highlight state. Stamp appropriately.

Definition at line 1937 of file TEveElement.cxx.

◆ IncDenyDestroy()

void TEveElement::IncDenyDestroy ( )

Increases the deny-destroy count of the element.

Call this if you store an external pointer to the element.

Definition at line 1794 of file TEveElement.cxx.

◆ IncImpliedHighlighted()

void TEveElement::IncImpliedHighlighted ( )
virtual

Increase element's implied-highlight count. Stamp appropriately.

Definition at line 1951 of file TEveElement.cxx.

◆ IncImpliedSelected()

void TEveElement::IncImpliedSelected ( )
virtual

Increase element's implied-selection count. Stamp appropriately.

Definition at line 1906 of file TEveElement.cxx.

◆ IncParentIgnoreCnt()

void TEveElement::IncParentIgnoreCnt ( )

Increase number of parents ignored in reference-counting.

Definition at line 1824 of file TEveElement.cxx.

◆ InitMainTrans()

void TEveElement::InitMainTrans ( Bool_t  can_edit = kTRUE)
virtual

Initialize the main transformation to identity matrix.

If can_edit is true (default), the user will be able to edit the transformation parameters via TEveElementEditor.

Definition at line 1274 of file TEveElement.cxx.

◆ IsA()

◆ IsPickable()

Bool_t TEveElement::IsPickable ( ) const
inline

Definition at line 341 of file TEveElement.h.

◆ LastChild()

TEveElement * TEveElement::LastChild ( ) const

Returns the last child element or 0 if the list is empty.

Definition at line 1571 of file TEveElement.cxx.

◆ NameTitleChanged()

void TEveElement::NameTitleChanged ( )
virtual

Virtual function called when a name or title of the element has been changed.

If you override this, call also the version of your direct base-class.

Reimplemented in TEveWindow.

Definition at line 342 of file TEveElement.cxx.

◆ NumChildren()

Int_t TEveElement::NumChildren ( ) const
inline

Definition at line 170 of file TEveElement.h.

◆ NumParents()

Int_t TEveElement::NumParents ( ) const
inline

Definition at line 162 of file TEveElement.h.

◆ operator=()

TEveElement & TEveElement::operator= ( const TEveElement )
privatedelete

◆ PadPaint()

void TEveElement::PadPaint ( Option_t option)
virtual

Paint self and/or children into currently active pad.

Definition at line 1012 of file TEveElement.cxx.

◆ PaintStandard()

void TEveElement::PaintStandard ( TObject id)
virtual

Paint object – a generic implementation for EVE elements.

This supports direct rendering using a dedicated GL class. Override TObject::Paint() in sub-classes if different behaviour is required.

Definition at line 1034 of file TEveElement.cxx.

◆ PreDeleteElement()

void TEveElement::PreDeleteElement ( )
protectedvirtual

Externally assigned and controlled user data.

Called before the element is deleted, thus offering the last chance to detach from acquired resources and from the framework itself.

Here the request is just passed to TEveManager. If you override it, make sure to call base-class version.

Reimplemented in TEveWindow.

Definition at line 215 of file TEveElement.cxx.

◆ PrintSourceObject()

void TEveElement::PrintSourceObject ( ) const

Call Print() on source object.

Throws an exception if it is not set.

Definition at line 982 of file TEveElement.cxx.

◆ ProjectAllChildren()

void TEveElement::ProjectAllChildren ( Bool_t  same_depth = kTRUE)
virtual

If this is a projectable, loop over all projected replicas and add the projected image of all children there.

This is supposed to be called after you destroy all children and then add new ones after this element has already been projected. You might also want to call RecheckImpliedSelections() on this element.

If 'same_depth' flag is true, the same depth as for the projected element is used in every projection. Otherwise current depth of each relevant projection-manager is used.

Definition at line 1448 of file TEveElement.cxx.

◆ ProjectChild()

void TEveElement::ProjectChild ( TEveElement el,
Bool_t  same_depth = kTRUE 
)
virtual

If this is a projectable, loop over all projected replicas and add the projected image of child 'el' there.

This is supposed to be called after you add a child to a projectable after it has already been projected. You might also want to call RecheckImpliedSelections() on this element or 'el'.

If 'same_depth' flag is true, the same depth as for parent object is used in every projection. Otherwise current depth of each relevant projection-manager is used.

Definition at line 1418 of file TEveElement.cxx.

◆ PropagateMainColorToProjecteds()

void TEveElement::PropagateMainColorToProjecteds ( Color_t  color,
Color_t  old_color 
)
virtual

Propagate color to projected elements.

Definition at line 1198 of file TEveElement.cxx.

◆ PropagateMainTransparencyToProjecteds()

void TEveElement::PropagateMainTransparencyToProjecteds ( Char_t  t,
Char_t  old_t 
)
virtual

Propagate transparency to projected elements.

Definition at line 1236 of file TEveElement.cxx.

◆ PropagateRnrStateToProjecteds()

void TEveElement::PropagateRnrStateToProjecteds ( )
virtual

Propagate render state to the projected replicas of this element.

Maybe this should be optional on gEve/element level.

Definition at line 1143 of file TEveElement.cxx.

◆ PropagateVizParamsToElements()

void TEveElement::PropagateVizParamsToElements ( TEveElement el = nullptr)
virtual

Propagate visualization parameters from element el (defaulting to this) to all elements (children).

The primary use of this is for model-elements from visualization-parameter database.

Definition at line 443 of file TEveElement.cxx.

◆ PropagateVizParamsToProjecteds()

void TEveElement::PropagateVizParamsToProjecteds ( )
virtual

Propagate visualization parameters to dependent elements.

MainColor is propagated independently in SetMainColor(). In this case, as fMainColor is a pointer to Color_t, it should be set in TProperClass::CopyVizParams().

Render state is not propagated. Maybe it should be, at least optionally.

Definition at line 427 of file TEveElement.cxx.

◆ PtrMainTrans()

TEveTrans * TEveElement::PtrMainTrans ( Bool_t  create = kTRUE)
virtual

Return pointer to main transformation.

If 'create' flag is set (default) it is created if not yet existing.

Definition at line 1249 of file TEveElement.cxx.

◆ RecheckImpliedSelections()

void TEveElement::RecheckImpliedSelections ( )

Call this if it is possible that implied-selection or highlight has changed for this element or for implied-selection this element is member of and you want to maintain consistent selection state.

This can happen if you add elements into compounds in response to user-interaction.

Definition at line 2020 of file TEveElement.cxx.

◆ RefChildren()

const List_t & TEveElement::RefChildren ( ) const
inline

Definition at line 165 of file TEveElement.h.

◆ RefMainTrans()

TEveTrans & TEveElement::RefMainTrans ( )
virtual

Return reference to main transformation.

It is created if not yet existing.

Definition at line 1261 of file TEveElement.cxx.

◆ RemoveElement()

void TEveElement::RemoveElement ( TEveElement el)
virtual

Remove el from the list of children.

Reimplemented in TEveSelection.

Definition at line 1341 of file TEveElement.cxx.

◆ RemoveElementLocal()

void TEveElement::RemoveElementLocal ( TEveElement el)
virtual

Perform additional local removal of el.

Called from RemoveElement() which does whole untangling. Put into special function as framework-related handling of element removal should really be common to all classes and clearing of local structures happens in between removal of list-tree-items and final removal. If you override this, you should also override RemoveElementsLocal().

Reimplemented in TEveCompound, TEvePointSetArray, TEveSelection, TEveViewer, and TEveViewerList.

Definition at line 1360 of file TEveElement.cxx.

◆ RemoveElements()

void TEveElement::RemoveElements ( )
virtual

Remove all elements.

This assumes removing of all elements can be done more efficiently then looping over them and removing them one by one.

Reimplemented in TEveSelection.

Definition at line 1389 of file TEveElement.cxx.

◆ RemoveElementsInternal()

void TEveElement::RemoveElementsInternal ( )
protectedvirtual

Remove all elements.

This assumes removing of all elements can be done more efficiently then looping over them and removing one by one. This protected function performs the removal on the level of TEveElement.

Definition at line 1370 of file TEveElement.cxx.

◆ RemoveElementsLocal()

void TEveElement::RemoveElementsLocal ( )
virtual

Perform additional local removal of all elements.

See comment to RemoveElementlocal(TEveElement*).

Reimplemented in TEveCompound, TEvePointSetArray, TEveSelection, TEveViewer, and TEveViewerList.

Definition at line 1402 of file TEveElement.cxx.

◆ RemoveFromListTree()

Bool_t TEveElement::RemoveFromListTree ( TGListTree ltree,
TGListTreeItem parent_lti 
)
virtual

Remove element from list-tree 'ltree' where its parent item is 'parent_lti'.

Returns kTRUE if the item was found and removed, kFALSE otherwise.

Definition at line 823 of file TEveElement.cxx.

◆ RemoveFromListTrees()

Int_t TEveElement::RemoveFromListTrees ( TEveElement parent)
virtual

Remove element from all list-trees where 'parent' is the user-data of the parent list-tree-item.

Definition at line 848 of file TEveElement.cxx.

◆ RemoveParent()

void TEveElement::RemoveParent ( TEveElement re)
virtual

Remove re from the list of parents.

Removing parent is subordinate to removing an element. This is an internal function.

Definition at line 645 of file TEveElement.cxx.

◆ ResetAllCSCBits()

void TEveElement::ResetAllCSCBits ( )
inline

Definition at line 368 of file TEveElement.h.

◆ ResetCSCBits()

void TEveElement::ResetCSCBits ( UChar_t  f)
inline

Definition at line 365 of file TEveElement.h.

◆ SaveVizParams()

void TEveElement::SaveVizParams ( std::ostream &  out,
const TString tag,
const TString var 
)

Save visualization parameters for this element with given tag.

This function creates the instantiation code, calls virtual WriteVizParams() and, at the end, writes out the code for registration of the model into the VizDB.

Definition at line 494 of file TEveElement.cxx.

◆ SelectElement()

void TEveElement::SelectElement ( Bool_t  state)
virtual

Set element's selection state. Stamp appropriately.

Definition at line 1892 of file TEveElement.cxx.

◆ SetCompound()

void TEveElement::SetCompound ( TEveCompound c)
inline

Definition at line 149 of file TEveElement.h.

◆ SetCSCBits()

void TEveElement::SetCSCBits ( UChar_t  f)
inline

Definition at line 364 of file TEveElement.h.

◆ SetDestroyOnZeroRefCnt()

void TEveElement::SetDestroyOnZeroRefCnt ( Bool_t  d)

Sets the state of flag determining if the element will be destroyed when reference count reaches zero.

This is true by default.

Definition at line 1776 of file TEveElement.cxx.

◆ SetEditMainColor()

void TEveElement::SetEditMainColor ( Bool_t  x)
inline

Definition at line 267 of file TEveElement.h.

◆ SetEditMainTransparency()

void TEveElement::SetEditMainTransparency ( Bool_t  x)
inline

Definition at line 280 of file TEveElement.h.

◆ SetElementName()

void TEveElement::SetElementName ( const char *  name)
virtual

Virtual function for setting of name of an element.

Here we attempt to cast the assigned object into TNamed and call SetName() there. If you override this call NameTitleChanged() from there.

Reimplemented in TEvePointSet, and TEveElementList.

Definition at line 292 of file TEveElement.cxx.

◆ SetElementNameTitle()

void TEveElement::SetElementNameTitle ( const char *  name,
const char *  title 
)
virtual

Virtual function for setting of name and title of render element.

Here we attempt to cast the assigned object into TNamed and call SetNameTitle() there. If you override this call NameTitleChanged() from there.

Reimplemented in TEvePointSet, and TEveElementList.

Definition at line 326 of file TEveElement.cxx.

◆ SetElementTitle()

void TEveElement::SetElementTitle ( const char *  title)
virtual

Virtual function for setting of title of an element.

Here we attempt to cast the assigned object into TNamed and call SetTitle() there. If you override this call NameTitleChanged() from there.

Reimplemented in TEvePointSet, and TEveElementList.

Definition at line 309 of file TEveElement.cxx.

◆ SetMainAlpha()

void TEveElement::SetMainAlpha ( Float_t  alpha)

Set main-transparency via float alpha variable.

Value of alpha is clamped t0 [0, 1].

Definition at line 1226 of file TEveElement.cxx.

◆ SetMainColor()

void TEveElement::SetMainColor ( Color_t  color)
virtual

Set main color of the element.

List-tree-items are updated.

Reimplemented in TEveTrackList, TEveCompound, TEveCompoundProjected, TEveDigitSet, TEveGeoNode, and TEveShape.

Definition at line 1158 of file TEveElement.cxx.

◆ SetMainColorPixel()

void TEveElement::SetMainColorPixel ( Pixel_t  pixel)

Convert pixel to Color_t and call SetMainColor().

Definition at line 1174 of file TEveElement.cxx.

◆ SetMainColorPtr()

void TEveElement::SetMainColorPtr ( Color_t color)
inline

Definition at line 269 of file TEveElement.h.

◆ SetMainColorRGB() [1/2]

void TEveElement::SetMainColorRGB ( Float_t  r,
Float_t  g,
Float_t  b 
)

Convert RGB values to Color_t and call SetMainColor.

Definition at line 1190 of file TEveElement.cxx.

◆ SetMainColorRGB() [2/2]

void TEveElement::SetMainColorRGB ( UChar_t  r,
UChar_t  g,
UChar_t  b 
)

Convert RGB values to Color_t and call SetMainColor.

Definition at line 1182 of file TEveElement.cxx.

◆ SetMainTransparency()

void TEveElement::SetMainTransparency ( Char_t  t)
virtual

Set main-transparency.

Transparency is clamped to [0, 100].

Reimplemented in TEveCompound, and TEveGeoNode.

Definition at line 1211 of file TEveElement.cxx.

◆ SetPickable()

void TEveElement::SetPickable ( Bool_t  p)
inline

Definition at line 342 of file TEveElement.h.

◆ SetPickableRecursively()

void TEveElement::SetPickableRecursively ( Bool_t  p)

Set pickable state on the element and all its children.

Definition at line 1860 of file TEveElement.cxx.

◆ SetRnrChildren()

Bool_t TEveElement::SetRnrChildren ( Bool_t  rnr)
virtual

Set render state of this element's children, i.e.

if they will be published on next scene update pass. Returns true if the state has changed.

Definition at line 1083 of file TEveElement.cxx.

◆ SetRnrSelf()

Bool_t TEveElement::SetRnrSelf ( Bool_t  rnr)
virtual

Set render state of this element, i.e.

if it will be published on next scene update pass. Returns true if the state has changed.

Definition at line 1061 of file TEveElement.cxx.

◆ SetRnrSelfChildren()

Bool_t TEveElement::SetRnrSelfChildren ( Bool_t  rnr_self,
Bool_t  rnr_children 
)
virtual

Set state for rendering of this element and its children.

Returns true if the state has changed.

Definition at line 1104 of file TEveElement.cxx.

◆ SetRnrState()

Bool_t TEveElement::SetRnrState ( Bool_t  rnr)
virtual

Set render state of this element and of its children to the same value.

Returns true if the state has changed.

Definition at line 1127 of file TEveElement.cxx.

◆ SetSourceObject()

void TEveElement::SetSourceObject ( TObject o)
inline

Definition at line 298 of file TEveElement.h.

◆ SetTransMatrix() [1/2]

void TEveElement::SetTransMatrix ( const TGeoMatrix mat)
virtual

Set transformation matrix from TGeo's matrix.

Definition at line 1305 of file TEveElement.cxx.

◆ SetTransMatrix() [2/2]

void TEveElement::SetTransMatrix ( Double_t carr)
virtual

Set transformation matrix from column-major array.

Definition at line 1297 of file TEveElement.cxx.

◆ SetUserData()

void TEveElement::SetUserData ( void *  ud)
inline

Definition at line 305 of file TEveElement.h.

◆ SetVizModel()

void TEveElement::SetVizModel ( TEveElement model)

Set visualization-parameter model element.

Calling of this function from outside of EVE should in principle be avoided as it can lead to dis-synchronization of viz-tag and viz-model.

Definition at line 355 of file TEveElement.cxx.

◆ SetVizTag()

void TEveElement::SetVizTag ( const TString tag)
inline

Definition at line 132 of file TEveElement.h.

◆ SingleRnrState()

virtual Bool_t TEveElement::SingleRnrState ( ) const
inlinevirtual

Reimplemented in TEveGeoTopNode, TEveScene, and TEveSceneInfo.

Definition at line 255 of file TEveElement.h.

◆ SpawnEditor()

void TEveElement::SpawnEditor ( )

Show GUI editor for this object.

This is forwarded to TEveManager::EditElement().

Definition at line 949 of file TEveElement.cxx.

◆ StampColorSelection()

void TEveElement::StampColorSelection ( )
inline

Definition at line 397 of file TEveElement.h.

◆ StampObjProps()

void TEveElement::StampObjProps ( )
inline

Definition at line 399 of file TEveElement.h.

◆ StampTransBBox()

void TEveElement::StampTransBBox ( )
inline

Definition at line 398 of file TEveElement.h.

◆ StampVisibility()

void TEveElement::StampVisibility ( )
inline

Definition at line 400 of file TEveElement.h.

◆ Streamer()

◆ StreamerNVirtual()

void TEveElement::StreamerNVirtual ( TBuffer ClassDef_StreamerNVirtual_b)
inline

Definition at line 422 of file TEveElement.h.

◆ TestCSCBits()

Bool_t TEveElement::TestCSCBits ( UChar_t  f) const
inline

Definition at line 366 of file TEveElement.h.

◆ ToString()

const char * TEveElement::ToString ( Bool_t  b)
staticprotected

Convert Bool_t to string - kTRUE or kFALSE.

Needed in WriteVizParams().

Definition at line 2067 of file TEveElement.cxx.

◆ UnHighlighted()

void TEveElement::UnHighlighted ( )
virtual

Virtual function called when both fHighlighted is false and fImpliedHighlighted is 0.

Nothing is done in this base-class version

Reimplemented in TEveCaloData, and TEveDigitSet.

Definition at line 1975 of file TEveElement.cxx.

◆ UnSelected()

void TEveElement::UnSelected ( )
virtual

Virtual function called when both fSelected is false and fImpliedSelected is 0.

Nothing is done in this base-class version

Reimplemented in TEveCaloData, and TEveDigitSet.

Definition at line 1930 of file TEveElement.cxx.

◆ VizDB_Apply()

void TEveElement::VizDB_Apply ( const char *  tag)

Set visual parameters for this object for given tag.

Definition at line 535 of file TEveElement.cxx.

◆ VizDB_Insert()

void TEveElement::VizDB_Insert ( const char *  tag,
Bool_t  replace = kTRUE,
Bool_t  update = kTRUE 
)

Create a replica of element and insert it into VizDB with given tag.

If replace is true an existing element with the same tag will be replaced. If update is true, existing client of tag will be updated.

Definition at line 586 of file TEveElement.cxx.

◆ VizDB_Reapply()

void TEveElement::VizDB_Reapply ( )

Reset visual parameters for this object from VizDB.

The model object must be already set.

Definition at line 548 of file TEveElement.cxx.

◆ VizDB_UpdateModel()

void TEveElement::VizDB_UpdateModel ( Bool_t  update = kTRUE)

Copy visual parameters from this element to viz-db model.

If update is set, all clients of the model will be updated to the new value. A warning is printed if the model-element fVizModel is not set.

Definition at line 564 of file TEveElement.cxx.

◆ WriteVizParams()

void TEveElement::WriteVizParams ( std::ostream &  out,
const TString var 
)
virtual

Write-out visual parameters for this object.

This is a virtual function and all sub-classes are required to first call the base-element version. The name of the element pointer is 'x%03d', due to cint limitations. Three spaces should be used for indentation, same as in SavePrimitive() methods.

Reimplemented in TEveLine, TEvePointSet, TEveShape, TEveStraightLineSet, TEveTrack, and TEveTrackList.

Definition at line 521 of file TEveElement.cxx.

Friends And Related Symbol Documentation

◆ TEveManager

friend class TEveManager
friend

Definition at line 37 of file TEveElement.h.

Member Data Documentation

◆ fCanEditMainColor

Bool_t TEveElement::fCanEditMainColor
protected

Definition at line 94 of file TEveElement.h.

◆ fCanEditMainTrans

Bool_t TEveElement::fCanEditMainTrans
protected

Definition at line 96 of file TEveElement.h.

◆ fCanEditMainTransparency

Bool_t TEveElement::fCanEditMainTransparency
protected

Definition at line 95 of file TEveElement.h.

◆ fChangeBits

UChar_t TEveElement::fChangeBits
protected

Definition at line 393 of file TEveElement.h.

◆ fChildren

List_t TEveElement::fChildren
protected

Definition at line 81 of file TEveElement.h.

◆ fCompound

TEveCompound* TEveElement::fCompound
protected

Definition at line 82 of file TEveElement.h.

◆ fCSCBits

UChar_t TEveElement::fCSCBits
protected

Definition at line 335 of file TEveElement.h.

◆ fDenyDestroy

Int_t TEveElement::fDenyDestroy
protected

Counter for top-level list-tree items that prevent automatic destruction.

Definition at line 89 of file TEveElement.h.

◆ fDestroyOnZeroRefCnt

Bool_t TEveElement::fDestroyOnZeroRefCnt
protected

Deny-destroy count.

Definition at line 90 of file TEveElement.h.

◆ fDestructing

Char_t TEveElement::fDestructing
protected

Definition at line 394 of file TEveElement.h.

◆ fgListTreeIcons

const TGPicture * TEveElement::fgListTreeIcons = { nullptr }
static

Definition at line 65 of file TEveElement.h.

◆ fgRnrIcons

const TGPicture * TEveElement::fgRnrIcons = { nullptr }
static

Definition at line 64 of file TEveElement.h.

◆ fHighlighted

Bool_t TEveElement::fHighlighted
protected

Definition at line 314 of file TEveElement.h.

◆ fImpliedHighlighted

Short_t TEveElement::fImpliedHighlighted
protected

Definition at line 316 of file TEveElement.h.

◆ fImpliedSelected

Short_t TEveElement::fImpliedSelected
protected

Definition at line 315 of file TEveElement.h.

◆ fItems

sLTI_t TEveElement::fItems
protected

Definition at line 102 of file TEveElement.h.

◆ fMainColorPtr

Color_t* TEveElement::fMainColorPtr
protected

Definition at line 99 of file TEveElement.h.

◆ fMainTrans

TEveTrans* TEveElement::fMainTrans
protected

Definition at line 100 of file TEveElement.h.

◆ fMainTransparency

Char_t TEveElement::fMainTransparency
protected

Definition at line 98 of file TEveElement.h.

◆ fNumChildren

Int_t TEveElement::fNumChildren
protected

Definition at line 86 of file TEveElement.h.

◆ fParentIgnoreCnt

Int_t TEveElement::fParentIgnoreCnt
protected

Definition at line 87 of file TEveElement.h.

◆ fParents

List_t TEveElement::fParents
protected

Definition at line 80 of file TEveElement.h.

◆ fPickable

Bool_t TEveElement::fPickable
protected

Definition at line 312 of file TEveElement.h.

◆ fRnrChildren

Bool_t TEveElement::fRnrChildren
protected

Definition at line 93 of file TEveElement.h.

◆ fRnrSelf

Bool_t TEveElement::fRnrSelf
protected

Definition at line 92 of file TEveElement.h.

◆ fSelected

Bool_t TEveElement::fSelected
protected

Definition at line 313 of file TEveElement.h.

◆ fSource

TRef TEveElement::fSource
protected

Set of list-tree-items.

Definition at line 104 of file TEveElement.h.

◆ fTopItemCnt

Int_t TEveElement::fTopItemCnt
protected

Counter for parents that are ignored in ref-counting.

Definition at line 88 of file TEveElement.h.

◆ fUserData

void* TEveElement::fUserData
protected

Definition at line 105 of file TEveElement.h.

◆ fVizModel

TEveElement* TEveElement::fVizModel
protected

Definition at line 83 of file TEveElement.h.

◆ fVizTag

TString TEveElement::fVizTag
protected

Element used as model from VizDB.

Definition at line 84 of file TEveElement.h.

Libraries for TEveElement:

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