tvector<nr_type_t> tvector<nr_type_t>::operator -= (tvector<nr_type_t> a) { assert (a.getSize () == size); nr_type_t * src = a.getData (); nr_type_t * dst = data; for (int i = 0; i < size; i++) *dst++ -= *src++; return *this; }
void tmatrix<nr_type_t>::setCol (int c, tvector<nr_type_t> v) { assert (c >= 0 && c < cols && v.getSize () == rows); nr_type_t * dst = &data[c]; nr_type_t * src = v.getData (); for (int r = 0; r < rows; r++, src++, dst += cols) *dst = *src; }
void tmatrix<nr_type_t>::setRow (int r, tvector<nr_type_t> v) { assert (r >= 0 && r < rows && v.getSize () == cols); nr_type_t * dst = &data[r * cols]; nr_type_t * src = v.getData (); memcpy (dst, src, sizeof (nr_type_t) * cols); }