50 p->UnRefProjectable(
this);
69 (*i)->UnRefProjectable(
this,
kFALSE);
90 set.insert((*i)->GetProjectedAsElement());
117 if ((*i)->GetProjectedAsElement()->SetRnrSelfChildren(rnr_self, rnr_children))
118 (*i)->GetProjectedAsElement()->ElementChanged();
129 if ((*i)->GetProjectedAsElement()->GetMainColor() == old_color)
130 (*i)->GetProjectedAsElement()->SetMainColor(color);
142 if ((*i)->GetProjectedAsElement()->GetMainTransparency() == old_t)
143 (*i)->GetProjectedAsElement()->SetMainTransparency(t);
163 fProjectable (nullptr),
206 static const TEveException eH(
"TEveProjected::UnRefProjectable ");
#define R__ASSERT(e)
Checks condition e and reports a fatal error if it's false.
R__EXTERN TEveManager * gEve
winID h TVirtualViewer3D TVirtualGLPainter p
Base class for TEveUtil visualization elements, providing hierarchy management, rendering control and...
virtual void Annihilate()
Optimized destruction without check of reference-count.
virtual void CopyVizParams(const TEveElement *el)
Copy visualization parameters from element el.
Exception class thrown by TEve classes and macros.
void PreDeleteElement(TEveElement *element)
Called from TEveElement prior to its destruction so the framework components (like object editor) can...
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)
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.
virtual void RemoveProjected(TEveProjected *p)
virtual ~TEveProjectable()
Destructor.
ProjList_t fProjectedList
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.
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
TEveProjectionManager * fManager
virtual void SetDepthLocal(Float_t d)
Base-class implementation – just sets fDepth.
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.
virtual void UnRefProjectable(TEveProjectable *assumed_parent, bool notifyParent=true)
Remove reference to projectable.
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.
TEveProjection * GetProjection()
virtual Bool_t Is2D() const =0