UniSet  2.0.0
Extensions.h
00001 // -------------------------------------------------------------------------
00002 #ifndef Extensions_H_
00003 #define Extensions_H_
00004 // -------------------------------------------------------------------------
00005 #include <string>
00006 #include "UniXML.h"
00007 #include "Debug.h"
00008 #include "UniSetTypes.h"
00009 #include "Calibration.h"
00010 // -------------------------------------------------------------------------
00011 namespace UniSetExtensions
00012 {
00014     UniSetTypes::ObjectId getSharedMemoryID();
00015 
00016     xmlNode* findNode( xmlNode* node, const std::string& snode, const std::string& field );
00017 
00018     xmlNode* getCalibrationsSection();
00019 
00023     void escape_string( std::string& s );
00024 
00026     Calibration* buildCalibrationDiagram( const std::string& dname );
00027 
00028 
00029     void on_sigchild( int sig );
00030 
00031     extern DebugStream dlog;
00032 }
00033 // -------------------------------------------------------------------------
00034 // "синтаксический сахар"..для логов
00035 #define dinfo if( UniSetExtensions::dlog.debugging(Debug::INFO) ) UniSetExtensions::dlog[Debug::INFO]
00036 #define dwarn if( UniSetExtensions::dlog.debugging(Debug::WARN) ) UniSetExtensions::dlog[Debug::WARN]
00037 #define dcrit if( UniSetExtensions::dlog.debugging(Debug::CRIT) ) UniSetExtensions::dlog[Debug::CRIT]
00038 #define dlog1 if( UniSetExtensions::dlog.debugging(Debug::LEVEL1) ) UniSetExtensions::dlog[Debug::LEVEL1]
00039 #define dlog2 if( UniSetExtensions::dlog.debugging(Debug::LEVEL2) ) UniSetExtensions::dlog[Debug::LEVEL2]
00040 #define dlog3 if( UniSetExtensions::dlog.debugging(Debug::LEVEL3) ) UniSetExtensions::dlog[Debug::LEVEL3]
00041 #define dlog4 if( UniSetExtensions::dlog.debugging(Debug::LEVEL4) ) UniSetExtensions::dlog[Debug::LEVEL4]
00042 #define dlog5 if( UniSetExtensions::dlog.debugging(Debug::LEVEL5) ) UniSetExtensions::dlog[Debug::LEVEL5]
00043 #define dlog6 if( UniSetExtensions::dlog.debugging(Debug::LEVEL6) ) UniSetExtensions::dlog[Debug::LEVEL6]
00044 #define dlog7 if( UniSetExtensions::dlog.debugging(Debug::LEVEL7) ) UniSetExtensions::dlog[Debug::LEVEL7]
00045 #define dlog8 if( UniSetExtensions::dlog.debugging(Debug::LEVEL8) ) UniSetExtensions::dlog[Debug::LEVEL8]
00046 #define dlog9 if( UniSetExtensions::dlog.debugging(Debug::LEVEL9) ) UniSetExtensions::dlog[Debug::LEVEL9]
00047 #define dlogsys if( UniSetExtensions::dlog.debugging(Debug::SYSTEM) ) UniSetExtensions::dlog[Debug::SYSTEM]
00048 #define dlogrep if( UniSetExtensions::dlog.debugging(Debug::REPOSITORY) ) UniSetExtensions::dlog[Debug::REPOSITORY]
00049 // -------------------------------------------------------------------------
00050 #endif // Extensions_H_
00051 // -------------------------------------------------------------------------