/* * Copyright 2010, * François Bleibel, * Olivier Stasse, * * CNRS/AIST * */ #include <dynamic-graph/debug.h> #include <dynamic-graph/exception-factory.h> #include <stdarg.h> #include <cstdio> using namespace dynamicgraph; /* --------------------------------------------------------------------- */ /* --- CLASS ----------------------------------------------------------- */ /* --------------------------------------------------------------------- */ const std::string ExceptionFactory::EXCEPTION_NAME = "Factory"; ExceptionFactory::ExceptionFactory( const ExceptionFactory::ErrorCodeEnum &errcode, const std::string &msg) : ExceptionAbstract(errcode, msg) { dgDEBUGF(15, "Created with message <%s>.", msg.c_str()); dgDEBUG(1) << "Created with message <%s>." << msg << std::endl; } ExceptionFactory::ExceptionFactory( const ExceptionFactory::ErrorCodeEnum &errcode, const std::string &msg, const char *format, ...) : ExceptionAbstract(errcode, msg) { va_list args; va_start(args, format); const unsigned int SIZE = 256; char buffer[SIZE]; vsnprintf(buffer, SIZE, format, args); dgDEBUG(15) << "Created " << " with message <" << msg << "> and buffer <" << buffer << ">. " << std::endl; message += buffer; va_end(args); dgDEBUG(1) << "Throw exception " << EXCEPTION_NAME << "[#" << errcode << "]: " << "<" << message << ">." << std::endl; } /* * Local variables: * c-basic-offset: 2 * End: */