65 produces< std::vector<CTPPSLocalTrackLite> >();
77 std::unique_ptr< std::vector<CTPPSLocalTrackLite> > pOut(
new std::vector<CTPPSLocalTrackLite>() );
86 for (
const auto& rpv : *inputSiStripTracks ) {
87 const uint32_t rpId = rpv.detId();
88 for (
const auto& trk : rpv ) {
89 if ( !trk.isValid() )
continue;
90 pOut->emplace_back( rpId, trk.getX0(), trk.getX0Sigma(), trk.getY0(), trk.getY0Sigma() );
101 for (
const auto& rpv : *inputDiamondTracks ) {
102 const unsigned int rpId = rpv.detId();
103 for (
const auto& trk : rpv ) {
104 if ( !trk.isValid() )
continue;
105 pOut->emplace_back( rpId, trk.getX0(), trk.getX0Sigma(), trk.getY0(), trk.getY0Sigma(), trk.getT() );
114 <<
"Wrong number of parameters in pixel track Tx/Ty range";
120 for (
const auto& rpv : *inputPixelTracks ) {
121 const uint32_t rpId = rpv.detId();
122 for (
const auto& trk : rpv ) {
123 if ( !trk.isValid() )
continue;
126 pOut->emplace_back( rpId, trk.getX0(), trk.getX0Sigma(), trk.getY0(), trk.getY0Sigma() );
142 ->setComment(
"input TOTEM strips' local tracks collection to retrieve" );
144 ->setComment(
"input diamond detectors' local tracks collection to retrieve" );
146 ->setComment(
"input pixel detectors' local tracks collection to retrieve" );
147 desc.
add<
bool>(
"doNothing",
true )
148 ->setComment(
"disable the module" );
150 desc.
add<std::vector<double> >(
"pixelTrackTxRange",std::vector<double>({-0.03,0.03}) );
151 desc.
add<std::vector<double> >(
"pixelTrackTyRange",std::vector<double>({-0.04,0.04}) );
153 descr.
add(
"ctppsLocalTrackLiteDefaultProducer", desc );
T getParameter(std::string const &) const
OrphanHandle< PROD > put(std::unique_ptr< PROD > product)
Put a new product.
std::vector< double > pixelTrackTxRange_
bool getByToken(EDGetToken token, Handle< PROD > &result) const
#define DEFINE_FWK_MODULE(type)
void produce(edm::Event &, const edm::EventSetup &) override
CTPPSLocalTrackLiteProducer(const edm::ParameterSet &)
ParameterDescriptionBase * add(U const &iLabel, T const &value)
~CTPPSLocalTrackLiteProducer() override
void add(std::string const &label, ParameterSetDescription const &psetDescription)
Distills the essential track data from all RPs.
edm::EDGetTokenT< edm::DetSetVector< CTPPSPixelLocalTrack > > pixelTrackToken_
bool isUninitialized() const
edm::EDGetTokenT< edm::DetSetVector< CTPPSDiamondLocalTrack > > diamondTrackToken_
edm::EDGetTokenT< edm::DetSetVector< TotemRPLocalTrack > > siStripTrackToken_
static void fillDescriptions(edm::ConfigurationDescriptions &)
std::vector< double > pixelTrackTyRange_