14 #ifndef DD4HEP_DDEVE_DISPLAY_H
15 #define DD4HEP_DDEVE_DISPLAY_H
29 class TEveCaloDataHist;
46 class ViewConfiguration;
47 class CalodataConfiguration;
48 class GenericEventHandler;
49 class DisplayConfiguration;
63 typedef std::set<PopupMenu*>
Menus;
64 typedef std::map<std::string, TEveElementList*>
Topics;
78 typedef std::map<std::string, CalodataContext>
Calodata;
133 void LoadXML(
const char* xmlFile);
137 TFile*
Open(
const char* rootFile)
const;
181 void ImportGeo(
const std::string& topic, TEveElement* el);
191 void ImportEvent(
const std::string& topic, TEveElement* el);
DataConfigurations m_calodataConfigs
std::map< std::string, TEveElementList * > Topics
const ViewConfig * GetViewConfiguration(const std::string &name) const
Access a data filter by name. Data filters are used to customize views.
Calodata m_calodata
Container with calorimeter data (projections)
ViewConfigurations m_viewConfigs
void LoadGeoChildren(TEveElement *start, int levels, bool redraw)
Load 'levels' Children into the geometry scene.
TEveManager & manager() const
Access to the EVE manager.
Class of the ROOT toolkit. See http://root.cern.ch/root/htmldoc/ClassIndex.html.
void ImportEvent(TEveElement *el)
Call to import top level event elements.
DataConfigurations m_collectionsConfigs
TEveCaloDataHist * eveHist
void setVisLevel(int new_level)
Set Vis level in geo manager (either from XML or BEFORE XML file was loaded)
DisplayConfiguration::Config DataConfig
void setLoadLevel(int new_level)
Set Eve Geometry load level in manager (either from XML or BEFORE XML file was loaded) ...
CalodataContext & GetCaloHistogram(const std::string &name)
Access to calo data histograms by name as defined in the configuration.
Event handler base class. Interface to all DDEve I/O actions.
DisplayConfiguration::Config config
virtual ~Display()
Default destructor.
Geometry::LCDD & lcdd() const
Access to geometry hub.
const ViewConfigurations & viewConfigurations() const
Access View configurations.
TEveManager * m_eve
Reference to TEve manager.
virtual void UnregisterEvents(View *view)
Unregister from the main event scene.
virtual void OnNewEvent(EventHandler *handler)
EventConsumer overload: Consumer event data.
virtual TEveElementList & GetGeoTopic(const std::string &name)
Access/Create an geometry topic by name.
const DataConfig * GetCalodataConfiguration(const std::string &name) const
Access a data filter by name. Data filters are used to customize views.
Event handler base class. Interface to all DDEve I/O actions.
std::set< PopupMenu * > Menus
TFile * Open(const char *rootFile) const
Open ROOT file.
virtual void AddMenu(TGMenuBar *bar, PopupMenu *menu, int hints=kLHintsNormal)
Add new menu to the main menu bar.
class View View.h DDEve/View.h
DisplayConfiguration DisplayConfiguration.h DDEve/DisplayConfiguration.h.
std::string getEventHandlerName()
Get Event Handler Plugin name.
virtual void RegisterEvents(View *view)
Register to the main event scene on new events.
void ChooseGeometry()
Load geometry with panel.
GenericEventHandler * m_evtHandler
Reference to the event reader object.
GenericEventHandler & eventHandler() const
Access to the event reader.
void ImportGeo(TEveElement *el)
Call to import geometry elements.
void LoadGeometryRoot(const char *rootFile)
Load geometry from compact xml file.
std::string OpenXmlFileDialog(const std::string &default_dir) const
Popup XML file chooser. returns chosen file name; empty on cancel.
std::map< std::string, ViewConfig > ViewConfigurations
void MakeNodesVisible(TEveElement *e, bool visible, int level)
Make a set of nodes starting from a top element (in-)visible with a given depth.
TEveElementList * m_geoGlobal
std::map< std::string, DataConfig > DataConfigurations
void setEventHandlerName(std::string eventHandlerName)
Set Event Handler Plugin name.
void ImportConfiguration(const DisplayConfiguration &config)
Import configuration parameters.
void LoadXML(const char *xmlFile)
Load geometry from compact xml file.
virtual TEveElementList & GetEveTopic(const std::string &name)
Access/Create an event topic by name.
std::string OpenEventFileDialog(const std::string &default_dir) const
Popup ROOT file chooser. returns chosen file name; empty on cancel.
void MessageBox(PrintLevel level, const std::string &text, const std::string &title="") const
Open standard message box.
TEveElementList & GetGeo()
Access / Create global geometry element.
int m_loadLevel
Load level for the eve geometry.
TGClient & client() const
Access to X-client.
The main interface to the DD4hep detector description package.
std::set< DisplayConfiguration * > Configurations
virtual void BuildMenus(TGMenuBar *bar=0)
Build the DDEve specific menues. Default bar is the ROOT browser's bar.
Geometry::LCDD * m_lcdd
Reference to geometry hub.
std::string m_eventHandlerName
Name of the event handler plugin.
int m_visLevel
TGeoManager visualisation level.
Display(TEveManager *eve)
Standard constructor.
The main class of the DDEve display.
DisplayConfiguration::ViewConfig ViewConfig
CalodataContext & operator=(const CalodataContext &c)
std::map< std::string, CalodataContext > Calodata
TEveElementList * m_eveGlobal