utility 2026.1.9
A comprehensive C++ utilities library tailored for the development of modern desktop and extended reality (XR) applications.
Loading...
Searching...
No Matches
utility Namespace Reference

The utility namespace contains classes and functions for the utility project. More...

Classes

class  Cache
 A thread-safe cache for storing key-value pairs. More...
 
class  DefaultSystemIO
 The DefaultSystemIO class is a concrete implementation of the SystemIO interface that loads assets from the file system. More...
 
class  Engine
 Engine interface combining rendering and event handling. More...
 
class  File
 The File class represents a I/O file asset. More...
 
class  RessourceProvider
 The RessourceProvider class is responsible for managing and loading various resources such as fonts, materials, and textures in a graphics application. More...
 
class  Singleton
 Singleton class template. More...
 
class  SystemIO
 The SystemIO class is an abstract base class for managing file assets. More...
 

Concepts

concept  CacheEntry
 Concept to constrain cache entry type.
 
concept  CacheKey
 Concept to constrain cache key type.
 
concept  InheritFromEngine
 Concept to ensure a type inherits from Engine.
 
concept  CanBeSingleton
 Concept to ensure the class can be a singleton.
 
concept  IsSingletonOf
 Concept to ensure a Singleton type is provided.
 

Functions

template<typename Type >
std::string demangle (void)
 Demangles a C++ type name for better readability.
 
std::string demangle (const char *mangledName)
 Demangles a C++ type name from a raw type_info name string.
 

Detailed Description

The utility namespace contains classes and functions for the utility project.

Function Documentation

◆ demangle() [1/2]

std::string utility::demangle ( const char *  mangledName)
inline

Demangles a C++ type name from a raw type_info name string.

Parameters
mangledNameThe mangled type name (as returned by typeid(T).name()).
Returns
A human-readable string representing the type name.

Definition at line 81 of file demangle.hpp.

◆ demangle() [2/2]

template<typename Type >
std::string utility::demangle ( void  )

Demangles a C++ type name for better readability.

This function takes a mangled type name (as returned by typeid(T).name()) and returns a human-readable version of the type name. The implementation is platform-specific and may use compiler-specific APIs to perform the demangling.

Template Parameters
TypeThe type to demangle.
Returns
A human-readable string representing the type name of T.

Definition at line 51 of file demangle.hpp.