NGSolve  4.9
ngstd/statushandler.hpp
00001 #ifndef _STATUSHANDLER_HPP
00002 #define _STATUSHANDLER_HPP
00003 
00004 namespace ngstd
00005 {
00006 
00010   class NGS_DLL_HEADER BaseStatusHandler
00011   {
00012   public:
00013     virtual ~BaseStatusHandler () { ; }
00014     virtual void PushStatus (const char * str) const = 0;
00015 
00016     virtual void PopStatus () const = 0;
00017 
00018     virtual void SetThreadPercentage (double percent) const = 0;
00019 
00020     virtual void GetStatus (string & str, double & percent) const = 0;
00021 
00022     virtual void SetTerminate(void) const = 0;
00023     virtual void UnSetTerminate(void) const = 0;
00024     virtual bool ShouldTerminate(void) const = 0;
00025   
00026   };
00027 
00028 }
00029 
00030 #endif // _STATUSHANDLER_HPP