Mercurial > jwe > octave
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; |