45 lines
993 B
C
45 lines
993 B
C
|
/**
|
||
|
@file format.h
|
||
|
|
||
|
@maintainer Morgan McGuire, http://graphics.cs.williams.edu
|
||
|
|
||
|
@author 2000-09-09
|
||
|
@edited 2005-11-03
|
||
|
|
||
|
Copyright 2000-2005, Morgan McGuire.
|
||
|
All rights reserved.
|
||
|
*/
|
||
|
|
||
|
#ifndef G3D_FORMAT_H
|
||
|
#define G3D_FORMAT_H
|
||
|
|
||
|
#include "G3D/platform.h"
|
||
|
#include <string>
|
||
|
#include <stdio.h>
|
||
|
#include <cstdarg>
|
||
|
|
||
|
namespace G3D {
|
||
|
|
||
|
/**
|
||
|
Produces a string from arguments of the style of printf. This avoids
|
||
|
problems with buffer overflows when using sprintf and makes it easy
|
||
|
to use the result functionally. This function is fast when the resulting
|
||
|
string is under 160 characters (not including terminator) and slower
|
||
|
when the string is longer.
|
||
|
*/
|
||
|
std::string __cdecl format(
|
||
|
const char* fmt
|
||
|
...) G3D_CHECK_PRINTF_ARGS;
|
||
|
|
||
|
/**
|
||
|
Like format, but can be called with the argument list from a ... function.
|
||
|
*/
|
||
|
std::string vformat(
|
||
|
const char* fmt,
|
||
|
va_list argPtr) G3D_CHECK_VPRINTF_ARGS;
|
||
|
|
||
|
|
||
|
} // namespace
|
||
|
|
||
|
#endif
|