Line data Source code
1 : #include "Solver.h" 2 : 3 : namespace elsa 4 : { 5 : template <typename data_t> 6 0 : Solver<data_t>::Solver(const Problem<data_t>& problem) : _problem{problem.clone()} 7 : { 8 0 : } 9 : 10 : template <typename data_t> 11 0 : const DataContainer<data_t>& Solver<data_t>::getCurrentSolution() const 12 : { 13 0 : return _problem->getCurrentSolution(); 14 : } 15 : 16 : template <typename data_t> 17 0 : DataContainer<data_t>& Solver<data_t>::getCurrentSolution() 18 : { 19 0 : return _problem->getCurrentSolution(); 20 : } 21 : 22 : template <typename data_t> 23 0 : DataContainer<data_t>& Solver<data_t>::solve(index_t iterations) 24 : { 25 0 : return solveImpl(iterations); 26 : } 27 : 28 : template <typename data_t> 29 0 : bool Solver<data_t>::isEqual(const Solver<data_t>& other) const 30 : { 31 0 : return static_cast<bool>(*_problem == *other._problem); 32 : } 33 : 34 : // ------------------------------------------ 35 : // explicit template instantiation 36 : template class Solver<float>; 37 : template class Solver<double>; 38 : template class Solver<complex<float>>; 39 : template class Solver<complex<double>>; 40 : 41 : } // namespace elsa