Warning, file /include/root/TEveCompound.h was not indexed
or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012 #ifndef ROOT_TEveCompound
0013 #define ROOT_TEveCompound
0014
0015 #include "TEveElement.h"
0016 #include "TEveProjectionBases.h"
0017
0018
0019
0020
0021
0022
0023 class TEveCompound : public TEveElementList
0024 {
0025 private:
0026 TEveCompound(const TEveCompound&);
0027 TEveCompound& operator=(const TEveCompound&);
0028
0029 protected:
0030 Short_t fCompoundOpen;
0031
0032 public:
0033 TEveCompound(const char* n="TEveCompound", const char* t="",
0034 Bool_t doColor=kTRUE, Bool_t doTransparency=kFALSE);
0035 ~TEveCompound() override {}
0036
0037 void OpenCompound() { ++fCompoundOpen; }
0038 void CloseCompound() { --fCompoundOpen; }
0039 Bool_t IsCompoundOpen() const { return fCompoundOpen > 0; }
0040
0041 void SetMainColor(Color_t color) override;
0042 void SetMainTransparency(Char_t t) override;
0043
0044 void AddElement(TEveElement* el) override;
0045 void RemoveElementLocal(TEveElement* el) override;
0046 void RemoveElementsLocal() override;
0047
0048 void FillImpliedSelectedSet(Set_t& impSelSet) override;
0049
0050 TClass* ProjectedClass(const TEveProjection* p) const override;
0051
0052 ClassDefOverride(TEveCompound, 0);
0053 };
0054
0055
0056
0057
0058
0059
0060 class TEveCompoundProjected : public TEveCompound,
0061 public TEveProjected
0062 {
0063 private:
0064 TEveCompoundProjected(const TEveCompoundProjected&);
0065 TEveCompoundProjected& operator=(const TEveCompoundProjected&);
0066
0067 public:
0068 TEveCompoundProjected();
0069 ~TEveCompoundProjected() override {}
0070
0071 void SetMainColor(Color_t color) override;
0072
0073 void UpdateProjection() override {}
0074 TEveElement* GetProjectedAsElement() override { return this; }
0075
0076 ClassDefOverride(TEveCompoundProjected, 0);
0077 };
0078
0079 #endif