#include <scheme/test_reconstruction.hpp>

#include <scheme/PolynomialReconstruction.hpp>
#include <utils/Timer.hpp>

void
test_reconstruction(std::shared_ptr<const DiscreteFunctionVariant> df, size_t degree, size_t number)
{
  PolynomialReconstructionDescriptor descriptor{IntegrationMethodType::boundary, degree};
  PolynomialReconstruction rec_builder{descriptor};

  Timer t;

  for (size_t i = 0; i < number; ++i) {
    auto rec = rec_builder.build(df);
  }

  std::cout << "*** Elapsed time for " << number << " reconstructions: " << t.seconds() << "s ***\n";
}