ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/IPHCalignment2/TrackingTools/PatternTools/interface/TrackConstraintAssociation.h
Revision: 1.1
Committed: Fri Nov 25 16:38:24 2011 UTC (13 years, 5 months ago) by econte
Content type: text/plain
Branch: MAIN
CVS Tags: TBD2011, TBD_2011, HEAD
Log Message:
new IPHC alignment

File Contents

# User Rev Content
1 econte 1.1 #ifndef TrackingTools_PatternTools_TrackConstraintAssociation_h
2     #define TrackingTools_PatternTools_TrackConstraintAssociation_h
3    
4     #include "DataFormats/Common/interface/AssociationMap.h"
5     #include "DataFormats/GeometryVector/interface/GlobalPoint.h"
6     #include "DataFormats/GeometryCommonDetAlgo/interface/GlobalError.h"
7     #include "DataFormats/TrackReco/interface/TrackFwd.h"
8     #include "TrackingTools/TrajectoryState/interface/TrajectoryStateOnSurface.h"
9    
10     //typedef std::pair<double,double> MomentumConstraint;
11     struct MomentumConstraint {
12     MomentumConstraint(const double & f, const double & s) :momentum(f),error(s){}
13     MomentumConstraint() : momentum(0), error(0) {}
14    
15     double momentum;
16     double error;
17     };
18    
19     typedef std::pair<GlobalPoint,GlobalError> VertexConstraint;
20    
21     typedef TrajectoryStateOnSurface TrackParamConstraint;
22    
23     typedef edm::AssociationMap<edm::OneToOne<reco::TrackCollection,std::vector<MomentumConstraint> > > TrackMomConstraintAssociationCollection;
24     typedef TrackMomConstraintAssociationCollection::value_type TrackMomConstraintAssociation;
25     typedef edm::Ref<TrackMomConstraintAssociationCollection> TrackMomConstraintAssociationRef;
26     typedef edm::RefProd<TrackMomConstraintAssociationCollection> TrackMomConstraintAssociationRefProd;
27     typedef edm::RefVector<TrackMomConstraintAssociationCollection> TrackMomConstraintAssociationRefVector;
28    
29     typedef edm::AssociationMap<edm::OneToOne<reco::TrackCollection,std::vector<VertexConstraint> > > TrackVtxConstraintAssociationCollection;
30     typedef TrackVtxConstraintAssociationCollection::value_type TrackVtxConstraintAssociation;
31     typedef edm::Ref<TrackVtxConstraintAssociationCollection> TrackVtxConstraintAssociationRef;
32     typedef edm::RefProd<TrackVtxConstraintAssociationCollection> TrackVtxConstraintAssociationRefProd;
33     typedef edm::RefVector<TrackVtxConstraintAssociationCollection> TrackVtxConstraintAssociationRefVector;
34    
35     typedef edm::AssociationMap<edm::OneToOne<reco::TrackCollection,std::vector<TrackParamConstraint> > > TrackParamConstraintAssociationCollection;
36     typedef TrackParamConstraintAssociationCollection::value_type TrackParamConstraintAssociation;
37     typedef edm::Ref<TrackParamConstraintAssociationCollection> TrackParamConstraintAssociationRef;
38     typedef edm::RefProd<TrackParamConstraintAssociationCollection> TrackParamConstraintAssociationRefProd;
39     typedef edm::RefVector<TrackParamConstraintAssociationCollection> TrackParamConstraintAssociationRefVector;
40    
41     #endif