Chris@49: // Copyright (C) 2008-2012 NICTA (www.nicta.com.au) Chris@49: // Copyright (C) 2008-2012 Conrad Sanderson Chris@49: // Chris@49: // This Source Code Form is subject to the terms of the Mozilla Public Chris@49: // License, v. 2.0. If a copy of the MPL was not distributed with this Chris@49: // file, You can obtain one at http://mozilla.org/MPL/2.0/. Chris@49: Chris@49: Chris@49: //! \addtogroup arma_config Chris@49: //! @{ Chris@49: Chris@49: Chris@49: Chris@49: struct arma_config Chris@49: { Chris@49: #if defined(ARMA_MAT_PREALLOC) Chris@49: static const uword mat_prealloc = (sword(ARMA_MAT_PREALLOC) > 0) ? uword(ARMA_MAT_PREALLOC) : 1; Chris@49: #else Chris@49: static const uword mat_prealloc = 16; Chris@49: #endif Chris@49: Chris@49: Chris@49: #if defined(ARMA_SPMAT_CHUNKSIZE) Chris@49: static const uword spmat_chunksize = (sword(ARMA_SPMAT_CHUNKSIZE) > 0) ? uword(ARMA_SPMAT_CHUNKSIZE) : 256; Chris@49: #else Chris@49: static const uword spmat_chunksize = 256; Chris@49: #endif Chris@49: Chris@49: Chris@49: #if defined(ARMA_USE_ATLAS) Chris@49: static const bool atlas = true; Chris@49: #else Chris@49: static const bool atlas = false; Chris@49: #endif Chris@49: Chris@49: Chris@49: #if defined(ARMA_USE_LAPACK) Chris@49: static const bool lapack = true; Chris@49: #else Chris@49: static const bool lapack = false; Chris@49: #endif Chris@49: Chris@49: Chris@49: #if defined(ARMA_USE_BLAS) Chris@49: static const bool blas = true; Chris@49: #else Chris@49: static const bool blas = false; Chris@49: #endif Chris@49: Chris@49: Chris@49: #if defined(ARMA_USE_BOOST) Chris@49: static const bool boost = true; Chris@49: #else Chris@49: static const bool boost = false; Chris@49: #endif Chris@49: Chris@49: Chris@49: #if defined(ARMA_USE_BOOST_DATE) Chris@49: static const bool boost_date = true; Chris@49: #else Chris@49: static const bool boost_date = false; Chris@49: #endif Chris@49: Chris@49: Chris@49: #if !defined(ARMA_NO_DEBUG) && !defined(NDEBUG) Chris@49: static const bool debug = true; Chris@49: #else Chris@49: static const bool debug = false; Chris@49: #endif Chris@49: Chris@49: Chris@49: #if defined(ARMA_EXTRA_DEBUG) Chris@49: static const bool extra_debug = true; Chris@49: #else Chris@49: static const bool extra_debug = false; Chris@49: #endif Chris@49: Chris@49: Chris@49: #if defined(ARMA_GOOD_COMPILER) Chris@49: static const bool good_comp = true; Chris@49: #else Chris@49: static const bool good_comp = false; Chris@49: #endif Chris@49: Chris@49: Chris@49: #if ( \ Chris@49: defined(ARMA_EXTRA_MAT_PROTO) || defined(ARMA_EXTRA_MAT_MEAT) \ Chris@49: || defined(ARMA_EXTRA_COL_PROTO) || defined(ARMA_EXTRA_COL_MEAT) \ Chris@49: || defined(ARMA_EXTRA_ROW_PROTO) || defined(ARMA_EXTRA_ROW_MEAT) \ Chris@49: || defined(ARMA_EXTRA_CUBE_PROTO) || defined(ARMA_EXTRA_CUBE_MEAT) \ Chris@49: || defined(ARMA_EXTRA_FIELD_PROTO) || defined(ARMA_EXTRA_FIELD_MEAT) \ Chris@49: || defined(ARMA_EXTRA_SPMAT_PROTO) || defined(ARMA_EXTRA_SPMAT_MEAT) \ Chris@49: || defined(ARMA_EXTRA_SPCOL_PROTO) || defined(ARMA_EXTRA_SPCOL_MEAT) \ Chris@49: || defined(ARMA_EXTRA_SPROW_PROTO) || defined(ARMA_EXTRA_SPROW_MEAT) \ Chris@49: ) Chris@49: static const bool extra_code = true; Chris@49: #else Chris@49: static const bool extra_code = false; Chris@49: #endif Chris@49: }; Chris@49: Chris@49: Chris@49: Chris@49: //! @}