TurtleBrains  0.3.5
High quality, portable, C++ framework for rapid 2D game development.
tb_formatter.hpp
1 
9 #ifndef TurtleBrains_Formatter_hpp
10 #define TurtleBrains_Formatter_hpp
11 
12 #include <memory>
13 #include <cstdarg>
14 
15 namespace TurtleBrains
16 {
17  namespace Core
18  {
23  class Formatter
24  {
25  public:
32  explicit Formatter(const char* formattedMessage, ...);
33 
40  Formatter(const Formatter& other);
41 
47  Formatter(Formatter&& other);
48 
52  ~Formatter(void);
53 
60  Formatter& operator=(const Formatter& other);
61 
67  Formatter& operator=(Formatter&& other);
68 
72  const char* c_str(void) const;
73 
82  static Formatter FromArgumentList(const char* formattedMessage, va_list argumentsList);
83 
84  private:
85  Formatter(void);
86 
87  std::unique_ptr<char[]> mBuffer;
88  size_t mBufferSize;
89  };
90 
91  }; /* namespace Core */
92 }; /* namespace TurtleBrains */
93 
94 namespace tbCore = TurtleBrains::Core;
95 
96 #endif /* TurtleBrains_Formatter_hpp */
Definition: tb_formatter.hpp:23
Here is some information about the primary namespace.
Definition: tb_application_dialog.hpp:21
Formatter & operator=(const Formatter &other)
static Formatter FromArgumentList(const char *formattedMessage, va_list argumentsList)
Contains core functionality for each component of the API.
Definition: tb_debug_logger.hpp:88
const char * c_str(void) const