Mat_meat.hpp | Mat_meat.hpp | |||
---|---|---|---|---|
skipping to change at line 368 | skipping to change at line 368 | |||
//! internal function to create the matrix from a textual description | //! internal function to create the matrix from a textual description | |||
template<typename eT> | template<typename eT> | |||
inline | inline | |||
void | void | |||
Mat<eT>::init(const std::string& text_orig) | Mat<eT>::init(const std::string& text_orig) | |||
{ | { | |||
arma_extra_debug_sigprint(); | arma_extra_debug_sigprint(); | |||
const bool replace_commas = (is_cx<eT>::yes) ? false : ( text_orig.find(' ,') != std::string::npos ); | const bool replace_commas = (is_cx<eT>::yes) ? false : ( text_orig.find(' ,') != std::string::npos ); | |||
std::string* text_mod = (replace_commas) ? new std::string(text_orig) : N ULL; | std::string text_mod; | |||
const std::string& text = (replace_commas) ? ( std::replace((*text_mod).b | if(replace_commas) { text_mod = text_orig; std::replace(text_mod.begin( | |||
egin(), (*text_mod).end(), ',', ' '), (*text_mod) ) : text_orig; | ), text_mod.end(), ',', ' '); } | |||
const std::string& text = (replace_commas) ? text_mod : text_orig; | ||||
// | // | |||
// work out the size | // work out the size | |||
uword t_n_rows = 0; | uword t_n_rows = 0; | |||
uword t_n_cols = 0; | uword t_n_cols = 0; | |||
bool t_n_cols_found = false; | bool t_n_cols_found = false; | |||
std::string token; | std::string token; | |||
skipping to change at line 458 | skipping to change at line 460 | |||
// while(line_stream >> token) | // while(line_stream >> token) | |||
// { | // { | |||
// x.at(urow,ucol) = strtod(token.c_str(), 0); | // x.at(urow,ucol) = strtod(token.c_str(), 0); | |||
// ++ucol; | // ++ucol; | |||
// } | // } | |||
uword ucol = 0; | uword ucol = 0; | |||
eT val; | eT val; | |||
while(line_stream >> val) | while(line_stream >> val) | |||
{ | { | |||
x.at(urow,ucol) = val; | x(urow,ucol) = val; | |||
++ucol; | ++ucol; | |||
} | } | |||
++urow; | ++urow; | |||
line_start = line_end+1; | line_start = line_end+1; | |||
} | } | |||
if(replace_commas) | ||||
{ | ||||
delete text_mod; | ||||
} | ||||
} | } | |||
//! create the matrix from std::vector | //! create the matrix from std::vector | |||
template<typename eT> | template<typename eT> | |||
inline | inline | |||
Mat<eT>::Mat(const std::vector<eT>& x) | Mat<eT>::Mat(const std::vector<eT>& x) | |||
: n_rows(uword(x.size())) | : n_rows(uword(x.size())) | |||
, n_cols(1) | , n_cols(1) | |||
, n_elem(uword(x.size())) | , n_elem(uword(x.size())) | |||
, vec_state(0) | , vec_state(0) | |||
End of changes. 4 change blocks. | ||||
9 lines changed or deleted | 6 lines changed or added | |||
arma_version.hpp | arma_version.hpp | |||
---|---|---|---|---|
skipping to change at line 13 | skipping to change at line 13 | |||
// | // | |||
// This Source Code Form is subject to the terms of the Mozilla Public | // This Source Code Form is subject to the terms of the Mozilla Public | |||
// License, v. 2.0. If a copy of the MPL was not distributed with this | // License, v. 2.0. If a copy of the MPL was not distributed with this | |||
// file, You can obtain one at http://mozilla.org/MPL/2.0/. | // file, You can obtain one at http://mozilla.org/MPL/2.0/. | |||
//! \addtogroup arma_version | //! \addtogroup arma_version | |||
//! @{ | //! @{ | |||
#define ARMA_VERSION_MAJOR 5 | #define ARMA_VERSION_MAJOR 5 | |||
#define ARMA_VERSION_MINOR 100 | #define ARMA_VERSION_MINOR 100 | |||
#define ARMA_VERSION_PATCH 0 | #define ARMA_VERSION_PATCH 1 | |||
#define ARMA_VERSION_NAME "unstable development version" | #define ARMA_VERSION_NAME "unstable development version" | |||
struct arma_version | struct arma_version | |||
{ | { | |||
static const unsigned int major = ARMA_VERSION_MAJOR; | static const unsigned int major = ARMA_VERSION_MAJOR; | |||
static const unsigned int minor = ARMA_VERSION_MINOR; | static const unsigned int minor = ARMA_VERSION_MINOR; | |||
static const unsigned int patch = ARMA_VERSION_PATCH; | static const unsigned int patch = ARMA_VERSION_PATCH; | |||
static | static | |||
inline | inline | |||
End of changes. 1 change blocks. | ||||
1 lines changed or deleted | 1 lines changed or added | |||
compiler_setup.hpp | compiler_setup.hpp | |||
---|---|---|---|---|
skipping to change at line 71 | skipping to change at line 71 | |||
#if defined(__CYGWIN__) | #if defined(__CYGWIN__) | |||
#if defined(ARMA_USE_CXX11) | #if defined(ARMA_USE_CXX11) | |||
#undef ARMA_USE_CXX11 | #undef ARMA_USE_CXX11 | |||
#undef ARMA_USE_EXTERN_CXX11_RNG | #undef ARMA_USE_EXTERN_CXX11_RNG | |||
#pragma message ("WARNING: disabled use of C++11 features in Armadillo, due to incomplete support for C++11 by Cygwin") | #pragma message ("WARNING: disabled use of C++11 features in Armadillo, due to incomplete support for C++11 by Cygwin") | |||
#endif | #endif | |||
#endif | #endif | |||
#if defined(ARMA_USE_CXX11) | #if defined(ARMA_USE_CXX11) | |||
#undef ARMA_USE_U64S64 | #undef ARMA_USE_U64S64 | |||
#define ARMA_USE_U64S64 | #define ARMA_USE_U64S64 | |||
#if !defined(ARMA_32BIT_WORD) | #if !defined(ARMA_32BIT_WORD) | |||
#undef ARMA_64BIT_WORD | #undef ARMA_64BIT_WORD | |||
#define ARMA_64BIT_WORD | #define ARMA_64BIT_WORD | |||
#endif | #endif | |||
#if defined(ARMA_64BIT_WORD) && defined(SIZE_MAX) | ||||
#if (SIZE_MAX < 0xFFFFFFFFFFFFFFFFull) | ||||
#pragma message ("WARNING: disabled use of 64 bit integers, as std::s | ||||
ize_t is smaller than 64 bits") | ||||
#undef ARMA_64BIT_WORD | ||||
#endif | ||||
#endif | ||||
#endif | #endif | |||
#if defined(ARMA_64BIT_WORD) | #if defined(ARMA_64BIT_WORD) | |||
#undef ARMA_USE_U64S64 | #undef ARMA_USE_U64S64 | |||
#define ARMA_USE_U64S64 | #define ARMA_USE_U64S64 | |||
#endif | #endif | |||
// most compilers can't vectorise slightly elaborate loops; | // most compilers can't vectorise slightly elaborate loops; | |||
// for example clang: http://llvm.org/bugs/show_bug.cgi?id=16358 | // for example clang: http://llvm.org/bugs/show_bug.cgi?id=16358 | |||
#undef ARMA_SIMPLE_LOOPS | #undef ARMA_SIMPLE_LOOPS | |||
End of changes. 2 change blocks. | ||||
0 lines changed or deleted | 10 lines changed or added | |||