DD4hep - The AIDA detector description toolkit for high energy physics experiments
DD4hep  Rev:Unversioneddirectory
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DisplayConfiguration.h
Go to the documentation of this file.
1 // $Id: $
2 //==========================================================================
3 // AIDA Detector description implementation for LCD
4 //--------------------------------------------------------------------------
5 // Copyright (C) Organisation europeenne pour la Recherche nucleaire (CERN)
6 // All rights reserved.
7 //
8 // For the licensing terms see $DD4hepINSTALL/LICENSE.
9 // For the list of contributors see $DD4hepINSTALL/doc/CREDITS.
10 //
11 // Author : M.Frank
12 // Original Author: Matevz Tadel 2009 (MultiView.C)
13 //
14 //==========================================================================
15 #ifndef DD4HEP_DDEVE_DISPLAYCONFIGURATION_H
16 #define DD4HEP_DDEVE_DISPLAYCONFIGURATION_H
17 
18 // Framework include files
19 #include "TClass.h"
20 
21 // C/C++ include files
22 #include <string>
23 #include <list>
24 #include <map>
25 
27 namespace DD4hep {
28 
29  // Forward declarations
30  class Display;
31 
33  /*
34  * \author M.Frank
35  * \version 1.0
36  * \ingroup DD4HEP_EVE
37  */
39  protected:
41  public:
42  enum { CALODATA=1<<1,
43  DETELEMENT=1<<2,
44  VIEW=1<<3,
45  PANEL=1<<4,
47  };
48  struct Defaults {
49  char load_geo;
50  char show_evt;
51  short default_pad;
52  int color;
53  float alpha;
54  };
55  struct Calo3D : public Defaults {
57  };
58  struct Calodata : public Defaults {
60  float eta_min, eta_max;
61  float phi_min, phi_max;
62  short n_eta;
63  short n_phi;
64  int spare;
65  };
66  struct Panel : public Defaults {
67  };
68  struct Hits : public Defaults {
69  float size; // Marker size
70  float width;
71  float threshold;
72  float towerH;
73  float emax; // Max energy deposit displayed
74  int type; // Marker type
75  };
76  class Config {
77  public:
78  union Values {
79  double vals[20];
85  } data;
86  std::string name;
87  std::string hits;
88  std::string use;
89  int type;
91  Config();
93  Config(const Config& c);
95  ~Config();
97  Config& operator=(const Config& c);
98  };
99  typedef std::vector<Config> Configurations;
100  class ViewConfig : public Config {
101  public:
102  std::string type;
107  ViewConfig();
109  ViewConfig(const ViewConfig& c);
111  virtual ~ViewConfig();
113  ViewConfig& operator=(const ViewConfig& c);
114  };
115  typedef std::list<ViewConfig> ViewConfigurations;
119  public:
123  virtual ~DisplayConfiguration();
126  };
127 
128 } /* End namespace DD4hep */
129 
130 #endif /* DD4HEP_DDEVE_DISPLAYCONFIGURATION_H */
131 
ViewConfig & operator=(const ViewConfig &c)
Assignment operator.
Config & operator=(const Config &c)
Assignment operator.
DisplayConfiguration(Display *eve)
Initializing constructor.
std::list< ViewConfig > ViewConfigurations
std::vector< Config > Configurations
union DD4hep::DisplayConfiguration::Config::Values data
ClassDef(DisplayConfiguration, 0)
Root implementation macro.
DisplayConfiguration DisplayConfiguration.h DDEve/DisplayConfiguration.h.
virtual ~DisplayConfiguration()
Default destructor.
The main class of the DDEve display.
Definition: Display.h:57