clanCore Text

Classes

class  clan::Console
 Console access helper class. More...
 
class  clan::ConsoleLogger
 Console logger. More...
 
class  clan::FileLogger
 File logger. More...
 
class  clan::Logger
 Logger interface. More...
 
class  clan::StringFormat
 String formatting class. More...
 
class  clan::StringHelp
 String helper functions. More...
 
class  clan::UTF8_Reader
 UTF8 reader helper functions. More...
 

Functions

 clan::StringFormat::ArgPosition::ArgPosition ()
 
 clan::StringFormat::ArgPosition::ArgPosition (int s, int l)
 
void clan::log_event (const std::string &type, const std::string &text)
 Log text to logger. More...
 
template<class Arg1 >
void clan::log_event (const std::string &type, const std::string &format, Arg1 arg1)
 
template<class Arg1 , class Arg2 >
void clan::log_event (const std::string &type, const std::string &format, Arg1 arg1, Arg2 arg2)
 
template<class Arg1 , class Arg2 , class Arg3 >
void clan::log_event (const std::string &type, const std::string &format, Arg1 arg1, Arg2 arg2, Arg3 arg3)
 
template<class Arg1 , class Arg2 , class Arg3 , class Arg4 >
void clan::log_event (const std::string &type, const std::string &format, Arg1 arg1, Arg2 arg2, Arg3 arg3, Arg4 arg4)
 
template<class Arg1 , class Arg2 , class Arg3 , class Arg4 , class Arg5 >
void clan::log_event (const std::string &type, const std::string &format, Arg1 arg1, Arg2 arg2, Arg3 arg3, Arg4 arg4, Arg5 arg5)
 
template<class Arg1 , class Arg2 , class Arg3 , class Arg4 , class Arg5 , class Arg6 >
void clan::log_event (const std::string &type, const std::string &format, Arg1 arg1, Arg2 arg2, Arg3 arg3, Arg4 arg4, Arg5 arg5, Arg6 arg6)
 
template<class Arg1 , class Arg2 , class Arg3 , class Arg4 , class Arg5 , class Arg6 , class Arg7 >
void clan::log_event (const std::string &type, const std::string &format, Arg1 arg1, Arg2 arg2, Arg3 arg3, Arg4 arg4, Arg5 arg5, Arg6 arg6, Arg7 arg7)
 
std::string clan::string_format (const std::string &format)
 See clan::StringFormat for details. More...
 
template<class Arg1 >
std::string clan::string_format (const std::string &format, Arg1 arg1)
 See clan::StringFormat for details. More...
 
template<class Arg1 , class Arg2 >
std::string clan::string_format (const std::string &format, Arg1 arg1, Arg2 arg2)
 See clan::StringFormat for details. More...
 
template<class Arg1 , class Arg2 , class Arg3 >
std::string clan::string_format (const std::string &format, Arg1 arg1, Arg2 arg2, Arg3 arg3)
 See clan::StringFormat for details. More...
 
template<class Arg1 , class Arg2 , class Arg3 , class Arg4 >
std::string clan::string_format (const std::string &format, Arg1 arg1, Arg2 arg2, Arg3 arg3, Arg4 arg4)
 See clan::StringFormat for details. More...
 
template<class Arg1 , class Arg2 , class Arg3 , class Arg4 , class Arg5 >
std::string clan::string_format (const std::string &format, Arg1 arg1, Arg2 arg2, Arg3 arg3, Arg4 arg4, Arg5 arg5)
 See clan::StringFormat for details. More...
 
template<class Arg1 , class Arg2 , class Arg3 , class Arg4 , class Arg5 , class Arg6 >
std::string clan::string_format (const std::string &format, Arg1 arg1, Arg2 arg2, Arg3 arg3, Arg4 arg4, Arg5 arg5, Arg6 arg6)
 See clan::StringFormat for details. More...
 
template<class Arg1 , class Arg2 , class Arg3 , class Arg4 , class Arg5 , class Arg6 , class Arg7 >
std::string clan::string_format (const std::string &format, Arg1 arg1, Arg2 arg2, Arg3 arg3, Arg4 arg4, Arg5 arg5, Arg6 arg6, Arg7 arg7)
 See clan::StringFormat for details. More...
 

Variables

int clan::StringFormat::ArgPosition::length
 
int clan::StringFormat::ArgPosition::start
 

Operations

static void clan::Console::write (const std::string &text)
 Writes text to the console window. More...
 
template<class Arg1 >
static void clan::Console::write (const std::string &format, Arg1 arg1)
 Write. More...
 
template<class Arg1 , class Arg2 >
static void clan::Console::write (const std::string &format, Arg1 arg1, Arg2 arg2)
 Write. More...
 
template<class Arg1 , class Arg2 , class Arg3 >
static void clan::Console::write (const std::string &format, Arg1 arg1, Arg2 arg2, Arg3 arg3)
 Write. More...
 
template<class Arg1 , class Arg2 , class Arg3 , class Arg4 >
static void clan::Console::write (const std::string &format, Arg1 arg1, Arg2 arg2, Arg3 arg3, Arg4 arg4)
 Write. More...
 
template<class Arg1 , class Arg2 , class Arg3 , class Arg4 , class Arg5 >
static void clan::Console::write (const std::string &format, Arg1 arg1, Arg2 arg2, Arg3 arg3, Arg4 arg4, Arg5 arg5)
 Write. More...
 
template<class Arg1 , class Arg2 , class Arg3 , class Arg4 , class Arg5 , class Arg6 >
static void clan::Console::write (const std::string &format, Arg1 arg1, Arg2 arg2, Arg3 arg3, Arg4 arg4, Arg5 arg5, Arg6 arg6)
 Write. More...
 
template<class Arg1 , class Arg2 , class Arg3 , class Arg4 , class Arg5 , class Arg6 , class Arg7 >
static void clan::Console::write (const std::string &format, Arg1 arg1, Arg2 arg2, Arg3 arg3, Arg4 arg4, Arg5 arg5, Arg6 arg6, Arg7 arg7)
 Write. More...
 
static void clan::Console::write_line (const std::string &text)
 Writes text to the console window and then advances to a new line. More...
 
