CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
FWViewGeometryList.h
Go to the documentation of this file.
1 #ifndef Fireworks_Core_FWViewGeometryList_h
2 #define Fireworks_Core_FWViewGeometryList_h
3 // -*- C++ -*-
4 //
5 // Package: Core
6 // Class : FWViewGeometryList
7 //
16 //
17 // Original Author: Alja Mrak-Tadel
18 // Created: Tue Sep 14 13:28:39 CEST 2010
19 //
20 
21 #include "sigc++/connection.h"
22 
23 #include "TEveElement.h"
25 
26 class TGeoMatrix;
27 class TEveCompound;
28 class FWGeometry;
29 
30 namespace fireworks {
31  class Context;
32 }
33 
34 class FWViewGeometryList: public TEveElementList
35 {
36 public:
37  FWViewGeometryList( const fireworks::Context& context, bool projected = true );
38  virtual ~FWViewGeometryList();
39 
40  void updateColors();
41  void updateTransparency(bool projectedType);
42 
43 protected:
45  const FWGeometry* m_geom; // cached
46 
47  TEveCompound* m_colorComp[kFWGeomColorSize];
48 
49  void addToCompound(TEveElement* el, FWGeomColorIndex idx, bool applyTransp = true) const ;
50 
51 private:
52  FWViewGeometryList(const FWViewGeometryList&); // stop default
53 
54  const FWViewGeometryList& operator=(const FWViewGeometryList&); // stop default
55 
56  // ---------- member data --------------------------------
57  sigc::connection m_transpConnection;
58  sigc::connection m_colorConnection;
59  bool m_projected; // needed for transparency
60 };
61 
62 
63 #endif
TEveCompound * m_colorComp[kFWGeomColorSize]
FWGeomColorIndex
FWViewGeometryList(const fireworks::Context &context, bool projected=true)
void updateTransparency(bool projectedType)
void addToCompound(TEveElement *el, FWGeomColorIndex idx, bool applyTransp=true) const
const FWGeometry * m_geom
const FWViewGeometryList & operator=(const FWViewGeometryList &)
sigc::connection m_transpConnection
sigc::connection m_colorConnection
const fireworks::Context & m_context