~mfedorov/maus/trunk

« back to all changes in this revision

Viewing changes to src/map/MapCppGlobalTrackMatching/MapCppGlobalTrackMatching.cc

  • Committer: Chris Rogers
  • Date: 2017-09-15 18:11:17 UTC
  • Revision ID: chris.rogers@stfc.ac.uk-20170915181117-obanstiqfgs42pqg
Add virtual plane output and thru going track matching by propagation to GlobalTrackMatching

Show diffs side-by-side

added added

removed removed

Lines of Context:
80
80
    _matching_tolerances["EMR"] = std::make_pair(
81
81
        track_matching_tolerances["EMRx"].asDouble(),
82
82
        track_matching_tolerances["EMRy"].asDouble());
 
83
    _matching_tolerances["TKD"] = std::make_pair(
 
84
        track_matching_tolerances["TKDpos"].asDouble(),
 
85
        track_matching_tolerances["TKDp"].asDouble());
83
86
    _energy_loss = _configJSON["track_matching_energy_loss"].asBool();
84
87
    std::string geo_filename = _configJSON["reconstruction_geometry_filename"].asString();
85
88
    MiceModule* geo_module = new MiceModule(geo_filename);
120
123
                        extra_z_planes, "MapCppGlobalTrackMatching::_process");
121
124
    }
122
125
 
 
126
    std::string through_tracks =
 
127
                    _configJSON["track_matching_through_matching_logic"].asString();
 
128
 
 
129
    if (through_tracks == "no_through_matching") {
 
130
        _through_matching_algo = recon::global::TrackMatching::kNoThroughMatching;
 
131
    } else if (through_tracks == "tof12") {
 
132
        _through_matching_algo = recon::global::TrackMatching::kTOF12;
 
133
    } else if (through_tracks == "propagate") {
 
134
        _through_matching_algo = recon::global::TrackMatching::kPropagate;
 
135
    } else if (through_tracks == "propagate_requiring_tof12") {
 
136
        _through_matching_algo = recon::global::TrackMatching::kPropagateRequiringTOF12;
 
137
    } else if (through_tracks == "propagate_and_tof12") {
 
138
        _through_matching_algo = recon::global::TrackMatching::kPropagateAndTOF12;
 
139
    } else {
 
140
        throw Exceptions::Exception(Exceptions::recoverable,
 
141
                        "Did not recognise track_matching_through_matching_logic "+
 
142
                        geometry_lookup, "MapCppGlobalTrackMatching::_process");
 
143
    }
123
144
  }
124
145
 
125
146
  void MapCppGlobalTrackMatching::_death() {
155
176
            track_matching(global_event, _mapper_name, _pid_hypothesis_string,
156
177
                           _beamline_polarity, _matching_tolerances, 20.0,
157
178
                           _no_check_settings, _energy_loss, _residuals, _geom_algo,
158
 
                           _extra_z_planes);
 
179
                           _extra_z_planes, _through_matching_algo);
159
180
        track_matching.USTrack();
160
181
        track_matching.DSTrack();
161
182
        if (_through_matching) {