77 theResidMethod(config.getParameter<int>(
"ResidualMethod"))
80 edm::LogInfo(
"Alignment") <<
"@SUB=DualKalmanFactory" <<
"Factory created.";
99 ConstTrajTrackPairCollection::const_iterator itTracks = tracks.begin();
101 while (itTracks != tracks.end()) {
114 trajectories.push_back(ptr);
131 edm::LogError(
"Alignment") <<
"@SUB=DualKalmanFactory::trajectories"
132 <<
"Not implemented with ExternalPrediction.";
154 std::vector<unsigned int> usedTrajMeasNums;
158 unsigned int nRefStateMeas = usedTrajMeasNums.size()/2;
161 for (
unsigned int iMeas = 0; iMeas < usedTrajMeasNums.size(); ++iMeas) {
162 if (iMeas < nRefStateMeas) {
164 }
else if (iMeas > nRefStateMeas) {
167 if (input.
trajMeasurements[usedTrajMeasNums[iMeas]].updatedState().isValid()) {
MaterialEffects materialEffects(void) const
virtual const Trajectory::DataContainer orderedTrajectoryMeasurements(const Trajectory &trajectory) const
AlignmentAlgorithmBase::ConstTrajTrackPair ConstTrajTrackPair
virtual const ReferenceTrajectoryCollection trajectories(const edm::EventSetup &setup, const ConstTrajTrackPairCollection &tracks, const reco::BeamSpot &beamSpot) const
Produce the reference trajectories.
bool useRecHit(const TransientTrackingRecHit::ConstRecHitPointer &hitPtr) const
std::vector< TrajectoryMeasurement > DataContainer
virtual DualKalmanFactory * clone() const
AlignmentAlgorithmBase::ConstTrajTrackPairCollection ConstTrajTrackPairCollection
virtual ~DualKalmanFactory()
std::vector< ReferenceTrajectoryPtr > ReferenceTrajectoryCollection
T const * product() const
DualKalmanFactory(const edm::ParameterSet &config)
PropagationDirection propagationDirection(void) const
#define DEFINE_EDM_PLUGIN(factory, type, name)
std::vector< TrajectoryStateOnSurface > ExternalPredictionCollection
const DualKalmanInput referenceStateAndRecHits(const ConstTrajTrackPair &track) const
void setup(std::vector< TH2F > &depth, std::string name, std::string units="")