CMS 3D CMS Logo

FWGeoTopNodeScene.h
Go to the documentation of this file.
1 #ifndef Fireworks_Core_FWGeoTopNodeScene_h
2 #define Fireworks_Core_FWGeoTopNodeScene_h
3 
4 #include "TGLScenePad.h"
5 
6 class FWGeoTopNode;
7 class TGLViewer;
8 
9 class FWGeoTopNodeGLScene : public TGLScenePad
10 {
11 private:
12  FWGeoTopNodeGLScene(const FWGeoTopNodeGLScene&) = delete; // Not implemented
13  FWGeoTopNodeGLScene& operator=(const FWGeoTopNodeGLScene&) = delete; // Not implemented
14 protected:
15 
16 public:
17  // UInt_t fNextCompositeID;
19 
20  FWGeoTopNodeGLScene(TVirtualPad* pad);
21  ~FWGeoTopNodeGLScene() override {}
22 
23  void SetPad(TVirtualPad* p) { fPad = p; }
24 
25  void GeoPopupMenu(Int_t gx, Int_t gy, TGLViewer*);
26 
27  using TGLScenePad::ResolveSelectRecord;
28  Bool_t ResolveSelectRecord(TGLSelectRecord& rec, Int_t curIdx) override;
29 
30  bool OpenCompositeWithPhyID(UInt_t phyID, const TBuffer3D& buffer);
31 
32  // virtual DestroyPhysicals() ... call m_eveTopNode->ClearSelectionHighlight;
33  // There: if selected => gEve->GetSelection()->Remove(this) or sth
34  // if highlighted .... "" .....
35 
36  using TGLScenePad::DestroyPhysicals;
37  Int_t DestroyPhysicals() override;
38  using TGLScenePad::DestroyPhysical;
39  virtual Bool_t DestroyPhysical(Int_t);
40 
41  using TGLScenePad::AddObject;
42  Int_t AddObject(const TBuffer3D& buffer, Bool_t* addChildren = nullptr) override;
43 };
44 
45 //==============================================================================
46 //==============================================================================
47 //==============================================================================
48 #if ROOT_VERSION_CODE < ROOT_VERSION(5,32,0)
49 
50 #include "TEveScene.h"
51 class FWGeoTopNodeEveScene : public TEveScene
52 {
53 public:
54  FWGeoTopNodeEveScene(FWGeoTopNodeGLScene* gl_scene, const char* n="TEveScene", const char* t="");
55 
56  ~FWGeoTopNodeEveScene() {}
57 };
58 #endif
59 
60 #endif
void GeoPopupMenu(Int_t gx, Int_t gy, TGLViewer *)
Int_t DestroyPhysicals() override
FWGeoTopNodeGLScene & operator=(const FWGeoTopNodeGLScene &)=delete
Int_t AddObject(const TBuffer3D &buffer, Bool_t *addChildren=nullptr) override
FWGeoTopNode * m_eveTopNode
virtual Bool_t DestroyPhysical(Int_t)
bool OpenCompositeWithPhyID(UInt_t phyID, const TBuffer3D &buffer)
FWGeoTopNodeGLScene(const FWGeoTopNodeGLScene &)=delete
Bool_t ResolveSelectRecord(TGLSelectRecord &rec, Int_t curIdx) override
~FWGeoTopNodeGLScene() override
void SetPad(TVirtualPad *p)