26 #include "RangoIndice.h" 35 :row_range(rf),column_range(rc) {}
38 size_t getNumberOfRows(
void)
const 39 {
return row_range.Size(); }
40 size_t getNumberOfColumns(
void)
const 41 {
return column_range.Size(); }
42 size_t Size(
void)
const 43 {
return getNumberOfRows()*getNumberOfColumns(); }
49 {
return column_range; }
51 {
return column_range; }
52 bool isRow(
void)
const 53 {
return (row_range.Size()==1); }
54 bool isColumn(
void)
const 55 {
return (column_range.Size()==1); }
56 bool Vacio(
void)
const;
57 inline static const char &Separador(
void)
58 {
return RangoIndice::Separador(); }
59 void Clip(
const size_t &fmax,
const size_t &cmax);
62 void Print(std::ostream &os)
const;
69 std::ostream &operator<<(std::ostream &os,
const MatrixRange &rango);
73 MatrixRange::MatrixRange(
const M &m)
74 : row_range(1,m.getNumberOfRows()),column_range(1,m.getNumberOfColumns()) {}
void Intersec(const MatrixRange &otro)
Asigna a ESTE la intersección de ambos rangos.
Definition: MatrixRange.cc:41
bool Vacio(void) const
Return verdadero si el rango no contiene ningún índice.
Definition: MatrixRange.cc:25
void Print(std::ostream &os) const
Imprime el rango.
Definition: MatrixRange.cc:29
Rango de variación de un índice, se emplea en BoxConstRef.
Definition: MatrixRange.h:29
void Clip(const size_t &fmax, const size_t &cmax)
Reduce los valores del rango de manera que ambos sean menores que los being passed as parameter...
Definition: MatrixRange.cc:34
Rango de variación de un índice, se emplea en BoxConstRef.
Definition: RangoIndice.h:30