CMS 3D CMS Logo

/data/doxygen/doxygen-1.7.3/gen/CMSSW_4_2_8/src/Fireworks/Core/interface/FWRPZViewGeometry.h

Go to the documentation of this file.
00001 #ifndef Fireworks_Core_FWRPZViewGeometry_h
00002 #define Fireworks_Core_FWRPZViewGeometry_h
00003 // -*- C++ -*-
00004 //
00005 // Package:     Core
00006 // Class  :     FWRPZViewGeometry
00007 // 
00016 //
00017 // Original Author:  Alja Mrak-Tadel
00018 //         Created:  Thu Mar 25 21:01:12 CET 2010
00019 // $Id: FWRPZViewGeometry.h,v 1.9 2010/09/17 16:18:55 amraktad Exp $
00020 //
00021 
00022 // system include files
00023 
00024 // user include files
00025 #include "TEveElement.h"
00026 #include "Fireworks/Core/interface/FWViewType.h"
00027 #include "Fireworks/Core/interface/FWViewGeometryList.h"
00028 #include "Fireworks/Core/interface/FWGeometry.h"
00029 
00030 // forward declarations
00031 class TGeoShape;
00032 
00033 class FWRPZViewGeometry : public FWViewGeometryList
00034 {
00035 public:
00036    FWRPZViewGeometry(const fireworks::Context& context);
00037    virtual ~FWRPZViewGeometry();
00038 
00039    // ---------- const member functions ---------------------
00040 
00041    // ---------- static member functions --------------------
00042 
00043    // ---------- member functions ---------------------------
00044    TEveElement* getGeoElements(const FWViewType::EType id);
00045 
00046 private:
00047    FWRPZViewGeometry(const FWRPZViewGeometry&); // stop default
00048    const FWRPZViewGeometry& operator=(const FWRPZViewGeometry&); // stop default
00049 
00050    // ---------- member data --------------------------------
00051 
00052    TEveElement* makeMuonGeometryRhoPhi();
00053    TEveElement* makeMuonGeometryRhoZ();
00054    TEveElement* makeCaloOutlineRhoPhi();
00055    TEveElement* makeCaloOutlineRhoZ();
00056    void estimateProjectionSizeDT( const FWGeometry::GeomDetInfo& info, float&, float&, float&, float& );
00057    void estimateProjectionSizeCSC( const FWGeometry::GeomDetInfo& info, float&, float&, float&, float& );
00058    void estimateProjectionSize( const float*, float&, float&, float&, float& );
00059 
00060    TEveGeoShape* makeShape( double, double, double, double );
00061 
00062    TEveElementList*  m_rhoPhiGeo;
00063    TEveElementList*  m_rhoZGeo;
00064 };
00065 
00066 
00067 #endif