/* This file is part of MAUS: http://micewww.pp.rl.ac.uk/projects/maus * * MAUS is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * MAUS is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with MAUS. If not, see . */ #include "src/common_cpp/JsonCppProcessors/SciFiHelicalPRTrackProcessor.hh" namespace MAUS { SciFiHelicalPRTrackProcessor::SciFiHelicalPRTrackProcessor() : _double_array_proc(new DoubleProcessor) { RegisterValueBranch("tracker", &_int_proc, &SciFiHelicalPRTrack::get_tracker, &SciFiHelicalPRTrack::set_tracker, true); RegisterValueBranch("charge", &_int_proc, &SciFiHelicalPRTrack::SciFiBasePRTrack::get_charge, &SciFiHelicalPRTrack::SciFiBasePRTrack::set_charge, true); RegisterValueBranch("phi0", &_double_proc, &SciFiHelicalPRTrack::get_phi0, &SciFiHelicalPRTrack::set_phi0, true); RegisterValueBranch("dsdz", &_double_proc, &SciFiHelicalPRTrack::get_dsdz, &SciFiHelicalPRTrack::set_dsdz, true); RegisterValueBranch("R", &_double_proc, &SciFiHelicalPRTrack::get_R, &SciFiHelicalPRTrack::set_R, true); RegisterValueBranch("line_sz_c", &_double_proc, &SciFiHelicalPRTrack::get_line_sz_c, &SciFiHelicalPRTrack::set_line_sz_c, true); RegisterValueBranch("line_sz_chisq", &_double_proc, &SciFiHelicalPRTrack::get_line_sz_chisq, &SciFiHelicalPRTrack::set_line_sz_chisq, true); RegisterValueBranch("circle_x0", &_double_proc, &SciFiHelicalPRTrack::get_circle_x0, &SciFiHelicalPRTrack::set_circle_x0, true); RegisterValueBranch("circle_y0", &_double_proc, &SciFiHelicalPRTrack::get_circle_y0, &SciFiHelicalPRTrack::set_circle_y0, true); RegisterValueBranch("circle_chisq", &_double_proc, &SciFiHelicalPRTrack::get_circle_chisq, &SciFiHelicalPRTrack::set_circle_chisq, true); RegisterValueBranch("chi_squared", &_double_proc, &SciFiHelicalPRTrack::get_chi_squared, &SciFiHelicalPRTrack::set_chi_squared, false); RegisterValueBranch("ndf", &_int_proc, &SciFiHelicalPRTrack::get_ndf, &SciFiHelicalPRTrack::set_ndf, false); RegisterValueBranch("point_spread", &_double_proc, &SciFiHelicalPRTrack::get_point_spread, &SciFiHelicalPRTrack::set_point_spread, true); RegisterValueBranch("pos0", &_threevector_proc, &SciFiHelicalPRTrack::get_pos0, &SciFiHelicalPRTrack::set_pos0, true); RegisterTRefArray("spacepoints", &_spoint_tref_proc, &SciFiHelicalPRTrack::get_spacepoints, &SciFiHelicalPRTrack::set_spacepoints, true); RegisterValueBranch("phi", &_double_array_proc, &SciFiHelicalPRTrack::get_phi, &SciFiHelicalPRTrack::set_phi, false); RegisterValueBranch("reference_position", &_threevector_proc, &SciFiHelicalPRTrack::get_reference_position, &SciFiHelicalPRTrack::set_reference_position, false); RegisterValueBranch("reference_momentum", &_threevector_proc, &SciFiHelicalPRTrack::get_reference_momentum, &SciFiHelicalPRTrack::set_reference_momentum, false); } } // ~namespace MAUS