subroutine set_interpolator(func,nquality)
! Parameter for interpolator's quality
! It might mean different things for different
! interpolators
integer, intent(in) :: nquality
! We should not need to repeat this...
interface
subroutine func(nquality,x,y,npts,r,val,debug)
integer, parameter :: dp = selected_real_kind(10,100)
integer, intent(in) :: nquality ! Quality parameter
real(dp), intent(in) :: x(*), y(*)
integer, intent(in) :: npts ! Size of x, y arrays
real(dp), intent(in) :: r
real(dp), intent(out):: val
logical, intent(in) :: debug
end subroutine func
end interface
interpolator => func
nq = nquality
end subroutine set_interpolator