MarlinMT  0.1.0
Utils.h File Reference
#include <map>
#include <cmath>
#include <string>
#include <sstream>
#include <typeinfo>
#include <chrono>
#include <vector>
#include <algorithm>
#include <unordered_map>
#include <thread>
#include <marlinmt/Exceptions.h>
#include <marlinmt/MarlinMTConfig.h>

Go to the source code of this file.

Classes

class  marlinmt::clock
 clock class Provide a wrapper around a certain clock type in std to perform safe clock measurement in multi-threading environement More...
 
class  marlinmt::HashHelper
 HashHelper class Helper class to generate hash 64 id. More...
 
class  marlinmt::StringUtil
 StringUtil class Simple utility class for string operations. More...
 
struct  marlinmt::details::type_info< T >
 
struct  marlinmt::details::type_info< std::nullptr_t >
 
struct  marlinmt::details::type_info< bool >
 
struct  marlinmt::details::type_info< short >
 
struct  marlinmt::details::type_info< int >
 
struct  marlinmt::details::type_info< unsigned int >
 
struct  marlinmt::details::type_info< float >
 
struct  marlinmt::details::type_info< double >
 
struct  marlinmt::details::type_info< char >
 
struct  marlinmt::details::type_info< std::string >
 
struct  marlinmt::details::type_info< std::vector< short > >
 
struct  marlinmt::details::type_info< std::vector< int > >
 
struct  marlinmt::details::type_info< std::vector< unsigned int > >
 
struct  marlinmt::details::type_info< std::vector< float > >
 
struct  marlinmt::details::type_info< std::vector< double > >
 
struct  marlinmt::details::type_info< std::vector< char > >
 
struct  marlinmt::details::type_info< std::vector< std::string > >
 
struct  marlinmt::details::type_info< std::vector< bool > >
 
struct  marlinmt::details::convert< T >
 
struct  marlinmt::details::convert< std::string >
 
struct  marlinmt::details::convert< bool >
 
struct  marlinmt::details::convert< std::vector< T > >
 
struct  marlinmt::details::convert< std::vector< std::string > >
 

Namespaces

 marlinmt
 
 marlinmt::details
 

Functions

template<typename T >
std::vector< T > marlinmt::details::split_string (const std::string &str, const std::string &delimiter, size_t maxTokens=std::numeric_limits< std::size_t >::max())
 
template<>
std::vector< std::string > marlinmt::details::split_string (const std::string &str, const std::string &delimiter, size_t maxTokens)
 
template<typename K , typename V >
std::vector< K > marlinmt::details::keys (const std::map< K, V > &m)
 
template<typename K , typename V >
std::vector< K > marlinmt::details::keys (const std::unordered_map< K, V > &m)
 
template<typename K , typename V >
std::vector< K > marlinmt::details::keys (const std::vector< std::pair< K, V >> &m)
 
bool marlinmt::details::is_number (const std::string &str)
 
unsigned int marlinmt::details::nthreads (const std::string &str)
 
void marlinmt::details::to_lower (std::string &str)
 
template<typename T >
marlinmt::details::getenv (const std::string &var)
 
template<typename T >
marlinmt::details::getenv (const std::string &var, const T &defVal)
 
void marlinmt::details::print_banner (std::ostream &out)