comparison liboctave/array/Array.h @ 21131:54527108599a

store more --enable-FEATURE info in octave_config_info * configure.ac: (ENABLE_64, ENABLE_BOUNDS_CHECK, ENABLE_DOCS, ENABLE_FLOAT_TRUNCATE, ENABLE_JIT, ENABLE_OPENMP): New variables. macros. Handle consistently and AC_DEFINE them. * common.mk, toplev.cc, oct-conf.in.h: Substitute new variables and store them in octave_config_info. * oct-conf-post.in.h: Provide old macro names for compatibility. * Array.cc, Array.h, DiagArray2.h, PermMatrix.h, Range.cc, Sparse.h, dim-vector.h, idx-vector.h, oct-refcount.h: Fix uses of macros.
author John W. Eaton <jwe@octave.org>
date Thu, 21 Jan 2016 18:18:16 -0500
parents 3e7cfee5f786
children 2e5c1f766ac9
comparison
equal deleted inserted replaced
21130:9d7619605e5e 21131:54527108599a
391 { return elem (i, dim2 ()*k+j); } 391 { return elem (i, dim2 ()*k+j); }
392 392
393 T& elem (const Array<octave_idx_type>& ra_idx) 393 T& elem (const Array<octave_idx_type>& ra_idx)
394 { return Array<T>::elem (compute_index_unchecked (ra_idx)); } 394 { return Array<T>::elem (compute_index_unchecked (ra_idx)); }
395 395
396 #if defined (BOUNDS_CHECKING) 396 #if defined (ENABLE_BOUNDS_CHECK)
397 T& operator () (octave_idx_type n) { return checkelem (n); } 397 T& operator () (octave_idx_type n) { return checkelem (n); }
398 T& operator () (octave_idx_type i, octave_idx_type j) 398 T& operator () (octave_idx_type i, octave_idx_type j)
399 { return checkelem (i, j); } 399 { return checkelem (i, j); }
400 T& operator () (octave_idx_type i, octave_idx_type j, octave_idx_type k) 400 T& operator () (octave_idx_type i, octave_idx_type j, octave_idx_type k)
401 { return checkelem (i, j, k); } 401 { return checkelem (i, j, k); }
425 { return xelem (i, j, k); } 425 { return xelem (i, j, k); }
426 426
427 crefT elem (const Array<octave_idx_type>& ra_idx) const 427 crefT elem (const Array<octave_idx_type>& ra_idx) const
428 { return Array<T>::xelem (compute_index_unchecked (ra_idx)); } 428 { return Array<T>::xelem (compute_index_unchecked (ra_idx)); }
429 429
430 #if defined (BOUNDS_CHECKING) 430 #if defined (ENABLE_BOUNDS_CHECK)
431 crefT operator () (octave_idx_type n) const { return checkelem (n); } 431 crefT operator () (octave_idx_type n) const { return checkelem (n); }
432 crefT operator () (octave_idx_type i, octave_idx_type j) const 432 crefT operator () (octave_idx_type i, octave_idx_type j) const
433 { return checkelem (i, j); } 433 { return checkelem (i, j); }
434 crefT operator () (octave_idx_type i, octave_idx_type j, 434 crefT operator () (octave_idx_type i, octave_idx_type j,
435 octave_idx_type k) const 435 octave_idx_type k) const
446 crefT operator () (const Array<octave_idx_type>& ra_idx) const 446 crefT operator () (const Array<octave_idx_type>& ra_idx) const
447 { return elem (ra_idx); } 447 { return elem (ra_idx); }
448 #endif 448 #endif
449 449
450 // Fast extractors. All of these produce shallow copies. 450 // Fast extractors. All of these produce shallow copies.
451 // Warning: none of these do check bounds, unless BOUNDS_CHECKING is on! 451 // Warning: none of these do check bounds, unless
452 // ENABLE_BOUNDS_CHECK is defined!
452 453
453 //! Extract column: A(:,k+1). 454 //! Extract column: A(:,k+1).
454 Array<T> column (octave_idx_type k) const; 455 Array<T> column (octave_idx_type k) const;
455 //! Extract page: A(:,:,k+1). 456 //! Extract page: A(:,:,k+1).
456 Array<T> page (octave_idx_type k) const; 457 Array<T> page (octave_idx_type k) const;