12 #ifndef ROOT_TEveCompound
13 #define ROOT_TEveCompound
23 class TEveCompound :
public TEveElementList
26 TEveCompound(
const TEveCompound&);
27 TEveCompound& operator=(
const TEveCompound&);
30 Short_t fCompoundOpen;
33 TEveCompound(
const char* n=
"TEveCompound",
const char* t=
"",
34 Bool_t doColor=kTRUE, Bool_t doTransparency=kFALSE);
35 virtual ~TEveCompound() {}
37 void OpenCompound() { ++fCompoundOpen; }
38 void CloseCompound() { --fCompoundOpen; }
39 Bool_t IsCompoundOpen()
const {
return fCompoundOpen > 0; }
41 virtual void SetMainColor(Color_t color);
42 virtual void SetMainTransparency(Char_t t);
44 virtual void AddElement(TEveElement* el);
45 virtual void RemoveElementLocal(TEveElement* el);
46 virtual void RemoveElementsLocal();
48 virtual void FillImpliedSelectedSet(Set_t& impSelSet);
50 virtual TClass* ProjectedClass(
const TEveProjection* p)
const;
52 ClassDef(TEveCompound, 0);
60 class TEveCompoundProjected :
public TEveCompound,
64 TEveCompoundProjected(
const TEveCompoundProjected&);
65 TEveCompoundProjected& operator=(
const TEveCompoundProjected&);
68 TEveCompoundProjected();
69 virtual ~TEveCompoundProjected() {}
71 virtual void SetMainColor(Color_t color);
73 virtual void UpdateProjection() {}
74 virtual TEveElement* GetProjectedAsElement() {
return this; }
76 ClassDef(TEveCompoundProjected, 0);