Main   Namespaces   Classes   Hierarchy   Annotated   Files   Compound   Global   Pages  

VCUtils.hpp

Go to the documentation of this file.
00001 //----------------------------------------------------------------------------
00002 /** @file VCUtils.hpp
00003  */
00004 //----------------------------------------------------------------------------
00005 
00006 #ifndef VCUTILS_HPP
00007 #define VCUTILS_HPP
00008 
00009 #include "Hex.hpp"
00010 #include "HexBoard.hpp"
00011 #include "StoneBoard.hpp"
00012 #include "VC.hpp"
00013 
00014 _BEGIN_BENZENE_NAMESPACE_
00015 
00016 //----------------------------------------------------------------------------
00017 
00018 /** Utilities on VCs. */
00019 namespace VCUtils
00020 {
00021     /** Returns mustplay for color to move. 
00022         @todo Document what the mustplay is! 
00023      */
00024     bitset_t GetMustplay(const HexBoard& brd, HexColor color);
00025 
00026     /** Returns true if carrier defines a valid bridge to the
00027         edge. Edge and the other endpoint are stored if it is valid.
00028     */
00029     bool ValidEdgeBridge(const StoneBoard& brd, 
00030                          const bitset_t& carrier, 
00031                          HexPoint& endpoint,
00032                          HexPoint& edge);
00033 }
00034 
00035 //----------------------------------------------------------------------------
00036 
00037 _END_BENZENE_NAMESPACE_
00038 
00039 #endif // VCUTILS_HPP


6 Jan 2011 Doxygen 1.6.3