File indexing completed on 2024-04-06 12:11:31
0001 #ifndef Fireworks_Core_FWGeometryTableViewManager_h
0002 #define Fireworks_Core_FWGeometryTableViewManager_h
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021 class FWViewBase;
0022 class FWGUIManager;
0023 class TEveWindowSlot;
0024 class TGeoManager;
0025
0026 #include "Fireworks/Core/interface/FWViewManagerBase.h"
0027 #include "Fireworks/Core/interface/FWGeometryTableViewBase.h"
0028
0029 class FWGeometryTableViewManager : public FWViewManagerBase {
0030 public:
0031 FWGeometryTableViewManager(FWGUIManager*, std::string fileName, std::string geoName);
0032 ~FWGeometryTableViewManager() override;
0033
0034
0035 FWTypeToRepresentations supportedTypesAndRepresentations() const override { return FWTypeToRepresentations(); }
0036 void newItem(const FWEventItem*) override {}
0037
0038 FWViewBase* buildView(TEveWindowSlot* iParent, const std::string& type);
0039 void colorsChanged() override;
0040
0041 TList* getListOfVolumes() const;
0042 TGeoNode* getTopTGeoNode();
0043
0044 static TGeoManager* getGeoMangeur();
0045 static void setGeoManagerRuntime(TGeoManager*);
0046
0047 protected:
0048
0049 void modelChangesComing() override {}
0050 void modelChangesDone() override {}
0051
0052 std::vector<std::shared_ptr<FWGeometryTableViewBase> > m_views;
0053
0054 private:
0055 FWGeometryTableViewManager(const FWGeometryTableViewManager&);
0056 const FWGeometryTableViewManager& operator=(const FWGeometryTableViewManager&);
0057 void beingDestroyed(const FWViewBase* iView);
0058
0059 static TGeoManager* s_geoManager;
0060 std::string m_fileName;
0061 std::string m_TGeoName;
0062 void setGeoManagerFromFile();
0063 };
0064
0065 #endif