CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_0/src/Fireworks/SimData/plugins/FWTrackingVertexProxyBuilder.cc

Go to the documentation of this file.
00001 /*
00002  *  FWTrackingVertexProxyBuilder.cc
00003  *  FWorks
00004  *
00005  *  Created by Ianna Osborne on 10/6/10.
00006  *
00007  */
00008 
00009 #include "Fireworks/Core/interface/FWSimpleProxyBuilderTemplate.h"
00010 #include "Fireworks/Core/interface/Context.h"
00011 #include "Fireworks/Core/interface/FWEventItem.h"
00012 #include "SimDataFormats/TrackingAnalysis/interface/TrackingVertex.h"
00013 
00014 #include "TEveTrack.h"
00015 
00016 class FWTrackingVertexProxyBuilder : public FWSimpleProxyBuilderTemplate<TrackingVertex>
00017 {
00018 public:
00019    FWTrackingVertexProxyBuilder( void ) {} 
00020    virtual ~FWTrackingVertexProxyBuilder( void ) {}
00021 
00022    REGISTER_PROXYBUILDER_METHODS();
00023 
00024 private:
00025    // Disable default copy constructor
00026    FWTrackingVertexProxyBuilder( const FWTrackingVertexProxyBuilder& );
00027    // Disable default assignment operator
00028    const FWTrackingVertexProxyBuilder& operator=( const FWTrackingVertexProxyBuilder& );
00029 
00030    void build( const TrackingVertex& iData, unsigned int iIndex, TEveElement& oItemHolder, const FWViewContext* );
00031 };
00032 
00033 void
00034 FWTrackingVertexProxyBuilder::build( const TrackingVertex& iData, unsigned int iIndex, TEveElement& oItemHolder, const FWViewContext* )
00035 {
00036    TEvePointSet* pointSet = new TEvePointSet;
00037    setupAddElement( pointSet, &oItemHolder );
00038    pointSet->SetNextPoint( iData.position().x(), iData.position().y(), iData.position().z() );
00039 }
00040 
00041 REGISTER_FWPROXYBUILDER( FWTrackingVertexProxyBuilder, TrackingVertex, "TrackingVertices", FWViewType::kAll3DBits | FWViewType::kAllRPZBits );