70 class VectorWriterT :
public VectorWriterBaseT<ValueT>
73 using ValueType = ValueT;
76 using Indexer =
typename Parameters::Indexer;
83 using VectorWriterBaseT<ValueT>::operator=;
87 virtual ~VectorWriterT() {}
89 inline ValueType& operator[](Integer iIndex)
91 const Integer
id = Indexer::index(iIndex, this->m_local_offset);
92 return this->m_values[id];
95 inline Integer size()
const {
return this->m_values.size(); }
97 inline VectorElement operator()(ConstArrayView<Integer> indexes)
99 return VectorElement(this->m_values, indexes, this->m_local_offset);
102 inline MultVectorElement operator()(
103 ValueType factor, ConstArrayView<Integer> indexes)
105 return MultVectorElement(this->m_values, factor, indexes, this->m_local_offset);
108 inline MultVectorElement2 operator()(
109 ValueType factor, ConstArray2View<Integer> indexes, Integer i)
111 return MultVectorElement2(this->m_values, factor, indexes, i, this->m_local_offset);