12#ifndef ROOT7_REveProjectionBases
13#define ROOT7_REveProjectionBases
22namespace Experimental {
Base class for REveUtil visualization elements, providing hierarchy management, rendering control and...
Abstract base class for classes that hold results of a non-linear projection transformation.
Manager class for steering of projections and managing projected objects.
Base-class for non-linear projections.
virtual Bool_t HasProjecteds() const
virtual void AddProjectedsToSet(std::set< REveElement * > &set)
Add the projected elements to the set, dyn-casting them to REveElement.
REveProjectable()
Constructor.
virtual void PropagateVizParams(REveElement *el=nullptr)
Set visualization parameters of projecteds.
std::list< REveProjected * > ProjList_t
virtual void RemoveProjected(REveProjected *p)
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 void AnnihilateProjecteds()
Optimized destroy of projected elements with condition there is only one parent for projected element...
ProjList_t fProjectedList
virtual void ClearProjectedList()
ProjList_t & RefProjecteds()
virtual void PropagateRenderState(Bool_t rnr_self, Bool_t rnr_children)
Set render state of projecteds.
virtual TClass * ProjectedClass(const REveProjection *p) const =0
virtual void AddProjected(REveProjected *p)
REveProjectable & operator=(const REveProjectable &)=delete
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 ~REveProjectable()
Destructor.
REveProjectionManager * GetManager() const
virtual REveElement * GetProjectedAsElement()
Returns this projected dynamic-casted to REveElement.
virtual void SetProjection(REveProjectionManager *mng, REveProjectable *model)
Sets projection manager and reference in the projectable object.
virtual void UnRefProjectable(REveProjectable *assumed_parent, bool notifyParent=true)
Remove reference to projectable.
void SetDepthCommon(Float_t d, REveElement *el, Float_t *bbox)
Utility function to update the z-values of the bounding-box.
REveProjected & operator=(const REveProjected &)=delete
virtual void UpdateProjection()=0
virtual ~REveProjected()
Destructor.
REveProjected(const REveProjected &)=delete
virtual void SetDepth(Float_t d)
Set depth coordinate for the element.
REveProjectable * GetProjectable() const
virtual void SetDepthLocal(Float_t d)
Base-class implementation – just sets fDepth.
REveProjectable * fProjectable
REveProjectionManager * fManager
REveProjectionManager Manager class for steering of projections and managing projected objects.
REveProjection Base for specific classes that implement non-linear projections.
TClass instances represent classes, structs and namespaces in the ROOT type system.
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...