Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008 #include "TEvePointSet.h"
00009
00010 #include "Fireworks/Core/interface/FWSimpleProxyBuilderTemplate.h"
00011 #include "Fireworks/Core/interface/FWEventItem.h"
00012
00013 #include "DataFormats/BeamSpot/interface/BeamSpot.h"
00014
00015 class FWBeamSpotProxyBuilder : public FWSimpleProxyBuilderTemplate<reco::BeamSpot>
00016 {
00017 public:
00018 FWBeamSpotProxyBuilder( void ) {}
00019 virtual ~FWBeamSpotProxyBuilder( void ) {}
00020
00021 REGISTER_PROXYBUILDER_METHODS();
00022
00023 private:
00024
00025 FWBeamSpotProxyBuilder( const FWBeamSpotProxyBuilder& );
00026
00027 const FWBeamSpotProxyBuilder& operator=( const FWBeamSpotProxyBuilder& );
00028
00029 virtual void build( const reco::BeamSpot& iData, unsigned int iIndex, TEveElement& oItemHolder, const FWViewContext* );
00030 };
00031
00032 void
00033 FWBeamSpotProxyBuilder::build( const reco::BeamSpot& iData, unsigned int iIndex, TEveElement& oItemHolder, const FWViewContext* )
00034 {
00035 const reco::BeamSpot::Point &pos = iData.position();
00036 TEvePointSet* pointSet = new TEvePointSet;
00037 pointSet->SetMarkerSize(0.5);
00038 setupAddElement( pointSet, &oItemHolder );
00039
00040 pointSet->SetNextPoint( pos.x(), pos.y(), pos.z());
00041 }
00042
00043 REGISTER_FWPROXYBUILDER( FWBeamSpotProxyBuilder, reco::BeamSpot, "Beam Spot", FWViewType::kAll3DBits | FWViewType::kAllRPZBits );