template<class Arg1 >
static void clan::Console::write_line (const std::string &format, Arg1 arg1)
 Write line. More...
 
template<class Arg1 , class Arg2 >
static void clan::Console::write_line (const std::string &format, Arg1 arg1, Arg2 arg2)
 Write line. More...
 
template<class Arg1 , class Arg2 , class Arg3 >
static void clan::Console::write_line (const std::string &format, Arg1 arg1, Arg2 arg2, Arg3 arg3)
 Write line. More...
 
template<class Arg1 , class Arg2 , class Arg3 , class Arg4 >
static void clan::Console::write_line (const std::string &format, Arg1 arg1, Arg2 arg2, Arg3 arg3, Arg4 arg4)
 Write line. More...
 
template<class Arg1 , class Arg2 , class Arg3 , class Arg4 , class Arg5 >
static void clan::Console::write_line (const std::string &format, Arg1 arg1, Arg2 arg2, Arg3 arg3, Arg4 arg4, Arg5 arg5)
 Write line. More...
 
template<class Arg1 , class Arg2 , class Arg3 , class Arg4 , class Arg5 , class Arg6 >
static void clan::Console::write_line (const std::string &format, Arg1 arg1, Arg2 arg2, Arg3 arg3, Arg4 arg4, Arg5 arg5, Arg6 arg6)
 Write line. More...
 
template<class Arg1 , class Arg2 , class Arg3 , class Arg4 , class Arg5 , class Arg6 , class Arg7 >
static void clan::Console::write_line (const std::string &format, Arg1 arg1, Arg2 arg2, Arg3 arg3, Arg4 arg4, Arg5 arg5, Arg6 arg6, Arg7 arg7)
 Write line. More...
 
static void clan::Console::wait_for_key ()
 Block until a key is pressed in the console window. More...
 

Construction

 clan::ConsoleLogger::ConsoleLogger ()
 Constructs a console logger. More...
 
 clan::ConsoleLogger::~ConsoleLogger ()
 

Operations

void clan::ConsoleLogger::log (const std::string &type, const std::string &text) override
 Log text to console. More...
 

Construction

 clan::FileLogger::FileLogger (const std::string &filename)
 Constructs a file logger. More...
 
 clan::FileLogger::~FileLogger ()
 

Operations

void clan::FileLogger::log (const std::string &type, const std::string &text) override
 Log text to file. More...
 

Construction

 clan::Logger::Logger ()
 Constructs a logger. More...
 
virtual clan::Logger::~Logger ()
 

Attributes

static std::vector< Logger * > clan::Logger::instances
 Pointers to currently enabled logger. More...
 
static std::recursive_mutex clan::Logger::mutex
 Logger mutex object. More...
 

Operations

void clan::Logger::enable ()
 Enable logger for logging. More...
 
void clan::Logger::disable ()
 Disable logging. More...
 
virtual void clan::Logger::log (const std::string &type, const std::string &text)=0
 Log text. More...
 

Implementation

static StringFormat clan::Logger::get_log_string (const std::string &type, const std::string &text)
 

Construction

 clan::StringFormat::StringFormat (const std::string &format_string)
 Constructs a formatted string object. More...
 
 clan::StringFormat::~StringFormat ()
 

Attributes

const std::string & clan::StringFormat::get_result () const
 Retrieves the formatted string with all argument replacements. More...
 

Operations

void clan::StringFormat::set_arg (int index, const std::string &text)
 Sets an argument (string version) More...
 
void clan::StringFormat::set_arg (int index, int value, int min_length=0)
 Sets an argument (int version) More...
 
void clan::StringFormat::set_arg (int index, unsigned int value, int min_length=0)
 Sets an argument (unsigned int version) More...
 
void clan::StringFormat::set_arg (int index, long unsigned int value, int min_length=0)
 Sets an argument (long unsigned int version) More...
 
void clan::StringFormat::set_arg (int index, long long value, int min_length=0)
 Sets an argument (long long version) More...
 
void clan::StringFormat::set_arg (int index, unsigned long long value, int min_length=0)
 Sets an argument (unsigned long long version) More...
 
void clan::StringFormat::set_arg (int index, float value)
 Sets an argument (float version) More...
 
void clan::StringFormat::set_arg (int index, double value)
 Sets an argument (double version) More...
 

Operations

enum  clan::StringHelp::BOMType {
  clan::StringHelp::bom_none, clan::StringHelp::bom_utf32_be, clan::StringHelp::bom_utf32_le, clan::StringHelp::bom_utf16_be,
  clan::StringHelp::bom_utf16_le, clan::StringHelp::bom_utf8
}
 
static std::vector< std::string > clan::StringHelp::split_text (const std::string &text, const std::string &split_string, bool skip_empty=true)
 
static std::string clan::StringHelp::wchar_to_utf8 (wchar_t value)
 Wide char to utf-8. More...
 
static std::string clan::StringHelp::unicode_to_utf8 (unsigned int value)
 unicode char to utf-8 More...
 
static std::string clan::StringHelp::trim (const std::string &text)
 Trim. More...
 
static std::string clan::StringHelp::remove_trailing_zeros (std::string text)
 Removes trailing zeros from floating point numbers. More...
 
static std::wstring clan::StringHelp::remove_trailing_zeros (std::wstring text)
 
static int clan::StringHelp::compare (const std::string &a, const std::string &b, bool case_insensitive=false)
 Compare. More...
 
static int clan::StringHelp::compare (const std::wstring &a, const std::wstring &b, bool case_insensitive=false)
 Compare. More...
 
static std::string clan::StringHelp::text_to_upper (const std::string &s)
 Text to upper. More...
 
static std::string clan::StringHelp::local8_to_upper (const std::string &s)
 Local8 to upper. More...
 
static std::wstring clan::StringHelp::ucs2_to_upper (const std::wstring &s)
 Ucs2 to upper. More...
 
static std::string clan::StringHelp::text_to_lower (const std::string &s)
 Text to lower. More...
 
static std::string clan::StringHelp::local8_to_lower (const std::string &s)
 Local8 to lower. More...
 
static std::wstring clan::StringHelp::ucs2_to_lower (const std::wstring &s)
 Ucs2 to lower. More...
 
static std::string clan::StringHelp::float_to_text (float value, int num_decimal_places=6, bool remove_trailing_zeros=true)
 Float to text. More...
 
static std::string clan::StringHelp::float_to_local8 (float value, int num_decimal_places=6, bool remove_trailing_zeros=true)
 Float to local8. More...
 
static std::wstring clan::StringHelp::float_to_ucs2 (float value, int num_decimal_places=6, bool remove_trailing_zeros=true)
 Float to ucs2. More...
 
static float clan::StringHelp::text_to_float (const std::string &value)
 Text to float. More...
 
static float clan::StringHelp::local8_to_float (const std::string &value)
 Local8 to float. More...
 
static float clan::StringHelp::ucs2_to_float (const std::wstring &value)
 Ucs2 to float. More...
 
static std::string clan::StringHelp::double_to_text (double value, int num_decimal_places=6)
 Double to text. More...
 
static std::string clan::StringHelp::double_to_local8 (double value, int num_decimal_places=6)
 Double to local8. More...
 
static std::wstring clan::StringHelp::double_to_ucs2 (double value, int num_decimal_places=6)
 Double to ucs2. More...
 
static double clan::StringHelp::text_to_double (const std::string &value)
 Text to double. More...
 
static double clan::StringHelp::local8_to_double (const std::string &value)
 Local8 to double. More...
 
static double clan::StringHelp::ucs2_to_double (const std::wstring &value)
 Ucs2 to double. More...
 
static std::string clan::StringHelp::int_to_text (int value)
 Int to text. More...
 
static std::string clan::StringHelp::int_to_local8 (int value)
 Int to local8. More...
 
static std::wstring clan::StringHelp::int_to_ucs2 (int value)
 Int to ucs2. More...
 
static int clan::StringHelp::text_to_int (const std::string &value, int base=10)
 Text to int. More...
 
static int clan::StringHelp::local8_to_int (const std::string &value, int base=10)
 Local8 to int. More...
 
static int clan::StringHelp::ucs2_to_int (const std::wstring &value, int base=10)
 Ucs2 to int. More...
 
static std::string clan::StringHelp::uint_to_text (unsigned int value)
 Uint to text. More...
 
static std::string clan::StringHelp::uint_to_local8 (unsigned int value)
 Uint to local8. More...
 
static std::wstring clan::StringHelp::uint_to_ucs2 (unsigned int value)
 Uint to ucs2. More...
 
static unsigned int clan::StringHelp::text_to_uint (const std::string &value, int base=10)
 
static unsigned int clan::StringHelp::local8_to_uint (const std::string &value, int base=10)
 
static unsigned int clan::StringHelp::ucs2_to_uint (const std::wstring &value, int base=10)
 
static std::string clan::StringHelp::ll_to_text (long long value)
 Long long to text. More...
 
static std::string clan::StringHelp::ll_to_local8 (long long value)
 Long long to local8. More...
 
static std::wstring clan::StringHelp::ll_to_ucs2 (long long value)
 Long long to ucs2. More...
 
static long long clan::StringHelp::text_to_ll (const std::string &value, int base=10)
 Text to long long. More...
 
static long long clan::StringHelp::local8_to_ll (const std::string &value, int base=10)
 Local8 to long long. More...
 
static long long clan::StringHelp::ucs2_to_ll (const std::wstring &value, int base=10)
 Ucs2 to long long. More...
 
static std::string clan::StringHelp::ull_to_text (unsigned long long value)
 Unsigned long long to text. More...
 
static std::string clan::StringHelp::ull_to_local8 (unsigned long long value)
 Unsigned long long to local8. More...
 
static std::wstring clan::StringHelp::ull_to_ucs2 (unsigned long long value)
 Unsigned long long to ucs2. More...
 
static unsigned long long clan::StringHelp::text_to_ull (const std::string &value, int base=10)
 Text to unsigned long long. More...
 
static unsigned long long clan::StringHelp::local8_to_ull (const std::string &value, int base=10)
 Local8 to unsigned long long. More...
 
static unsigned long long clan::StringHelp::ucs2_to_ull (const std::wstring &value, int base=10)
 Ucs2 to unsigned long long. More...
 
static std::string clan::StringHelp::bool_to_text (bool value)
 Bool to text. More...
 
static std::string clan::StringHelp::bool_to_local8 (bool value)
 Bool to local8. More...
 
static std::wstring clan::StringHelp::bool_to_ucs2 (bool value)
 Bool to ucs2. More...
 
static bool clan::StringHelp::text_to_bool (const std::string &value)
 Text to bool. More...
 
static bool clan::StringHelp::local8_to_bool (const std::string &value)
 Local8 to bool. More...
 
static bool clan::StringHelp::ucs2_to_bool (const std::wstring &value)
 Ucs2 to bool. More...
 
static std::string clan::StringHelp::text_to_cp437 (const std::string &text)
 Text to cp437. More...
 
static std::string clan::StringHelp::ucs2_to_cp437 (const std::wstring &text)
 Ucs2 to cp437. More...
 
static std::string clan::StringHelp::cp437_to_text (const std::string &cp437)
 Cp437 to text. More...
 
static std::wstring clan::StringHelp::cp437_to_ucs2 (const std::string &cp437)
 Cp437 to ucs2. More...
 
static std::string clan::StringHelp::text_to_local8 (const std::string &text)
 Text to local8. More...
 
static std::string clan::StringHelp::text_to_utf8 (const std::string &text)
 Text to utf8. More...
 
static std::string clan::StringHelp::ucs2_to_latin1 (const std::wstring &ucs2)
 Ucs2 to latin1. More...
 
static std::string clan::StringHelp::ucs2_to_latin9 (const std::wstring &ucs2)
 Ucs2 to latin9. More...
 
static std::string clan::StringHelp::ucs2_to_local8 (const std::wstring &ucs2)
 Ucs2 to local8. More...
 
static std::string clan::StringHelp::ucs2_to_utf8 (const std::wstring &ucs2)
 Ucs2 to utf8. More...
 
static std::string clan::StringHelp::local8_to_text (const std::string &local8)
 Local8 to text. More...
 
static std::string clan::StringHelp::ucs2_to_text (const std::wstring &ucs2)
 Ucs2 to text. More...
 
static std::wstring clan::StringHelp::latin1_to_ucs2 (const std::string &latin1)
 Latin1 to ucs2. More...
 
static std::wstring clan::StringHelp::latin9_to_ucs2 (const std::string &latin9)
 Latin9 to ucs2. More...
 
static std::wstring clan::StringHelp::local8_to_ucs2 (const std::string &local8)
 Local8 to ucs2. More...
 
static std::wstring clan::StringHelp::utf8_to_ucs2 (const std::string &utf8)
 Utf8 to ucs2. More...
 
static std::string clan::StringHelp::utf8_to_text (const std::string &utf8)
 Utf8 to text. More...
 
static std::string::size_type clan::StringHelp::utf8_length (const std::string &str)
 
static BOMType clan::StringHelp::detect_bom (const void *data, std::string::size_type length)
 Detect bom. More...
 

Construction

 clan::UTF8_Reader::UTF8_Reader (const std::string::value_type *text, std::string::size_type length)
 Important: text is not copied by this class and must remain valid during its usage. More...
 

Operations

bool clan::UTF8_Reader::is_end ()
 Returns true if the current position is at the end of the string. More...
 
unsigned int clan::UTF8_Reader::get_char ()
 Get the character at the current position. More...
 
std::string::size_type clan::UTF8_Reader::get_char_length ()
 Returns the length of the current character. More...
 
void clan::UTF8_Reader::prev ()
 Moves position to the previous character. More...
 
void clan::UTF8_Reader::next ()
 Moves position to the next character. More...
 
void clan::UTF8_Reader::move_to_leadbyte ()
 Moves position to the lead byte of the character. More...
 
std::string::size_type clan::UTF8_Reader::get_position ()
 Get the current position of the reader. More...
 
void clan::UTF8_Reader::set_position (std::string::size_type position)
 Set the current position of the reader. More...
 

Detailed Description

Enumeration Type Documentation

Enumerator
bom_none 
bom_utf32_be 
bom_utf32_le 
bom_utf16_be 
bom_utf16_le 
bom_utf8 

Function Documentation

clan::StringFormat::ArgPosition::ArgPosition ( )
inline
clan::StringFormat::ArgPosition::ArgPosition ( int  s,
int  l 
)
inline
clan::ConsoleLogger::ConsoleLogger ( )

Constructs a console logger.

clan::FileLogger::FileLogger ( const std::string filename)

Constructs a file logger.

clan::Logger::Logger ( )

Constructs a logger.

clan::StringFormat::StringFormat ( const std::string format_string)

Constructs a formatted string object.

Parameters
format_string= Format string (see detailed description)
clan::UTF8_Reader::UTF8_Reader ( const std::string::value_type *  text,
std::string::size_type  length 
)

Important: text is not copied by this class and must remain valid during its usage.

clan::ConsoleLogger::~ConsoleLogger ( )
clan::FileLogger::~FileLogger ( )
virtual clan::Logger::~Logger ( )
virtual
clan::StringFormat::~StringFormat ( )
static std::string clan::StringHelp::bool_to_local8 ( bool  value)
static

Bool to local8.

Parameters
value= bool
Returns
Temp String8
static std::string clan::StringHelp::bool_to_text ( bool  value)
static

Bool to text.

Parameters
value= bool
Returns
Temp String
static std::wstring clan::StringHelp::bool_to_ucs2 ( bool  value)
static

Bool to ucs2.

Parameters
value= bool
Returns
Temp String16
static int clan::StringHelp::compare ( const std::string a,
const std::string b,
bool  case_insensitive = false 
)
static

Compare.

Parameters
a= String Ref8
b= String Ref8
case_insensitive= bool
Returns
int
static int clan::StringHelp::compare ( const std::wstring &  a,
const std::wstring &  b,
bool  case_insensitive = false 
)
static

Compare.

Parameters
a= String Ref16
b= String Ref16
case_insensitive= bool
Returns
int
static std::string clan::StringHelp::cp437_to_text ( const std::string cp437)
static

Cp437 to text.

Parameters
cp437= String Ref8
Returns
Temp String
static std::wstring clan::StringHelp::cp437_to_ucs2 ( const std::string cp437)
static

Cp437 to ucs2.

Parameters
cp437= String Ref8
Returns
Temp String16
static BOMType clan::StringHelp::detect_bom ( const void *  data,
std::string::size_type  length 
)
static

Detect bom.

Parameters
data= void
size_type= String
Returns
BOMType
void clan::Logger::disable ( )

Disable logging.

static std::string clan::StringHelp::double_to_local8 ( double  value,
int  num_decimal_places = 6 
)
static

Double to local8.

Parameters
value= value
num_decimal_places= value
Returns
Temp String8
static std::string clan::StringHelp::double_to_text ( double  value,
int  num_decimal_places = 6 
)
static

Double to text.

Parameters
value= value
num_decimal_places= value
Returns
Temp String
static std::wstring clan::StringHelp::double_to_ucs2 ( double  value,
int  num_decimal_places = 6 
)
static

Double to ucs2.

Parameters
value= value
num_decimal_places= value
Returns
Temp String16
void clan::Logger::enable ( )

Enable logger for logging.

static std::string clan::StringHelp::float_to_local8 ( float  value,
int  num_decimal_places = 6,
bool  remove_trailing_zeros = true 
)
static

Float to local8.

Parameters
value= value
num_decimal_places= value
Returns
Temp String8
static std::string clan::StringHelp::float_to_text ( float  value,
int  num_decimal_places = 6,
bool  remove_trailing_zeros = true 
)
static

Float to text.

Parameters
value= value
num_decimal_places= value
Returns
Temp String
static std::wstring clan::StringHelp::float_to_ucs2 ( float  value,
int  num_decimal_places = 6,
bool  remove_trailing_zeros = true 
)
static

Float to ucs2.

Parameters
value= value
num_decimal_places= value
Returns
Temp String16
unsigned int clan::UTF8_Reader::get_char ( )

Get the character at the current position.

std::string::size_type clan::UTF8_Reader::get_char_length ( )

Returns the length of the current character.

static StringFormat clan::Logger::get_log_string ( const std::string type,
const std::string text 
)
staticprotected
std::string::size_type clan::UTF8_Reader::get_position ( )

Get the current position of the reader.

const std::string& clan::StringFormat::get_result ( ) const

Retrieves the formatted string with all argument replacements.

Referenced by clan::log_event(), clan::string_format(), clan::Console::write(), and clan::Console::write_line().

static std::string clan::StringHelp::int_to_local8 ( int  value)
static

Int to local8.

Parameters
value= value
Returns
Temp String8
static std::string clan::StringHelp::int_to_text ( int  value)
static

Int to text.

Parameters
value= value
Returns
Temp String
static std::wstring clan::StringHelp::int_to_ucs2 ( int  value)
static

Int to ucs2.

Parameters
value= value
Returns
Temp String16
bool clan::UTF8_Reader::is_end ( )

Returns true if the current position is at the end of the string.

static std::wstring clan::StringHelp::latin1_to_ucs2 ( const std::string latin1)
static

Latin1 to ucs2.

Parameters
latin1= String Ref8
Returns
Temp String16
static std::wstring clan::StringHelp::latin9_to_ucs2 ( const std::string latin9)
static

Latin9 to ucs2.

Parameters
latin9= String Ref8
Returns
Temp String16
static std::string clan::StringHelp::ll_to_local8 ( long long  value)
static

Long long to local8.

Parameters
value= value
Returns
Temp String8
static std::string clan::StringHelp::ll_to_text ( long long  value)
static

Long long to text.

Parameters
value= value
Returns
Temp String
static std::wstring clan::StringHelp::ll_to_ucs2 ( long long  value)
static

Long long to ucs2.

Parameters
value= value
Returns
Temp String16
static bool clan::StringHelp::local8_to_bool ( const std::string value)
static

Local8 to bool.

Parameters
value= String Ref8
Returns
bool
static double clan::StringHelp::local8_to_double ( const std::string value)
static

Local8 to double.

Parameters
value= String Ref8
Returns
double
static float clan::StringHelp::local8_to_float ( const std::string value)
static

Local8 to float.

Parameters
value= String Ref8
Returns
float
static int clan::StringHelp::local8_to_int ( const std::string value,
int  base = 10 
)
static

Local8 to int.

Parameters
value= String Ref8
base= value
Returns
int
static long long clan::StringHelp::local8_to_ll ( const std::string value,
int  base = 10 
)
static

Local8 to long long.

Parameters
value= String Ref8
base= value
Returns
long long
static std::string clan::StringHelp::local8_to_lower ( const std::string s)
static

Local8 to lower.

Parameters
s= String Ref8
Returns
Temp String8
static std::string clan::StringHelp::local8_to_text ( const std::string local8)
static

Local8 to text.

Parameters
local8= String Ref8
Returns
Temp String
static std::wstring clan::StringHelp::local8_to_ucs2 ( const std::string local8)
static

Local8 to ucs2.

Parameters
local8= String Ref8
Returns
Temp String16
static unsigned int clan::StringHelp::local8_to_uint ( const std::string value,
int  base = 10 
)
static
static unsigned long long clan::StringHelp::local8_to_ull ( const std::string value,
int  base = 10 
)
static

Local8 to unsigned long long.

Parameters
value= String Ref8
base= value
Returns
unsigned long long
static std::string clan::StringHelp::local8_to_upper ( const std::string s)
static

Local8 to upper.

Parameters
s= String Ref8
Returns
Temp String8
void clan::ConsoleLogger::log ( const std::string type,
const std::string text 
)
overridevirtual

Log text to console.

Implements clan::Logger.

void clan::FileLogger::log ( const std::string type,
const std::string text 
)
overridevirtual

Log text to file.

Implements clan::Logger.

virtual void clan::Logger::log ( const std::string type,
const std::string text 
)
pure virtual

Log text.

Implemented in clan::FileLogger, and clan::ConsoleLogger.

void clan::log_event ( const std::string type,
const std::string text 
)

Log text to logger.

Referenced by clan::log_event().

template<class Arg1 >
void clan::log_event ( const std::string type,
const std::string format,
Arg1  arg1 
)
template<class Arg1 , class Arg2 >
void clan::log_event ( const std::string type,
const std::string format,
Arg1  arg1,
Arg2  arg2 
)
template<class Arg1 , class Arg2 , class Arg3 >
void clan::log_event ( const std::string type,
const std::string format,
Arg1  arg1,
Arg2  arg2,
Arg3  arg3 
)
template<class Arg1 , class Arg2 , class Arg3 , class Arg4 >
void clan::log_event ( const std::string type,
const std::string format,
Arg1  arg1,
Arg2  arg2,
Arg3  arg3,
Arg4  arg4 
)
template<class Arg1 , class Arg2 , class Arg3 , class Arg4 , class Arg5 >
void clan::log_event ( const std::string type,
const std::string format,
Arg1  arg1,
Arg2  arg2,
Arg3  arg3,
Arg4  arg4,
Arg5  arg5 
)
template<class Arg1 , class Arg2 , class Arg3 , class Arg4 , class Arg5 , class Arg6 >
void clan::log_event ( const std::string type,
const std::string format,
Arg1  arg1,
Arg2  arg2,
Arg3  arg3,
Arg4  arg4,
Arg5  arg5,
Arg6  arg6 
)
template<class Arg1 , class Arg2 , class Arg3 , class Arg4 , class Arg5 , class Arg6 , class Arg7 >
void clan::log_event ( const std::string type,
const std::string format,
Arg1  arg1,
Arg2  arg2,
Arg3  arg3,
Arg4  arg4,
Arg5  arg5,
Arg6  arg6,
Arg7  arg7 
)
void clan::UTF8_Reader::move_to_leadbyte ( )

Moves position to the lead byte of the character.

void clan::UTF8_Reader::next ( )

Moves position to the next character.

void clan::UTF8_Reader::prev ( )

Moves position to the previous character.

static std::string clan::StringHelp::remove_trailing_zeros ( std::string  text)
static

Removes trailing zeros from floating point numbers.

If the input string is "42.21000", then this function returns "42.21". If the string is "42.00000", then it returns "42".

static std::wstring clan::StringHelp::remove_trailing_zeros ( std::wstring  text)
static
void clan::StringFormat::set_arg ( int  index,
const std::string text 
)

Sets an argument (string version)

Parameters
index= Argument index
text= Argument value as a string

Referenced by clan::log_event(), clan::string_format(), clan::Console::write(), and clan::Console::write_line().

void clan::StringFormat::set_arg ( int  index,
int  value,
int  min_length = 0 
)

Sets an argument (int version)

Parameters
index= Argument index
value= Argument value as an integer
min_length= Minimum amount of digits to display
void clan::StringFormat::set_arg ( int  index,
unsigned int  value,
int  min_length = 0 
)

Sets an argument (unsigned int version)

Parameters
index= Argument index
value= Argument value as an unsigned integer
min_length= Minimum amount of digits to display
void clan::StringFormat::set_arg ( int  index,
long unsigned int  value,
int  min_length = 0 
)

Sets an argument (long unsigned int version)

Parameters
index= Argument index
value= Argument value as a long unsigned integer
min_length= Minimum amount of digits to display
void clan::StringFormat::set_arg ( int  index,
long long  value,
int  min_length = 0 
)

Sets an argument (long long version)

Parameters
index= Argument index
value= Argument value as a long long
min_length= Minimum amount of digits to display
void clan::StringFormat::set_arg ( int  index,
unsigned long long  value,
int  min_length = 0 
)

Sets an argument (unsigned long long version)

Parameters
index= Argument index
value= Argument value as an unsigned long long
min_length= Minimum amount of digits to display
void clan::StringFormat::set_arg ( int  index,
float  value 
)

Sets an argument (float version)

Parameters
index= Argument index
value= Argument value as a floating point value
void clan::StringFormat::set_arg ( int  index,
double  value 
)

Sets an argument (double version)

Parameters
index= Argument index
value= Argument value as a floating point value with double precision
void clan::UTF8_Reader::set_position ( std::string::size_type  position)

Set the current position of the reader.

static std::vector<std::string> clan::StringHelp::split_text ( const std::string text,
const std::string split_string,
bool  skip_empty = true 
)
static
std::string clan::string_format ( const std::string format)
inline

See clan::StringFormat for details.

Referenced by clan::Style::set(), and clan::Style::to_rgba().

template<class Arg1 >
std::string clan::string_format ( const std::string format,
Arg1  arg1 
)
template<class Arg1 , class Arg2 >
std::string clan::string_format ( const std::string format,
Arg1  arg1,
Arg2  arg2 
)
template<class Arg1 , class Arg2 , class Arg3 >
std::string clan::string_format ( const std::string format,
Arg1  arg1,
Arg2  arg2,
Arg3  arg3 
)
template<class Arg1 , class Arg2 , class Arg3 , class Arg4 >
std::string clan::string_format ( const std::string format,
Arg1  arg1,
Arg2  arg2,
Arg3  arg3,
Arg4  arg4 
)
template<class Arg1 , class Arg2 , class Arg3 , class Arg4 , class Arg5 >
std::string clan::string_format ( const std::string format,
Arg1  arg1,
Arg2  arg2,
Arg3  arg3,
Arg4  arg4,
Arg5  arg5 
)
template<class Arg1 , class Arg2 , class Arg3 , class Arg4 , class Arg5 , class Arg6 >
std::string clan::string_format ( const std::string format,
Arg1  arg1,
Arg2  arg2,
Arg3  arg3,
Arg4  arg4,
Arg5  arg5,
Arg6  arg6 
)
template<class Arg1 , class Arg2 , class Arg3 , class Arg4 , class Arg5 , class Arg6 , class Arg7 >
std::string clan::string_format ( const std::string format,
Arg1  arg1,
Arg2  arg2,
Arg3  arg3,
Arg4  arg4,
Arg5  arg5,
Arg6  arg6,
Arg7  arg7 
)
static bool clan::StringHelp::text_to_bool ( const std::string value)
static

Text to bool.

Parameters
value= String Ref
Returns
bool
static std::string clan::StringHelp::text_to_cp437 ( const std::string text)
static

Text to cp437.

Parameters
text= String Ref
Returns
Temp String8
static double clan::StringHelp::text_to_double ( const std::string value)
static

Text to double.

Parameters
value= String Ref
Returns
double
static float clan::StringHelp::text_to_float ( const std::string value)
static

Text to float.

Parameters
value= String Ref
Returns
float
static int clan::StringHelp::text_to_int ( const std::string value,
int  base = 10 
)
static

Text to int.

Parameters
value= String Ref
base= value
Returns
int
static long long clan::StringHelp::text_to_ll ( const std::string value,
int  base = 10 
)
static

Text to long long.

Parameters
value= String Ref
base= value
Returns
long long
static std::string clan::StringHelp::text_to_local8 ( const std::string text)
static

Text to local8.

Parameters
text= String Ref
Returns
Temp String8
static std::string clan::StringHelp::text_to_lower ( const std::string s)
static

Text to lower.

Parameters
s= String Ref
Returns
Temp String
static unsigned int clan::StringHelp::text_to_uint ( const std::string value,
int  base = 10 
)
static
static unsigned long long clan::StringHelp::text_to_ull ( const std::string value,
int  base = 10 
)
static

Text to unsigned long long.

Parameters
value= String Ref
base= value
Returns
unsigned long long
static std::string clan::StringHelp::text_to_upper ( const std::string s)
static

Text to upper.

Parameters
s= String Ref
Returns
Temp String
static std::string clan::StringHelp::text_to_utf8 ( const std::string text)
static

Text to utf8.

Parameters
text= String Ref
Returns
Temp String8
static std::string clan::StringHelp::trim ( const std::string text)
static

Trim.

Parameters
text= String Ref
Returns
Temp String
static bool clan::StringHelp::ucs2_to_bool ( const std::wstring &  value)
static

Ucs2 to bool.

Parameters
value= String Ref16
Returns
bool
static std::string clan::StringHelp::ucs2_to_cp437 ( const std::wstring &  text)
static

Ucs2 to cp437.

Parameters
text= String Ref16
Returns
Temp String8
static double clan::StringHelp::ucs2_to_double ( const std::wstring &  value)
static

Ucs2 to double.

Parameters
value= String Ref16
Returns
double
static float clan::StringHelp::ucs2_to_float ( const std::wstring &  value)
static

Ucs2 to float.

Parameters
value= String Ref16
Returns
float
static int clan::StringHelp::ucs2_to_int ( const std::wstring &  value,
int  base = 10 
)
static

Ucs2 to int.

Parameters
value= String Ref16
base= value
Returns
int
static std::string clan::StringHelp::ucs2_to_latin1 ( const std::wstring &  ucs2)
static

Ucs2 to latin1.

Parameters
ucs2= String Ref16
Returns
Temp String8
static std::string clan::StringHelp::ucs2_to_latin9 ( const std::wstring &  ucs2)
static

Ucs2 to latin9.

Parameters
ucs2= String Ref16
Returns
Temp String8
static long long clan::StringHelp::ucs2_to_ll ( const std::wstring &  value,
int  base = 10 
)
static

Ucs2 to long long.

Parameters
value= String Ref16
base= value
Returns
long long
static std::string clan::StringHelp::ucs2_to_local8 ( const std::wstring &  ucs2)
static

Ucs2 to local8.

Parameters
ucs2= String Ref16
Returns
Temp String8
static std::wstring clan::StringHelp::ucs2_to_lower ( const std::wstring &  s)
static

Ucs2 to lower.

Parameters
s= String Ref16
Returns
Temp String16
static std::string clan::StringHelp::ucs2_to_text ( const std::wstring &  ucs2)
static

Ucs2 to text.

Parameters
ucs2= String Ref16
Returns
Temp String
static unsigned int clan::StringHelp::ucs2_to_uint ( const std::wstring &  value,
int  base = 10 
)
static
static unsigned long long clan::StringHelp::ucs2_to_ull ( const std::wstring &  value,
int  base = 10 
)
static

Ucs2 to unsigned long long.

Parameters
value= String Ref16
base= value
Returns
unsigned long long
static std::wstring clan::StringHelp::ucs2_to_upper ( const std::wstring &  s)
static

Ucs2 to upper.

Parameters
s= String Ref16
Returns
Temp String16
static std::string clan::StringHelp::ucs2_to_utf8 ( const std::wstring &  ucs2)
static

Ucs2 to utf8.

Parameters
ucs2= String Ref16
Returns
Temp String8
static std::string clan::StringHelp::uint_to_local8 ( unsigned int  value)
static

Uint to local8.

Parameters
value= value
Returns
Temp String8
static std::string clan::StringHelp::uint_to_text ( unsigned int  value)
static

Uint to text.

Parameters
value= value
Returns
Temp String
static std::wstring clan::StringHelp::uint_to_ucs2 ( unsigned int  value)
static

Uint to ucs2.

Parameters
value= value
Returns
Temp String16
static std::string clan::StringHelp::ull_to_local8 ( unsigned long long  value)
static

Unsigned long long to local8.

Parameters
value= value
Returns
Temp String8
static std::string clan::StringHelp::ull_to_text ( unsigned long long  value)
static

Unsigned long long to text.

Parameters
value= value
Returns
Temp String
static std::wstring clan::StringHelp::ull_to_ucs2 ( unsigned long long  value)
static

Unsigned long long to ucs2.

Parameters
value= value
Returns
Temp String16
static std::string clan::StringHelp::unicode_to_utf8 ( unsigned int  value)
static

unicode char to utf-8

Parameters
value= unicode char value
Returns
The UTF-8 String
static std::string::size_type clan::StringHelp::utf8_length ( const std::string str)
static
static std::string clan::StringHelp::utf8_to_text ( const std::string utf8)
static

Utf8 to text.

Parameters
utf8= String Ref8
Returns
Temp String
static std::wstring clan::StringHelp::utf8_to_ucs2 ( const std::string utf8)
static

Utf8 to ucs2.

Parameters
utf8= String Ref8
Returns
Temp String16
static void clan::Console::wait_for_key ( )
static

Block until a key is pressed in the console window.

This function does not do anything on Linux.

static std::string clan::StringHelp::wchar_to_utf8 ( wchar_t  value)
static

Wide char to utf-8.

Parameters
value= Wide char value
Returns
The UTF-8 String
static void clan::Console::write ( const std::string text)
static

Writes text to the console window.

Referenced by clan::Console::write(), and clan::Console::write_line().

template<class Arg1 >
static void clan::Console::write ( const std::string format,
Arg1  arg1 
)
inlinestatic

Write.

Parameters
format= String Ref
arg1= Arg1

References clan::f, clan::StringFormat::get_result(), clan::StringFormat::set_arg(), and clan::Console::write().

template<class Arg1 , class Arg2 >
static void clan::Console::write ( const std::string format,
Arg1  arg1,
Arg2  arg2 
)
inlinestatic

Write.

Parameters
format= String Ref
arg1= Arg1
arg2= Arg2

References clan::f, clan::StringFormat::get_result(), clan::StringFormat::set_arg(), and clan::Console::write().

template<class Arg1 , class Arg2 , class Arg3 >
static void clan::Console::write ( const std::string format,
Arg1  arg1,
Arg2  arg2,
Arg3  arg3 
)
inlinestatic

Write.

Parameters
format= String Ref
arg1= Arg1
arg2= Arg2
arg3= Arg3

References clan::f, clan::StringFormat::get_result(), clan::StringFormat::set_arg(), and clan::Console::write().

template<class Arg1 , class Arg2 , class Arg3 , class Arg4 >
static void clan::Console::write ( const std::string format,
Arg1  arg1,
Arg2  arg2,
Arg3  arg3,
Arg4  arg4 
)
inlinestatic

