Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2021-08-03 04:09:56

0001 // -*- C++ -*-
0002 //
0003 // Package:     Calo
0004 // Class  :     FWL1MuonParticleProxyBuilder
0005 //
0006 // Implementation:
0007 //     <Notes on implementation>
0008 //
0009 // Original Author:
0010 //         Created:  Sun Jan  6 23:57:00 EST 2008
0011 //
0012 
0013 #include "Fireworks/Core/interface/FWSimpleProxyBuilderTemplate.h"
0014 #include "Fireworks/Core/interface/BuilderUtils.h"
0015 
0016 #include "DataFormats/L1Trigger/interface/L1MuonParticle.h"
0017 
0018 class FWL1MuonParticleProxyBuilder : public FWSimpleProxyBuilderTemplate<l1extra::L1MuonParticle> {
0019 public:
0020   FWL1MuonParticleProxyBuilder(void) {}
0021   ~FWL1MuonParticleProxyBuilder(void) override {}
0022 
0023   REGISTER_PROXYBUILDER_METHODS();
0024 
0025   FWL1MuonParticleProxyBuilder(const FWL1MuonParticleProxyBuilder&) = delete;                   // stop default
0026   const FWL1MuonParticleProxyBuilder& operator=(const FWL1MuonParticleProxyBuilder&) = delete;  // stop default
0027 
0028 private:
0029   using FWSimpleProxyBuilderTemplate<l1extra::L1MuonParticle>::build;
0030   void build(const l1extra::L1MuonParticle& iData,
0031              unsigned int iIndex,
0032              TEveElement& oItemHolder,
0033              const FWViewContext*) override;
0034 };
0035 
0036 void FWL1MuonParticleProxyBuilder::build(const l1extra::L1MuonParticle& iData,
0037                                          unsigned int iIndex,
0038                                          TEveElement& oItemHolder,
0039                                          const FWViewContext*) {
0040   double scale = 10;
0041 
0042   fireworks::addDashedLine(iData.phi(), iData.theta(), iData.pt() * scale, &oItemHolder, this);
0043 }
0044 
0045 REGISTER_FWPROXYBUILDER(FWL1MuonParticleProxyBuilder,
0046                         l1extra::L1MuonParticle,
0047                         "L1MuonParticle",
0048                         FWViewType::kAllRPZBits);