/// For some reason operator[] provided by iterator_facade returns a custom class that is convertible to reference /// We require our own reference because it is registered in iterator_traits reference operator[](difference_type d) const { return memunit_advanced_ref(*this,d*sizeof(channel_t));}
/** For some reason operator[] provided by iterator_facade returns a custom class that is convertible to reference. We require our own reference because it is registered in iterator_traits. */ reference operator[] (difference_type d) const { return memunit_advanced_ref (*this, d * sizeof (sample_type)); }