00001 #ifndef Fireworks_Core_FWGeometryTableViewManager_h 00002 #define Fireworks_Core_FWGeometryTableViewManager_h 00003 // -*- C++ -*- 00004 // 00005 // Package: Core 00006 // Class : FWGeometryTableViewManager 00007 // 00016 // 00017 // Original Author: Alja Mrak-Tadel 00018 // Created: Fri Jul 8 00:40:50 CEST 2011 00019 // $Id: FWGeometryTableViewManager.h,v 1.6 2011/07/15 04:46:59 amraktad Exp $ 00020 // 00021 00022 class FWViewBase; 00023 class FWGUIManager; 00024 class TEveWindowSlot; 00025 class TGeoManager; 00026 00027 #include "Fireworks/Core/interface/FWViewManagerBase.h" 00028 #include "Fireworks/Core/interface/FWGeometryTableView.h" 00029 00030 class FWGeometryTableViewManager : public FWViewManagerBase 00031 { 00032 public: 00033 FWGeometryTableViewManager(FWGUIManager*, std::string fileName); 00034 virtual ~FWGeometryTableViewManager(); 00035 00036 // dummy functions of FWViewManagerBase 00037 virtual FWTypeToRepresentations supportedTypesAndRepresentations() const { return FWTypeToRepresentations();} 00038 virtual void newItem(const FWEventItem*) {} 00039 00040 FWViewBase *buildView (TEveWindowSlot *iParent, const std::string& type); 00041 virtual void colorsChanged(); 00042 00043 TList* getListOfVolumes() const; 00044 TGeoNode* getTopTGeoNode(); 00045 00046 static TGeoManager* getGeoMangeur() { return s_geoManager; } 00047 00048 protected: 00049 // dummy functions of FWViewManagerBase 00050 virtual void modelChangesComing() {} 00051 virtual void modelChangesDone() {} 00052 00053 std::vector<boost::shared_ptr<FWGeometryTableView> > m_views; 00054 00055 private: 00056 FWGeometryTableViewManager(const FWGeometryTableViewManager&); // stop default 00057 const FWGeometryTableViewManager& operator=(const FWGeometryTableViewManager&); // stop default 00058 void beingDestroyed(const FWViewBase* iView); 00059 00060 static TGeoManager *s_geoManager; 00061 std::string m_fileName; 00062 void initGeoManager(); 00063 }; 00064 00065 00066 #endif