CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_6_2_7/src/Fireworks/Muons/interface/FWMuonBuilder.h

Go to the documentation of this file.
00001 #ifndef Fireworks_Muons_FWMuonBuilder_h
00002 #define Fireworks_Muons_FWMuonBuilder_h
00003 // -*- C++ -*-
00004 //
00005 // Package:     Muons
00006 // Class  :     FWMuonBuilder
00007 //
00008 // $Id: FWMuonBuilder.h,v 1.8 2010/04/30 12:29:29 amraktad Exp $
00009 //
00010 #include "Fireworks/Core/interface/FWEvePtr.h"
00011 
00012 // forward declarations
00013 namespace reco {
00014    class Muon;
00015 }
00016 
00017 class FWEventItem;
00018 class TEveElementList;
00019 class TEveTrackPropagator;
00020 class FWMagField;
00021 class FWPRoxyBuilderBase;
00022 
00023 class FWMuonBuilder
00024 {
00025 
00026 public:
00027    FWMuonBuilder();
00028    virtual ~FWMuonBuilder();
00029 
00030    // ---------- const member functions ---------------------
00031 
00032    // ---------- static member functions --------------------
00033 
00034    // ---------- member functions ---------------------------
00035    void buildMuon(FWProxyBuilderBase*,
00036                   const reco::Muon* muon,
00037                   TEveElement* tList,
00038                   bool showEndcap,
00039                   bool onlyTracks = false);
00040 
00041 private:
00042    FWMuonBuilder(const FWMuonBuilder&);    // stop default
00043 
00044    const FWMuonBuilder& operator=(const FWMuonBuilder&);    // stop default
00045 
00046    void calculateField(const reco::Muon& iData, FWMagField* field);
00047 
00048    // ---------- member data --------------------------------
00049 };
00050 
00051 #endif