|
ELEMENTS_API std::string | getAuxiliaryVariableName () |
| retrieve the variable name used for the auxiliary file lookup
|
|
template<typename T > |
ELEMENTS_API Path::Item | getAuxiliaryPath (const T &file_name, bool raise_exception=true) |
|
template ELEMENTS_API Path::Item | getAuxiliaryPath (const Path::Item &file_name, bool raise_exception) |
|
template ELEMENTS_API Path::Item | getAuxiliaryPath (const std::string &file_name, bool raise_exception) |
|
ELEMENTS_API std::vector< Path::Item > | getAuxiliaryLocations (bool exist_only=false) |
|
ELEMENTS_API std::string | getConfigurationVariableName () |
| retrieve the variable name used for the configuration file lookup
|
|
template<typename T > |
ELEMENTS_API Path::Item | getConfigurationPath (const T &file_name, bool raise_exception=true) |
|
template ELEMENTS_API Path::Item | getConfigurationPath (const Path::Item &file_name, bool raise_exception) |
|
template ELEMENTS_API Path::Item | getConfigurationPath (const std::string &file_name, bool raise_exception) |
|
ELEMENTS_API std::vector< Path::Item > | getConfigurationLocations (bool exist_only=false) |
|
ELEMENTS_API std::ostream & | operator<< (std::ostream &, const Environment::Variable &) |
|
ELEMENTS_API Environment::Variable | operator+ (const std::string &, const Environment::Variable &) |
|
template<typename Ex , typename T , typename = typename std::enable_if< std::is_base_of<Exception, typename std::remove_reference<Ex>::type>::value>::type> |
ELEMENTS_API auto | operator<< (Ex &&ex, const T &message) -> decltype(std::forward< Ex >(ex)) |
|
template<typename T , typename... Args> |
ELEMENTS_API std::unique_ptr< T > | make_unique (Args &&... args) |
| Constructs an object of type T and wraps it in a std::unique_ptr using args as the parameter list for the constructor of T.
|
|
std::ostream & | operator<< (std::ostream &stream, const Module &m) |
|
template<typename TargetType , typename SourceType > |
ELEMENTS_API TargetType | numberCast (const SourceType &s) |
| this function is a number cast. It behaves exactly as a static_cast except when casting from a floating point number to an integral one. This one is doing the correct rounding.
|
|
template<typename T > |
ELEMENTS_API std::vector< T > | pathSearch (const std::string &searched_name, T directory, SearchType search_type) |
| Searches for a file or a directory in a directory. The search can be recursive (SearchType.Recursive) and in that case more than one results can be return.
|
|
template ELEMENTS_API std::vector< Path::Item > | pathSearch (const std::string &searched_name, Path::Item directory, SearchType search_type) |
|
template ELEMENTS_API std::vector< std::string > | pathSearch (const std::string &searched_name, std::string directory, SearchType search_type) |
|
ELEMENTS_API std::vector< Path::Item > | pathSearchInEnvVariable (const std::string &file_name, const std::string &path_like_env_variable, SearchType search_type=SearchType::Recursive) |
| Searches for a file or a directory in a path pointed by an environment variable. It can contains collection of colon separated locations. The search can be recursive (SearchType.Recursive) and in that case more than one results can be return.
|
|
std::ostream & | operator<< (std::ostream &stream, const Project &) |
|
template<typename RawType > |
ELEMENTS_API constexpr std::size_t | defaultMaxUlps () |
|
template<> |
ELEMENTS_API constexpr std::size_t | defaultMaxUlps< float > () |
|
template<> |
ELEMENTS_API constexpr std::size_t | defaultMaxUlps< double > () |
|
template<typename FloatType > |
ELEMENTS_API bool | almostEqual2sComplement (ELEMENTS_UNUSED const FloatType &a, ELEMENTS_UNUSED const FloatType &b, ELEMENTS_UNUSED const std::size_t &max_ulps=0) |
|
template<typename RawType > |
ELEMENTS_API bool | isNan (const RawType &x) |
|
template<typename RawType , std::size_t max_ulps = defaultMaxUlps<RawType>()> |
ELEMENTS_API bool | isEqual (const RawType &left, const RawType &right) |
|
template<std::size_t max_ulps> |
ELEMENTS_API bool | isEqual (const float &left, const float &right) |
|
template<std::size_t max_ulps> |
ELEMENTS_API bool | isEqual (const double &left, const double &right) |
|
template<typename RawType , std::size_t max_ulps = defaultMaxUlps<RawType>()> |
ELEMENTS_API bool | isNotEqual (const RawType &left, const RawType &right) |
|
template<std::size_t max_ulps> |
ELEMENTS_API bool | isNotEqual (const float &left, const float &right) |
|
template<std::size_t max_ulps> |
ELEMENTS_API bool | isNotEqual (const double &left, const double &right) |
|
template<typename RawType , std::size_t max_ulps = defaultMaxUlps<RawType>()> |
ELEMENTS_API bool | isLess (const RawType &left, const RawType &right) |
|
template<std::size_t max_ulps> |
ELEMENTS_API bool | isLess (const float &left, const float &right) |
|
template<std::size_t max_ulps> |
ELEMENTS_API bool | isLess (const double &left, const double &right) |
|
template<typename RawType , std::size_t max_ulps = defaultMaxUlps<RawType>()> |
ELEMENTS_API bool | isGreater (const RawType &left, const RawType &right) |
|
template<std::size_t max_ulps> |
ELEMENTS_API bool | isGreater (const float &left, const float &right) |
|
template<std::size_t max_ulps> |
ELEMENTS_API bool | isGreater (const double &left, const double &right) |
|
template<typename RawType , std::size_t max_ulps = defaultMaxUlps<RawType>()> |
ELEMENTS_API bool | isLessOrEqual (const RawType &left, const RawType &right) |
|
template<std::size_t max_ulps> |
ELEMENTS_API bool | isLessOrEqual (const float &left, const float &right) |
|
template<std::size_t max_ulps> |
ELEMENTS_API bool | isLessOrEqual (const double &left, const double &right) |
|
template<typename RawType , std::size_t max_ulps = defaultMaxUlps<RawType>()> |
ELEMENTS_API bool | isGreaterOrEqual (const RawType &left, const RawType &right) |
|
template<std::size_t max_ulps> |
ELEMENTS_API bool | isGreaterOrEqual (const float &left, const float &right) |
|
template<std::size_t max_ulps> |
ELEMENTS_API bool | isGreaterOrEqual (const double &left, const double &right) |
|
ELEMENTS_API bool | almostEqual2sComplement (const float &left, const float &right, const int &max_ulps=FLT_DEFAULT_MAX_ULPS) |
| This function compare 2 floats with a relative tolerance.
|
|
ELEMENTS_API bool | almostEqual2sComplement (const double &left, const double &right, const int &max_ulps=DBL_DEFAULT_MAX_ULPS) |
| This function compare 2 doubles with a relative tolerance.
|
|
template<typename RawType > |
ELEMENTS_API bool | realBitWiseEqual (const RawType &left, const RawType &right) |
| This function compares 2 floating point numbers bitwise. These are the strict equivalent of the "==". They are only here for the example.
|
|
ELEMENTS_API void | normalSleep (int sec) |
| Simple sleep function.
|
|
ELEMENTS_API void | nanoSleep (std::int64_t nsec) |
| Small variation on the sleep function for nanoseconds sleep.
|
|
ELEMENTS_API std::string | getVersionFromSvnKeywords (const std::string &svnUrl, const std::string &svnId) |
| Function returning a version string extracted from SVN keywords.
|
|
ELEMENTS_API std::string | getVersionString (unsigned short major, unsigned short minor, unsigned short patch=0) |
| Function converting the version numbers into a string.
|
|
unique_ptr< Layout > | getLogLayout () |
|
template vector< string > | pathSearch< string, directory_iterator > (const string &searched_name, string directory) |
|
template vector< Path::Item > | pathSearch< Path::Item, directory_iterator > (const string &searched_name, Path::Item directory) |
|
template vector< string > | pathSearch< string, recursive_directory_iterator > (const string &searched_name, string directory) |
|
template vector< Path::Item > | pathSearch< Path::Item, recursive_directory_iterator > (const string &searched_name, Path::Item directory) |
|
template bool | realBitWiseEqual< float > (const float &left, const float &right) |
|
template bool | realBitWiseEqual< double > (const double &left, const double &right) |
|
Copyright (C) 2012-2020 Euclid Science Ground Segment
This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 3.0 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA