12#ifndef ROOT_TEveProjectionBases
13#define ROOT_TEveProjectionBases
#define ClassDef(name, id)
winID h TVirtualViewer3D TVirtualGLPainter p
TClass instances represent classes, structs and namespaces in the ROOT type system.
Base class for TEveUtil visualization elements, providing hierarchy management, rendering control and...
Abstract base-class for non-linear projectable objects.
virtual void ClearProjectedList()
virtual void PropagateVizParams(TEveElement *el=nullptr)
Set visualization parameters of projecteds.
TEveProjectable()
Constructor.
virtual void PropagateMainTransparency(Char_t t, Char_t old_t)
Set main transparency of projecteds if their transparency is the same as the old one.
virtual void AddProjected(TEveProjected *p)
std::list< TEveProjected * > ProjList_t
virtual void AddProjectedsToSet(std::set< TEveElement * > &set)
Add the projected elements to the set, dyn-casting them to TEveElement.
virtual void PropagateRenderState(Bool_t rnr_self, Bool_t rnr_children)
Set render state of projecteds.
ProjList_i EndProjecteds()
TEveProjectable & operator=(const TEveProjectable &)
virtual void RemoveProjected(TEveProjected *p)
virtual ~TEveProjectable()
Destructor.
ProjList_i BeginProjecteds()
virtual Bool_t HasProjecteds() const
ProjList_t fProjectedList
TEveProjectable(const TEveProjectable &)
virtual void AnnihilateProjecteds()
Optimized destroy of projected elements with condition there is only one parent for projected element...
virtual void PropagateMainColor(Color_t color, Color_t old_color)
Set main color of projecteds if their color is the same as old_color.
virtual TClass * ProjectedClass(const TEveProjection *p) const =0
std::list< TEveProjected * >::iterator ProjList_i
Abstract base class for classes that hold results of a non-linear projection transformation.
virtual void SetDepth(Float_t d)
Set depth coordinate for the element.
TEveProjected()
Constructor.
TEveProjectable * fProjectable
virtual void UpdateProjection()=0
TEveProjectionManager * fManager
virtual void SetDepthLocal(Float_t d)
Base-class implementation – just sets fDepth.
TEveProjectionManager * GetManager() const
virtual ~TEveProjected()
Destructor.
virtual void SetProjection(TEveProjectionManager *mng, TEveProjectable *model)
Sets projection manager and reference in the projectable object.
virtual TEveElement * GetProjectedAsElement()
Returns this projected dynamic-casted to TEveElement.
TEveProjected & operator=(const TEveProjected &)
virtual void UnRefProjectable(TEveProjectable *assumed_parent, bool notifyParent=true)
Remove reference to projectable.
TEveProjected(const TEveProjected &)
TEveProjectable * GetProjectable() const
void SetDepthCommon(Float_t d, TEveElement *el, Float_t *bbox)
Utility function to update the z-values of the bounding-box.
Manager class for steering of projections and managing projected objects.
Base-class for non-linear projections.