59 vector<string> factoryNames = config.
getParameter< vector<string> >(
"TrajectoryFactoryNames" );
60 vector<string>::iterator itFactoryName;
61 for ( itFactoryName = factoryNames.begin(); itFactoryName != factoryNames.end(); ++itFactoryName )
64 std::auto_ptr<TObjArray> namePset(TString((*itFactoryName).c_str()).Tokenize(
","));
65 if (namePset->GetEntriesFast() != 2) {
66 throw cms::Exception(
"BadConfig") <<
"@SUB=CombinedTrajectoryFactory"
67 <<
"TrajectoryFactoryNames must contain 2 comma "
68 <<
"separated strings, but is '" << *itFactoryName <<
"'";
89 vector< TrajectoryFactoryBase* >::const_iterator itFactory;
92 tmpTrajectories = ( *itFactory )->trajectories(setup, tracks, beamSpot);
93 trajectories.insert(trajectories.end(), tmpTrajectories.begin(), tmpTrajectories.end());
110 vector< TrajectoryFactoryBase* >::const_iterator itFactory;
113 tmpTrajectories = ( *itFactory )->trajectories(setup, tracks, external, beamSpot);
114 trajectories.insert(trajectories.end(), tmpTrajectories.begin(), tmpTrajectories.end());
T getParameter(std::string const &) const
CombinedTrajectoryFactory(const edm::ParameterSet &config)
std::vector< TrajectoryFactoryBase * > theFactories
virtual const ReferenceTrajectoryCollection trajectories(const edm::EventSetup &setup, const ConstTrajTrackPairCollection &tracks, const reco::BeamSpot &beamSpot) const override
AlignmentAlgorithmBase::ConstTrajTrackPairCollection ConstTrajTrackPairCollection
std::vector< ReferenceTrajectoryPtr > ReferenceTrajectoryCollection
#define DEFINE_EDM_PLUGIN(factory, type, name)
virtual CombinedTrajectoryFactory * clone() const override
std::vector< TrajectoryStateOnSurface > ExternalPredictionCollection
void setup(std::vector< TH2F > &depth, std::string name, std::string units="")
T get(const Candidate &c)
virtual ~CombinedTrajectoryFactory()