inline void sbgvx( char const jobz, char const range, char const uplo, integer_t const n, integer_t const ka, integer_t const kb, float* ab, integer_t const ldab, float* bb, integer_t const ldbb, float* q, integer_t const ldq, float const vl, float const vu, integer_t const il, integer_t const iu, float const abstol, integer_t& m, float* w, float* z, integer_t const ldz, float* work, integer_t* iwork, integer_t* ifail, integer_t& info ) { LAPACK_SSBGVX( &jobz, &range, &uplo, &n, &ka, &kb, ab, &ldab, bb, &ldbb, q, &ldq, &vl, &vu, &il, &iu, &abstol, &m, w, z, &ldz, work, iwork, ifail, &info ); }
inline std::ptrdiff_t sbgvx( const char jobz, const char range, const UpLo, const fortran_int_t n, const fortran_int_t ka, const fortran_int_t kb, float* ab, const fortran_int_t ldab, float* bb, const fortran_int_t ldbb, float* q, const fortran_int_t ldq, const float vl, const float vu, const fortran_int_t il, const fortran_int_t iu, const float abstol, fortran_int_t& m, float* w, float* z, const fortran_int_t ldz, float* work, fortran_int_t* iwork, fortran_int_t* ifail ) { fortran_int_t info(0); LAPACK_SSBGVX( &jobz, &range, &lapack_option< UpLo >::value, &n, &ka, &kb, ab, &ldab, bb, &ldbb, q, &ldq, &vl, &vu, &il, &iu, &abstol, &m, w, z, &ldz, work, iwork, ifail, &info ); return info; }