File indexing completed on 2023-03-17 11:01:44
0001
0002
0003
0004
0005
0006
0007
0008
0009 #include "Fireworks/Core/interface/FWSimpleProxyBuilderTemplate.h"
0010 #include "Fireworks/Core/interface/Context.h"
0011 #include "Fireworks/Core/interface/FWEventItem.h"
0012 #include "SimDataFormats/TrackingAnalysis/interface/TrackingVertex.h"
0013
0014 #include "TEveTrack.h"
0015
0016 class FWTrackingVertexProxyBuilder : public FWSimpleProxyBuilderTemplate<TrackingVertex> {
0017 public:
0018 FWTrackingVertexProxyBuilder(void) {}
0019 ~FWTrackingVertexProxyBuilder(void) override {}
0020
0021 REGISTER_PROXYBUILDER_METHODS();
0022
0023
0024 FWTrackingVertexProxyBuilder(const FWTrackingVertexProxyBuilder&) = delete;
0025
0026 const FWTrackingVertexProxyBuilder& operator=(const FWTrackingVertexProxyBuilder&) = delete;
0027
0028 private:
0029 using FWSimpleProxyBuilderTemplate<TrackingVertex>::build;
0030 void build(const TrackingVertex& iData, unsigned int iIndex, TEveElement& oItemHolder, const FWViewContext*) override;
0031 };
0032
0033 void FWTrackingVertexProxyBuilder::build(const TrackingVertex& iData,
0034 unsigned int iIndex,
0035 TEveElement& oItemHolder,
0036 const FWViewContext*) {
0037 TEvePointSet* pointSet = new TEvePointSet;
0038 setupAddElement(pointSet, &oItemHolder);
0039 pointSet->SetNextPoint(iData.position().x(), iData.position().y(), iData.position().z());
0040 }
0041
0042 REGISTER_FWPROXYBUILDER(FWTrackingVertexProxyBuilder,
0043 TrackingVertex,
0044 "TrackingVertices",
0045 FWViewType::kAll3DBits | FWViewType::kAllRPZBits);