1 #ifndef _theplu_yat_utility_vector_base_
2 #define _theplu_yat_utility_vector_base_
31 #include "StrideIterator.h"
37 #include <gsl/gsl_vector.h>
114 virtual bool isview(
void)
const=0;
119 size_t size(
void)
const;
293 std::ostream& operator<<(std::ostream& s,
const VectorBase& v);
const gsl_vector * gsl_vector_p(void) const
const double & operator()(size_t i) const
Element access operator.
double value_type
Definition: VectorBase.h:60
bool operator!=(const VectorBase &) const
Comparison operator. Takes linear time.
StrideIterator< const double * > const_iterator
VectorBase::const_iterator.
Definition: VectorBase.h:70
const gsl_vector * const_vec_
pointer to underlying GSL vector
Definition: VectorBase.h:165
void sort_smallest_index(std::vector< size_t > &sort_index, size_t k, const VectorBase &invec)
const_iterator begin(void) const
T max(const T &a, const T &b, const T &c)
Definition: stl_utility.h:697
bool operator==(const VectorBase &) const
Comparison operator. Takes linear time.
This is the yat interface to GSL vector.
Definition: Vector.h:57
This is the yat interface to GSL vector.
Definition: VectorBase.h:52
virtual bool isview(void) const =0
double operator*(const VectorBase &) const
bool equal(const VectorBase &, const double precision=0) const
Check whether VectorBases are equal within a user defined precision, set by precision.
const_iterator end(void) const
void sort_index(InputIterator first, InputIterator last, std::vector< size_t > &sort_index)
Definition: sort_index.h:146
const double & const_reference
Definition: VectorBase.h:67
VectorBase(const gsl_vector *v=NULL)
Constructor.
virtual ~VectorBase(void)
void sort_largest_index(std::vector< size_t > &sort_index, size_t k, const VectorBase &invec)
Adaptor using a stride on underlying iterator.
Definition: StrideIterator.h:50