Newer
Older
/*
* Copyright 2010,
* François Bleibel,
* Olivier Stasse,
Francois Bleibel
committed
*
Francois Bleibel
committed
*
Francois Bleibel
committed
Francois Bleibel
committed
#include <dynamic-graph/debug.h>
Francois Bleibel
committed
#include <fstream>
#include <ios>
using namespace dynamicgraph;
#ifdef WIN32
const char *DebugTrace::DEBUG_FILENAME_DEFAULT = "c:/tmp/dynamic-graph-traces.txt";
#else /*WIN32*/
const char *DebugTrace::DEBUG_FILENAME_DEFAULT = "/tmp/dynamic-graph-traces.txt";
#endif /*WIN32*/
Francois Bleibel
committed
#ifdef VP_DEBUG
#ifdef WIN32
std::ofstream dg_debugfile("C:/tmp/dynamic-graph-traces.txt", std::ios::trunc &std::ios::out);
#else /*WIN32*/
std::ofstream dg_debugfile("/tmp/dynamic-graph-traces.txt", std::ios::trunc &std::ios::out);
#endif /*WIN32*/
Francois Bleibel
committed
#else
std::ofstream dg_debugfile; //( "/dev/null", std::ios::trunc&std::ios::out );
class dgDebug_init {
Francois Bleibel
committed
public:
dgDebug_init() { dg_debugfile.setstate(std::ios::failbit); /* dg_debugfile.close (); */ }
};
dgDebug_init dgDebug_initialisator;
Francois Bleibel
committed
#endif
namespace dynamicgraph {
DebugTrace dgDEBUGFLOW(dg_debugfile);
DebugTrace dgERRORFLOW(dg_debugfile);
} // namespace dynamicgraph
void DebugTrace::openFile(const char *filename) {
if (dg_debugfile.good() && dg_debugfile.is_open()) dg_debugfile.close();
dg_debugfile.clear();
dg_debugfile.open(filename, std::ios::trunc & std::ios::out);
// std::cout << filename << dg_debugfile.good () << dg_debugfile.is_open () << std::endl;
}
Francois Bleibel
committed
void DebugTrace::closeFile(const char *) {
if (dg_debugfile.good() && dg_debugfile.is_open()) {
dg_debugfile.close();
}
dg_debugfile.setstate(std::ios::failbit);
Francois Bleibel
committed
}
// DebugTrace dgDebugFLOW(std::cout);
// DebugTrace dgERRORFLOW(std::cerr);