Warning, file /include/root/TEveScene.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_TEveScene
0013 #define ROOT_TEveScene
0014
0015 #include "TEveElement.h"
0016
0017 class TEvePad;
0018 class TGLScenePad;
0019
0020 class TExMap;
0021
0022
0023
0024
0025
0026 class TEveScene : public TEveElementList
0027 {
0028 private:
0029 TEveScene(const TEveScene&);
0030 TEveScene& operator=(const TEveScene&);
0031
0032 protected:
0033 TEvePad *fPad;
0034 TGLScenePad *fGLScene;
0035
0036 Bool_t fChanged;
0037 Bool_t fSmartRefresh;
0038 Bool_t fHierarchical;
0039
0040 void RetransHierarchicallyRecurse(TEveElement* el, const TEveTrans& tp);
0041
0042 public:
0043 TEveScene(const char* n="TEveScene", const char* t="");
0044 TEveScene(TGLScenePad* gl_scene, const char* n="TEveScene", const char* t="");
0045 ~TEveScene() override;
0046
0047 void CollectSceneParents(List_t& scenes) override;
0048
0049 Bool_t SingleRnrState() const override { return kTRUE; }
0050
0051 void Changed() { fChanged = kTRUE; }
0052 Bool_t IsChanged() const { return fChanged; }
0053
0054 void SetHierarchical(Bool_t h) { fHierarchical = h; }
0055 Bool_t GetHierarchical() const { return fHierarchical; }
0056
0057 void Repaint(Bool_t dropLogicals=kFALSE);
0058 void RetransHierarchically();
0059
0060 TGLScenePad* GetGLScene() const { return fGLScene; }
0061 void SetGLScene(TGLScenePad* s) { fGLScene = s; }
0062
0063 void SetName(const char* n) override;
0064 void Paint(Option_t* option = "") override;
0065
0066 void DestroyElementRenderers(TEveElement* element);
0067 void DestroyElementRenderers(TObject* rnrObj);
0068
0069 const TGPicture* GetListTreeIcon(Bool_t open=kFALSE) override;
0070
0071 ClassDefOverride(TEveScene, 0);
0072 };
0073
0074
0075
0076
0077
0078
0079 class TEveSceneList : public TEveElementList
0080 {
0081 private:
0082 TEveSceneList(const TEveSceneList&);
0083 TEveSceneList& operator=(const TEveSceneList&);
0084
0085 protected:
0086
0087 public:
0088 TEveSceneList(const char* n="TEveSceneList", const char* t="");
0089 ~TEveSceneList() override {}
0090
0091 void DestroyScenes();
0092
0093 void RepaintChangedScenes(Bool_t dropLogicals);
0094 void RepaintAllScenes(Bool_t dropLogicals);
0095
0096 void DestroyElementRenderers(TEveElement* element);
0097
0098 void ProcessSceneChanges(Bool_t dropLogicals, TExMap* stampMap);
0099
0100 ClassDefOverride(TEveSceneList, 0);
0101 };
0102
0103 #endif