logWriter.h
Go to the documentation of this file.
00001 /* logWriter.h
00002  */
00003 #ifndef _LOGWRITER_H
00004 #define _LOGWRITER_H
00005 
00006 #include "osl/move.h"
00007 #include <iosfwd>
00008 
00009 namespace osl
00010 {
00011   class MoveLogProb;
00012   namespace search
00013   {
00014     class SimpleHashRecord;
00015     namespace analyzer
00016     {
00022       class LogWriter
00023       {
00024       public:
00025         enum NodeType { NORMAL=0, IMPORTANT=1, ABNORMAL=2, };
00026         LogWriter();
00027         virtual ~LogWriter();
00031         virtual void showNode(Player turn, const SimpleHashRecord *record, 
00032                               int limit, NodeType type) const = 0;
00033         virtual void showNodeQuiescence(Player turn, 
00034                                         const SimpleHashRecord *record, 
00035                                         int limit, NodeType type) const = 0;
00036         virtual void showArc(const SimpleHashRecord *from,
00037                              const SimpleHashRecord *to,
00038                              const MoveLogProb& move, bool important) const = 0;
00039         virtual void showComment(const char * /*line*/) const {}
00040       };
00041     } // namespace analyzer
00042   } // namespace search
00043 } // namespace osl
00044 
00045 #endif /* _LOGWRITER_H */
00046 // ;;; Local Variables:
00047 // ;;; mode:c++
00048 // ;;; c-basic-offset:2
00049 // ;;; End:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines