This is a snapshot of a work-in-progress documentation theme. If you feel lost, miss something, or want to see the original Doxygen docs instead, head over to the archived version of this documentation page.

Corrade::Utility namespace

Utitlities.

This library contains utility classes used by all other Corrade parts, like debug and error output (class Debug), access to configuration files (class Configuration) or compiling data files into the executable (class Resource, see also tutorial).

This library is built if WITH_UTILITY is enabled when building Corrade. To use this library with CMake, you need to request the Utility component of the Corrade package and link to the Corrade::Utility target:

find_package(Corrade REQUIRED Utility)

# ...
target_link_libraries(your-app Corrade::Utility)

See also Downloading and building Corrade and Using Corrade with CMake for more information.

Namespaces

namespace Directory
Filesystem utilities.
namespace String
String utilities.
namespace System
System utilities.
namespace Unicode
Unicode utilities.

Classes

template<std::size_t digestSize>
class AbstractHash
Base template for hashing classes.
class AndroidLogStreamBuffer
Stream buffer that sends the data to Android log.
class Arguments
Command-line argument parser.
class Configuration
Parser and writer for configuration files.
class ConfigurationGroup
Group of values in configuration file.
template<class T>
struct ConfigurationValue
Configuration value parser and writer.
template<>
struct ConfigurationValue<bool>
Configuration value parser and writer for bool type.
template<>
struct ConfigurationValue<char32_t>
Configuration value parser and writer for char32_t type.
template<>
struct ConfigurationValue<double>
Configuration value parser and writer for double type.
template<>
struct ConfigurationValue<float>
Configuration value parser and writer for float type.
template<>
struct ConfigurationValue<int>
Configuration value parser and writer for int type.
template<>
struct ConfigurationValue<long>
Configuration value parser and writer for long type.
template<>
struct ConfigurationValue<long double>
Configuration value parser and writer for long double type.
template<>
struct ConfigurationValue<long long>
Configuration value parser and writer for long long type.
template<>
struct ConfigurationValue<short>
Configuration value parser and writer for short type.
template<>
struct ConfigurationValue<std::string>
Configuration value parser and writer for std::string type.
template<>
struct ConfigurationValue<unsigned int>
Configuration value parser and writer for unsigned int type.
template<>
struct ConfigurationValue<unsigned long>
Configuration value parser and writer for unsigned long type.
template<>
struct ConfigurationValue<unsigned long long>
Configuration value parser and writer for unsigned long long type.
template<>
struct ConfigurationValue<unsigned short>
Configuration value parser and writer for unsigned short type.
class Debug
Debug output handler.
class Endianness
Endianness related functions.
class Error
Error output handler.
class Fatal
Warning output handler.
template<std::size_t size>
class HashDigest
Hash digest.
class MurmurHash2
MurmurHash 2.
class Resource
Data resource management.
class Sha1
SHA-1.
class Warning
Warning output handler.

Enums

enum class ConfigurationValueFlag: std::uint8_t { Oct = 1 << 0, Hex = 1 << 1, Scientific = 1 << 2, Uppercase = 1 << 3 }
Configuration value conversion flag.

Typedefs

using ConfigurationValueFlags = Containers::EnumSet<ConfigurationValueFlag>
Configuration value conversion flags.
template<class T>
using IsIterable = std::integral_constant<bool,(Implementation::HasMemberBegin<T>::value||Implementation::HasBegin<T>::value||Implementation::HasStdBegin<T>::value)&&(Implementation::HasMemberEnd<T>::value||Implementation::HasEnd<T>::value||Implementation::HasStdEnd<T>::value)>
Traits class for checking whether given type is iterable.

Functions

auto operator<<(Debug& debug, Debug::Color value) -> Debug&
Debug output operator.
void sleep(std::size_t ms)

Type utilities

template<class To, class From>
auto bitCast(const From& from) -> To
Cast type to another of the same size.

Enum documentation

enum class Corrade::Utility::ConfigurationValueFlag: std::uint8_t

Configuration value conversion flag.

Enumerators
Oct

Numeric value as octal

Hex

Numeric value as hexadecimal

Scientific

Floating point values in scientific notation

Uppercase

Use uppercase characters for numeric output

Typedef documentation

template<class T>
using Corrade::Utility::IsIterable = std::integral_constant<bool,(Implementation::HasMemberBegin<T>::value||Implementation::HasBegin<T>::value||Implementation::HasStdBegin<T>::value)&&(Implementation::HasMemberEnd<T>::value||Implementation::HasEnd<T>::value||Implementation::HasStdEnd<T>::value)>

Traits class for checking whether given type is iterable.

Equivalent to std::true_type if the class is has either begin() / end() members, is usable with free begin() / end() functions or has std::begin() / std::end() overloads. Otherwise equivalent to std::false_type.

Function documentation

Debug& Corrade::Utility::operator<<(Debug& debug, Debug::Color value)

Debug output operator.


void Corrade::Utility::sleep(std::size_t ms)

Sleep for given time.

template<class To, class From>
To Corrade::Utility::bitCast(const From& from)

Cast type to another of the same size.

Unlike reinterpret_cast this doesn't break strict-aliasing rules.