@@ -24,42 +24,42 @@ class NDSlice {
2424
2525
2626 // vector with one Slice per dimension, e.g. our nd-slice
27- ndslice_t slice_vec_ ;
27+ ndslice_t _slice_vec ;
2828 // helper, holding sizes of each dimensions's slice
29- mutable std::vector<uint64_t > sizes_ ;
29+ mutable std::vector<uint64_t > _sizes ;
3030
3131public:
3232 NDSlice () = default ;
3333 NDSlice (NDSlice &&) = default ;
34- NDSlice (const NDSlice & o) : slice_vec_ (o.slice_vec_ ), sizes_ () {}
35- NDSlice (const std::initializer_list<Slice> & slc) : slice_vec_ (slc), sizes_ () {}
36- NDSlice (const ndslice_t & sv) : slice_vec_ (sv), sizes_ () {}
37- NDSlice (ndslice_t && sv) : slice_vec_ (std::move(sv)), sizes_ () {}
34+ NDSlice (const NDSlice & o) : _slice_vec (o._slice_vec ), _sizes () {}
35+ NDSlice (const std::initializer_list<Slice> & slc) : _slice_vec (slc), _sizes () {}
36+ NDSlice (const ndslice_t & sv) : _slice_vec (sv), _sizes () {}
37+ NDSlice (ndslice_t && sv) : _slice_vec (std::move(sv)), _sizes () {}
3838 template <typename T>
3939 NDSlice (const std::vector<T> & v)
40- : slice_vec_ (v.size()), sizes_ ()
40+ : _slice_vec (v.size()), _sizes ()
4141 {
4242 uint32_t i = -1 ;
43- for (auto s : v) slice_vec_ [++i] = Slice (s);
43+ for (auto s : v) _slice_vec [++i] = Slice (s);
4444 }
4545 NDSlice (const NDIndex & idx)
46- : slice_vec_ (idx.size()), sizes_ ()
46+ : _slice_vec (idx.size()), _sizes ()
4747 {
4848 uint32_t i = -1 ;
49- for (auto s : idx) slice_vec_ [++i] = Slice (s, s+1 );
49+ for (auto s : idx) _slice_vec [++i] = Slice (s, s+1 );
5050 }
5151
5252 NDSlice & operator =(NDSlice &&) = default ;
5353 NDSlice & operator =(const NDSlice &) = default ;
5454
55- // inits helper attribute sizes_ (for lazy computation)
55+ // inits helper attribute _sizes (for lazy computation)
5656 // [i] holds the number of elements for dimensions [i,N[
5757 void init_sizes () const
5858 {
59- sizes_ .resize (slice_vec_ .size ());
60- auto v = sizes_ .rbegin ();
59+ _sizes .resize (_slice_vec .size ());
60+ auto v = _sizes .rbegin ();
6161 value_type::value_type sz = 1 ;
62- for (auto i = slice_vec_ .rbegin (); i != slice_vec_ .rend (); ++i, ++v) {
62+ for (auto i = _slice_vec .rbegin (); i != _slice_vec .rend (); ++i, ++v) {
6363 sz *= (*i).size ();
6464 *v = sz;
6565 }
@@ -70,7 +70,7 @@ class NDSlice {
7070 // /
7171 bool is_block () const
7272 {
73- for (auto s : slice_vec_ ) {
73+ for (auto s : _slice_vec ) {
7474 if (! s.is_block ()) return false ;
7575 }
7676 return true ;
@@ -81,9 +81,9 @@ class NDSlice {
8181 // /
8282 shape_type shape () const
8383 {
84- std::vector<uint64_t > ret (slice_vec_ .size ());
84+ std::vector<uint64_t > ret (_slice_vec .size ());
8585 auto v = ret.begin ();
86- for (auto i = slice_vec_ .begin (); i != slice_vec_ .end (); ++i, ++v) {
86+ for (auto i = _slice_vec .begin (); i != _slice_vec .end (); ++i, ++v) {
8787 *v = (*i).size ();
8888 }
8989 return ret;
@@ -94,39 +94,39 @@ class NDSlice {
9494 // /
9595 value_type::value_type size () const
9696 {
97- if (sizes_ .empty ()) init_sizes ();
98- return sizes_ [0 ];
97+ if (_sizes .empty ()) init_sizes ();
98+ return _sizes [0 ];
9999 }
100100
101101 // /
102102 // / @return number of dimensions
103103 // /
104104 size_t ndims () const
105105 {
106- return slice_vec_ .size ();
106+ return _slice_vec .size ();
107107 }
108108
109109 // /
110110 // / Set slice of given dimension to slc
111111 // /
112112 void set (uint64_t dim, const Slice & slc)
113113 {
114- slice_vec_ [dim] = slc;
115- sizes_ .resize (0 );
114+ _slice_vec [dim] = slc;
115+ _sizes .resize (0 );
116116 }
117117
118118 // /
119119 // / @return ith index-tuple in canonical (flat) order of the expanded slice.
120120 // / does not check bounds, e.g. can return indices beyond end of slice
121121 // /
122122 value_type operator [](value_type::value_type i) const {
123- if (sizes_ .empty ()) init_sizes ();
124- value_type ret (slice_vec_ .size (), 0 );
125- auto sz = ++(sizes_ .begin ());
126- auto slc = slice_vec_ .rbegin ();
123+ if (_sizes .empty ()) init_sizes ();
124+ value_type ret (_slice_vec .size (), 0 );
125+ auto sz = ++(_sizes .begin ());
126+ auto slc = _slice_vec .rbegin ();
127127 // iterate over dimensions to compute ith index
128128 for (auto v = ret.begin (); v != ret.end (); ++v, ++slc) {
129- if (sz != sizes_ .end ()) {
129+ if (sz != _sizes .end ()) {
130130 auto idx = i / (*sz);
131131 *v = (*slc)[idx];
132132 i -= idx * (*sz);
@@ -142,8 +142,8 @@ class NDSlice {
142142 NDSlice _convert (const C & conv) const
143143 {
144144 ndslice_t sv;
145- sv.reserve (slice_vec_ .size ());
146- for (auto i = 0 ; i != slice_vec_ .size (); ++i) {
145+ sv.reserve (_slice_vec .size ());
146+ for (auto i = 0 ; i != _slice_vec .size (); ++i) {
147147 sv.push_back (conv (i));
148148 }
149149 return NDSlice (std::move (sv));
@@ -155,24 +155,24 @@ class NDSlice {
155155 NDSlice slice (const NDSlice & slc) const
156156 {
157157 return _convert ([&](uint64_t i) {
158- return slice_vec_ [i].slice (slc.dim (i));
158+ return _slice_vec [i].slice (slc.dim (i));
159159 } );
160160 }
161161
162162 NDSlice normalize () const
163163 {
164164 return _convert ([&](uint64_t i) {
165- return slice_vec_ [i].normalize ();
165+ return _slice_vec [i].normalize ();
166166 } );
167167 }
168168
169169 // /
170- // / @return NDSlice with same same, shifted left by start_ in each dimension and with strides 1
170+ // / @return NDSlice with same same, shifted left by _start in each dimension and with strides 1
171171 // /
172172 NDSlice deflate (const NDSlice & slc) const
173173 {
174174 return _convert ([&](uint64_t i) {
175- return slice_vec_ [i].deflate (slc.dim (i).start_ );
175+ return _slice_vec [i].deflate (slc.dim (i)._start );
176176 } );
177177 }
178178
@@ -182,40 +182,40 @@ class NDSlice {
182182 NDSlice inflate (const NDSlice & slc) const
183183 {
184184 return _convert ([&](uint64_t i) {
185- return slice_vec_ [i].inflate (slc.dim (i).start_ , slc.dim (i).step_ );
185+ return _slice_vec [i].inflate (slc.dim (i)._start , slc.dim (i)._step );
186186 } );
187187 }
188188
189189 // /
190- // / @return Copy of NDSlice which was shifted left by start_ in each dim of slc
190+ // / @return Copy of NDSlice which was shifted left by _start in each dim of slc
191191 // /
192192 NDSlice shift (const NDSlice & slc) const
193193 {
194194 return _convert ([&](uint64_t i) {
195- return slice_vec_ [i].shift (slc.dim (i).start_ );
195+ return _slice_vec [i].shift (slc.dim (i)._start );
196196 } );
197197 }
198198
199199 // /
200- // / @return Copy of NDSlice which was trimmed by t_slc and shifted by s_slc.start_ 's
200+ // / @return Copy of NDSlice which was trimmed by t_slc and shifted by s_slc._start 's
201201 // /
202202 NDSlice trim_shift (const NDSlice & t_slc, const NDSlice & s_slc) const
203203 {
204204 return _convert ([&](uint64_t i) {
205- return slice_vec_ [i].trim (t_slc.dim (i).start_ , t_slc.dim (i).end_ , s_slc.dim (i).start_ );
205+ return _slice_vec [i].trim (t_slc.dim (i)._start , t_slc.dim (i)._end , s_slc.dim (i)._start );
206206 } );
207207 }
208208
209209 NDSlice map (const NDSlice & slc) const
210210 {
211211 return _convert ([&](uint64_t i) {
212- return slice_vec_ [i].map (slc.dim (i));
212+ return _slice_vec [i].map (slc.dim (i));
213213 } );
214214 }
215215
216216 NDSlice normalize (uint32_t D) const
217217 {
218- ndslice_t slc (slice_vec_ );
218+ ndslice_t slc (_slice_vec );
219219 slc[D] = slc[D].normalize ();
220220 return NDSlice (slc);
221221 }
@@ -225,7 +225,7 @@ class NDSlice {
225225 // /
226226 NDSlice deflate (uint32_t D, uint64_t offset) const
227227 {
228- ndslice_t slc (slice_vec_ );
228+ ndslice_t slc (_slice_vec );
229229 slc[D] = slc[D].deflate (offset);
230230 return NDSlice (slc);
231231 }
@@ -235,7 +235,7 @@ class NDSlice {
235235 // /
236236 NDSlice trim (uint32_t D, const value_type::value_type start, const value_type::value_type end) const
237237 {
238- ndslice_t slc (slice_vec_ );
238+ ndslice_t slc (_slice_vec );
239239 slc[D] = slc[D].trim (start, end);
240240 return NDSlice (std::move (slc));
241241 }
@@ -245,7 +245,7 @@ class NDSlice {
245245 // /
246246 NDSlice shift (uint32_t D, value_type::value_type s) const
247247 {
248- ndslice_t slc (slice_vec_ );
248+ ndslice_t slc (_slice_vec );
249249 slc[D] = slc[D].shift (s);
250250 return NDSlice (std::move (slc));
251251 }
@@ -255,7 +255,7 @@ class NDSlice {
255255 // /
256256 NDSlice trim_shift (uint32_t D, const value_type::value_type start, const value_type::value_type end, const value_type::value_type shft) const
257257 {
258- ndslice_t slc (slice_vec_ );
258+ ndslice_t slc (_slice_vec );
259259 slc[D] = slc[D].trim (start, end).shift (shft);
260260 return NDSlice (std::move (slc));
261261 }
@@ -265,8 +265,8 @@ class NDSlice {
265265 // /
266266 value_type::value_type size_upto (value_type::value_type end) const
267267 {
268- ndslice_t slc (slice_vec_ );
269- slc[0 ] = Slice (slc[0 ].start_ , end, slc[0 ].step_ );
268+ ndslice_t slc (_slice_vec );
269+ slc[0 ] = Slice (slc[0 ]._start , end, slc[0 ]._step );
270270 return NDSlice (std::move (slc)).size ();
271271 }
272272
@@ -275,7 +275,7 @@ class NDSlice {
275275 // /
276276 const ndslice_t ::value_type & dim (size_t d) const
277277 {
278- return slice_vec_ [d];
278+ return _slice_vec [d];
279279 }
280280
281281 // /
@@ -284,7 +284,7 @@ class NDSlice {
284284 bool covers (const value_type & idx) const
285285 {
286286 auto i = idx.begin ();
287- for (auto x : slice_vec_ ) {
287+ for (auto x : _slice_vec ) {
288288 if (!x.covers (*i)) return false ;
289289 ++i;
290290 }
@@ -294,12 +294,12 @@ class NDSlice {
294294 template <typename S>
295295 void serialize (S & ser)
296296 {
297- ser.container (slice_vec_ , 8 );
297+ ser.container (_slice_vec , 8 );
298298 }
299299
300300 friend std::ostream &operator <<(std::ostream &output, const NDSlice & slc) {
301301 output << " [" ;
302- for (auto x : slc.slice_vec_ ) output << x << " , " ;
302+ for (auto x : slc._slice_vec ) output << x << " , " ;
303303 output << " ]" ;
304304 return output;
305305 }
@@ -368,7 +368,7 @@ class NDSlice {
368368 // /
369369 iterator begin () const noexcept
370370 {
371- return size () ? iterator (&slice_vec_ ) : end ();
371+ return size () ? iterator (&_slice_vec ) : end ();
372372 }
373373
374374 // /
0 commit comments