nouveau fichier : include/ArrayTree/ArrayTreeBuilder.tpp nouveau fichier : include/ArrayTree/Border.hpp nouveau fichier : include/ArrayTree/GraphWalker.hpp nouveau fichier : include/ArrayTree/Leader.hpp nouveau fichier : include/ArrayTree/Weight.hpp nouveau fichier : include/ArrayTree/Weight.tpp nouveau fichier : include/ArrayTree/triskeleArrayTreeBase.hpp nouveau fichier : include/ArrayTree/triskeleSort.hpp nouveau fichier : include/ArrayTree/triskeleSort.tpp modifié : include/Attribute.hpp modifié : include/Attributes/AreaAttribute.hpp supprimé : include/BuildTree.hpp supprimé : include/DAPTree/Border.hpp supprimé : include/DAPTree/DAPTreeBuilder.hpp supprimé : include/DAPTree/DAPTreeBuilder.tpp supprimé : include/DAPTree/GraphWalker.hpp supprimé : include/DAPTree/ParRnk.hpp supprimé : include/DAPTree/Weight.hpp supprimé : include/DAPTree/baseDAPTree.hpp supprimé : include/DAPTree/sort.hpp nouveau fichier : include/IImage.hpp nouveau fichier : include/IImage.tpp supprimé : include/ImageInterface.hpp supprimé : include/ImageInterface.tpp modifié : include/QuadTree/QuadTreeBuilder.hpp modifié : include/Tree.hpp nouveau fichier : include/TreeBuilder.hpp supprimé : include/TreeOfShapesGeraud/ToSBuilder.hpp supprimé : include/TreeOfShapesGeraud/ToSutils.hpp modifié : include/XMLTree/XMLTreeBuilder.hpp supprimé : include/baseDef.hpp supprimé : include/getType.hpp nouveau fichier : include/triskeleBase.hpp renommé : include/dealThreads.hpp -> include/triskeleDealThreads.hpp nouveau fichier : include/triskeleDealThreads.tpp renommé : include/debug.hpp -> include/triskeleDebug.hpp nouveau fichier : include/triskeleGdalGetType.hpp modifié : otb-module.cmake nouveau fichier : src/ArrayTree/triskeleArrayTreeBase.cpp modifié : src/Attribute.cpp modifié : src/Attributes/AreaAttribute.cpp modifié : src/CMakeLists.txt supprimé : src/DAPTree/GraphWalker.cpp supprimé : src/DAPTree/ParRnk.cpp supprimé : src/DAPTree/baseDAPTree.cpp supprimé : src/DAPTree/sort.cpp modifié : src/QuadTree/QuadTreeBuilder.cpp modifié : src/Tree.cpp supprimé : src/TreeOfShapesGeraud/ToSBuilder.cpp supprimé : src/TreeOfShapesGeraud/ToSutils.cpp modifié : src/XMLTree/XMLTreeBuilder.cpp supprimé : src/debug.cpp modifié : src/testMain.cpp nouveau fichier : src/triskeleDebug.cpp supprimé : tests/ToSGeraudCoord.txt supprimé : tests/ToSGeraudIdx.ods
62 lines
1.3 KiB
C++
62 lines
1.3 KiB
C++
#ifndef _TRISKELE_DEBUG_HPP
|
|
#define _TRISKELE_DEBUG_HPP
|
|
|
|
#include <iostream>
|
|
#include <iomanip>
|
|
#include <string>
|
|
#include <sstream>
|
|
|
|
#ifdef SMART_LOG
|
|
|
|
#ifndef DEF_LOG
|
|
#define DEF_LOG(name, expr) ::triskele::Log log (name); { std::cerr << expr << std::endl << std::flush; }
|
|
//#define DEF_LOG_(name) DEF_LOG(name, "") XXXX
|
|
#endif
|
|
|
|
#ifndef LOG
|
|
#define LOG(expr) { std::cerr << log << "| " << expr << std::endl << std::flush; }
|
|
#endif
|
|
|
|
#ifndef DEBUG
|
|
#define DEBUG(expr) { std::cerr << expr << std::endl << std::flush; }
|
|
#endif
|
|
|
|
#else
|
|
|
|
#ifndef DEF_LOG
|
|
#define DEF_LOG(name, expr)
|
|
//#define DEF_LOG_(name) XXXX
|
|
#endif
|
|
|
|
#ifndef LOG
|
|
#define LOG(expr)
|
|
#endif
|
|
|
|
#ifndef DEBUG
|
|
#define DEBUG(expr)
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
|
namespace triskele {
|
|
|
|
// ========================================
|
|
using namespace std;
|
|
|
|
class Log {
|
|
static unsigned int indent;
|
|
string functName;
|
|
public:
|
|
Log (const string &funct) : functName (funct) { ++indent; cerr << *this << "> "; }
|
|
~Log () { cerr << *this << "<" << endl << flush; --indent; }
|
|
friend inline ostream &operator << (ostream &out, const Log &log) {
|
|
return out << setw (3) << setw ((log.indent % 20)*2) << "" << log.functName;
|
|
}
|
|
};
|
|
|
|
// ========================================
|
|
}//namespace triskele
|
|
|
|
#endif //_TRISKELE_DEBUG_HPP
|