Write.

Parameters
format= String Ref
arg1= Arg1
arg2= Arg2
arg3= Arg3
arg4= Arg4

References clan::f, clan::StringFormat::get_result(), clan::StringFormat::set_arg(), and clan::Console::write().

template<class Arg1 , class Arg2 , class Arg3 , class Arg4 , class Arg5 >
static void clan::Console::write ( const std::string format,
Arg1  arg1,
Arg2  arg2,
Arg3  arg3,
Arg4  arg4,
Arg5  arg5 
)
inlinestatic

Write.

Parameters
format= String Ref
arg1= Arg1
arg2= Arg2
arg3= Arg3
arg4= Arg4
arg5= Arg5

References clan::f, clan::StringFormat::get_result(), clan::StringFormat::set_arg(), and clan::Console::write().

template<class Arg1 , class Arg2 , class Arg3 , class Arg4 , class Arg5 , class Arg6 >
static void clan::Console::write ( const std::string format,
Arg1  arg1,
Arg2  arg2,
Arg3  arg3,
Arg4  arg4,
Arg5  arg5,
Arg6  arg6 
)
inlinestatic

Write.

Parameters
format= String Ref
arg1= Arg1
arg2= Arg2
arg3= Arg3
arg4= Arg4
arg5= Arg5
arg6= Arg6

References clan::f, clan::StringFormat::get_result(), clan::StringFormat::set_arg(), and clan::Console::write().

template<class Arg1 , class Arg2 , class Arg3 , class Arg4 , class Arg5 , class Arg6 , class Arg7 >
static void clan::Console::write ( const std::string format,
Arg1  arg1,
Arg2  arg2,
Arg3  arg3,
Arg4  arg4,
Arg5  arg5,
Arg6  arg6,
Arg7  arg7 
)
inlinestatic

Write.

Parameters
format= String Ref
arg1= Arg1
arg2= Arg2
arg3= Arg3
arg4= Arg4
arg5= Arg5
arg6= Arg6
arg7= Arg7

References clan::f, clan::StringFormat::get_result(), clan::StringFormat::set_arg(), and clan::Console::write().

static void clan::Console::write_line ( const std::string text)
inlinestatic

Writes text to the console window and then advances to a new line.

References clan::Console::write().

Referenced by clan::Console::write_line().

template<class Arg1 >
static void clan::Console::write_line ( const std::string format,
Arg1  arg1 
)
inlinestatic

Write line.

Parameters
format= String Ref
arg1= Arg1

References clan::f, clan::StringFormat::get_result(), clan::StringFormat::set_arg(), and clan::Console::write_line().

template<class Arg1 , class Arg2 >
static void clan::Console::write_line ( const std::string format,
Arg1  arg1,
Arg2  arg2 
)
inlinestatic

Write line.

Parameters
format= String Ref
arg1= Arg1
arg2= Arg2

References clan::f, clan::StringFormat::get_result(), clan::StringFormat::set_arg(), and clan::Console::write_line().

template<class Arg1 , class Arg2 , class Arg3 >
static void clan::Console::write_line ( const std::string format,
Arg1  arg1,
Arg2  arg2,
Arg3  arg3 
)
inlinestatic

Write line.

Parameters
format= String Ref
arg1= Arg1
arg2= Arg2
arg3= Arg3

References clan::f, clan::StringFormat::get_result(), clan::StringFormat::set_arg(), and clan::Console::write_line().

template<class Arg1 , class Arg2 , class Arg3 , class Arg4 >
static void clan::Console::write_line ( const std::string format,
Arg1  arg1,
Arg2  arg2,
Arg3  arg3,
Arg4  arg4 
)
inlinestatic

Write line.

Parameters
format= String Ref
arg1= Arg1
arg2= Arg2
arg3= Arg3
arg4= Arg4

References clan::f, clan::StringFormat::get_result(), clan::StringFormat::set_arg(), and clan::Console::write_line().

template<class Arg1 , class Arg2 , class Arg3 , class Arg4 , class Arg5 >
static void clan::Console::write_line ( const std::string format,
Arg1  arg1,
Arg2  arg2,
Arg3  arg3,
Arg4  arg4,
Arg5  arg5 
)
inlinestatic

Write line.

Parameters
format= String Ref
arg1= Arg1
arg2= Arg2
arg3= Arg3
arg4= Arg4
arg5= Arg5

References clan::f, clan::StringFormat::get_result(), clan::StringFormat::set_arg(), and clan::Console::write_line().

template<class Arg1 , class Arg2 , class Arg3 , class Arg4 , class Arg5 , class Arg6 >
static void clan::Console::write_line ( const std::string format,
Arg1  arg1,
Arg2  arg2,
Arg3  arg3,
Arg4  arg4,
Arg5  arg5,
Arg6  arg6 
)
inlinestatic

Write line.

Parameters
format= String Ref
arg1= Arg1
arg2= Arg2
arg3= Arg3
arg4= Arg4
arg5= Arg5
arg6= Arg6

References clan::f, clan::StringFormat::get_result(), clan::StringFormat::set_arg(), and clan::Console::write_line().

template<class Arg1 , class Arg2 , class Arg3 , class Arg4 , class Arg5 , class Arg6 , class Arg7 >
static void clan::Console::write_line ( const std::string format,
Arg1  arg1,
Arg2  arg2,
Arg3  arg3,
Arg4  arg4,
Arg5  arg5,
Arg6  arg6,
Arg7  arg7 
)
inlinestatic

Write line.

Parameters
format= String Ref
arg1= Arg1
arg2= Arg2
arg3= Arg3
arg4= Arg4
arg5= Arg5
arg6= Arg6
arg7= Arg7

References clan::f, clan::StringFormat::get_result(), clan::StringFormat::set_arg(), and clan::Console::write_line().

Variable Documentation

std::vector<Logger*> clan::Logger::instances
static

Pointers to currently enabled logger.

int clan::StringFormat::ArgPosition::length
std::recursive_mutex clan::Logger::mutex
static

Logger mutex object.

int clan::StringFormat::ArgPosition::start