00001
00005 #include <stdarg.h>
00006 #include <stdio.h>
00007 #include <blort/Recognizer3D/Except.hh>
00008
00009 namespace P
00010 {
00011
00019 Except::Except(const char *file, const char *function, int line,
00020 const char *format, ...) throw()
00021 {
00022 static char what[1024];
00023 static char msg[1024];
00024 va_list arg_list;
00025 va_start(arg_list, format);
00026 vsnprintf(what, 1024, format, arg_list);
00027 va_end(arg_list);
00028 snprintf(msg, 1024, "%s:%s:%d: %s", file, function, line, what);
00029 _what = msg;
00030 }
00031
00032 }
00033