FWRPZViewGeometry

Macros

Line Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86
#ifndef Fireworks_Core_FWRPZViewGeometry_h
#define Fireworks_Core_FWRPZViewGeometry_h
// -*- C++ -*-
//
// Package:     Core
// Class  :     FWRPZViewGeometry
//
/**\class FWRPZViewGeometry FWRPZViewGeometry.h Fireworks/Core/interface/FWRPZViewGeometry.h

 Description: [one line class summary]

 Usage:
    <usage>

*/
//
// Original Author:  Alja Mrak-Tadel
//         Created:  Thu Mar 25 21:01:12 CET 2010
//

// system include files

// user include files
#include "TEveElement.h"
#include "Fireworks/Core/interface/FWViewType.h"
#include "Fireworks/Core/interface/FWViewGeometryList.h"
#include "Fireworks/Core/interface/FWGeometry.h"

// forward declarations
class TGeoShape;

class FWRPZViewGeometry : public FWViewGeometryList {
public:
  FWRPZViewGeometry(const fireworks::Context& context);
  ~FWRPZViewGeometry() override;

  // ---------- const member functions ---------------------

  // ---------- static member functions --------------------

  // ---------- member functions ---------------------------
  void initStdGeoElements(const FWViewType::EType id);

  void showPixelBarrel(bool);
  void showPixelEndcap(bool);
  void showTrackerBarrel(bool);
  void showTrackerEndcap(bool);
  void showRpcEndcap(bool);
  void showGEM(bool);
  void showME0(bool);
  void showMtdBarrel(bool);
  void showMtdEndcap(bool);

private:
  FWRPZViewGeometry(const FWRPZViewGeometry&);                   // stop default
  const FWRPZViewGeometry& operator=(const FWRPZViewGeometry&);  // stop default

  // ---------- member data --------------------------------

  TEveElement* makeMuonGeometryRhoPhi();
  TEveElement* makeMuonGeometryRhoZ();
  TEveElement* makeCaloOutlineRhoPhi();
  TEveElement* makeCaloOutlineRhoZ();
  void estimateProjectionSizeDT(const FWGeometry::GeomDetInfo& info, float&, float&, float&, float&);
  void estimateProjectionSizeCSC(const FWGeometry::GeomDetInfo& info, float&, float&, float&, float&);
  void estimateProjectionSize(const float*, float&, float&, float&, float&);

  void importNew(TEveElementList* x);

  TEveGeoShape* makeShape(double, double, double, double);

  TEveElementList* m_rhoPhiGeo;
  TEveElementList* m_rhoZGeo;

  TEveElementList* m_pixelBarrelElements;
  TEveElementList* m_pixelEndcapElements;
  TEveElementList* m_trackerBarrelElements;
  TEveElementList* m_trackerEndcapElements;
  TEveElementList* m_rpcEndcapElements;
  TEveElementList* m_GEMElements;
  TEveElementList* m_ME0Elements;
  TEveElementList* m_mtdBarrelElements;
  TEveElementList* m_mtdEndcapElements;
};

#endif