Skip to content

Commit

Permalink
Applied comments from PR #13087 for the clusterizer integration in CM…
Browse files Browse the repository at this point in the history
…SSW 8

(cherry picked from commit fc94e1c)
  • Loading branch information
Thomas Lenzi authored and cmsbuild committed Jan 31, 2016
1 parent 8c30b3d commit 0bf80a9
Show file tree
Hide file tree
Showing 6 changed files with 17 additions and 30 deletions.
4 changes: 2 additions & 2 deletions DataFormats/Phase2TrackerCluster/src/classes_def.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<lcgdict>
<class name="Phase2TrackerCluster1D" ClassVersion="10">
<version ClassVersion="10" checksum="1003486686"/>
<class name="Phase2TrackerCluster1D" ClassVersion="2">
<version ClassVersion="2" checksum="1003486686"/>
</class>
<class name="std::vector< Phase2TrackerCluster1D >"/>
<class name="std::vector< edmNew::DetSet< Phase2TrackerCluster1D > >"/>
Expand Down
2 changes: 1 addition & 1 deletion RecoLocalTracker/SiPhase2Clusterizer/plugins/BuildFile.xml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
<use name="RecoLocalTracker/SiPhase2Clusterizer"/>
<library file="Phase2TrackerClusterizer.cc ../src/Phase2TrackerClusterizerAlgorithm.cc ../src/Phase2TrackerClusterizerArray.cc" name="Phase2TrackerClusterizerPlugin">
<library file="Phase2TrackerClusterizer.cc Phase2TrackerClusterizerAlgorithm.cc Phase2TrackerClusterizerArray.cc" name="Phase2TrackerClusterizerPlugin">
<flags EDM_PLUGIN="1"/>
</library>
Original file line number Diff line number Diff line change
Expand Up @@ -16,33 +16,24 @@
#include <vector>
#include <iostream>

namespace cms {

/*
* Initialise the producer
*/

Phase2TrackerClusterizer::Phase2TrackerClusterizer(edm::ParameterSet const& conf) :
conf_(conf),
maxClusterSize_(conf.getParameter< unsigned int >("maxClusterSize")),
maxNumberClusters_(conf.getParameter< unsigned int >("maxNumberClusters")) {
// Objects that will be used
token_ = consumes< edm::DetSetVector< Phase2TrackerDigi > >(conf.getParameter<edm::InputTag>("src"));
// Objects that will be produced
clusterizer_(new Phase2TrackerClusterizerAlgorithm(conf.getParameter< unsigned int >("maxClusterSize"), conf.getParameter< unsigned int >("maxNumberClusters"))),
token_(consumes< edm::DetSetVector< Phase2TrackerDigi > >(conf.getParameter<edm::InputTag>("src"))) {
produces< Phase2TrackerCluster1DCollectionNew >();
//
clusterizer_ = new Phase2TrackerClusterizerAlgorithm(maxClusterSize_, maxNumberClusters_);
}

Phase2TrackerClusterizer::~Phase2TrackerClusterizer() {
delete clusterizer_;
}

Phase2TrackerClusterizer::~Phase2TrackerClusterizer() { }

/*
* Clusterize the events
*/

void Phase2TrackerClusterizer::produce(edm::Event& event, const edm::EventSetup& eventSetup) {
void Phase2TrackerClusterizer::produce(edm::StreamID sid, edm::Event& event, const edm::EventSetup& eventSetup) const {

// Get the Digis
edm::Handle< edm::DetSetVector< Phase2TrackerDigi > > digis;
Expand Down Expand Up @@ -83,7 +74,5 @@ namespace cms {
outputClusters->shrink_to_fit();
event.put(outputClusters);
}
}

using cms::Phase2TrackerClusterizer;
DEFINE_FWK_MODULE(Phase2TrackerClusterizer);
Original file line number Diff line number Diff line change
Expand Up @@ -6,30 +6,28 @@
#include "DataFormats/TrackerCommon/interface/TrackerTopology.h"
#include "DataFormats/DetId/interface/DetId.h"

#include "FWCore/Framework/interface/EDProducer.h"
#include "FWCore/Framework/interface/global/EDProducer.h"
#include "FWCore/Framework/interface/Event.h"
#include "FWCore/Framework/interface/EventSetup.h"
#include "FWCore/ParameterSet/interface/ParameterSet.h"
#include "FWCore/Utilities/interface/InputTag.h"
#include "FWCore/Framework/interface/ConsumesCollector.h"

namespace cms {
#include <memory>

class Phase2TrackerClusterizer : public edm::EDProducer {

class Phase2TrackerClusterizer : public edm::global::EDProducer<> {

public:
explicit Phase2TrackerClusterizer(const edm::ParameterSet& conf);
virtual ~Phase2TrackerClusterizer();
virtual void produce(edm::Event& event, const edm::EventSetup& eventSetup);
void produce(edm::StreamID sid, edm::Event& event, const edm::EventSetup& eventSetup) const override final;

private:
edm::ParameterSet conf_;
Phase2TrackerClusterizerAlgorithm* clusterizer_;
std::unique_ptr< Phase2TrackerClusterizerAlgorithm > clusterizer_;
edm::EDGetTokenT< edm::DetSetVector< Phase2TrackerDigi > > token_;
unsigned int maxClusterSize_;
unsigned int maxNumberClusters_;

};
}


#endif
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ void Phase2TrackerClusterizerAlgorithm::setup(const PixelGeomDetUnit* pixDet) {

void Phase2TrackerClusterizerAlgorithm::clusterizeDetUnit(const edm::DetSet< Phase2TrackerDigi >& digis, edmNew::DetSetVector< Phase2TrackerCluster1D >::FastFiller& clusters) {

// Fill the 2D matrix with the ADC values
// Fill the 2D matrix with the hit information : (hit or not)
fillMatrix(digis.begin(), digis.end());

// Number of clusters
Expand Down Expand Up @@ -79,7 +79,7 @@ void Phase2TrackerClusterizerAlgorithm::clusterizeDetUnit(const edm::DetSet< Pha
}

/*
* Copy the value of the Digis' ADC to the 2D matrix. An ADC of 255 means the cell is hit (binary read-out)
* Copy the value of the Digis to the 2D matrix (hit or not).
*/

void Phase2TrackerClusterizerAlgorithm::fillMatrix(edm::DetSet< Phase2TrackerDigi >::const_iterator begin, edm::DetSet< Phase2TrackerDigi >::const_iterator end) {
Expand Down

0 comments on commit 0bf80a9

Please sign in to comment.