1 #ifndef _NTESUKI_NTESUKI_RECORD_H 
    2 #define _NTESUKI_NTESUKI_RECORD_H 
    8 #include "osl/checkmate/checkAssert.h" 
   10 #include "osl/state/hashEffectState.h" 
   40       static const unsigned int SIZE = 2;
 
  123         return piece_stand<P>();
 
  131           return piece_stand<BLACK>();
 
  135           return piece_stand<WHITE>();
 
  166       template <osl::Player A>
 
  176       template <Player A> 
void 
  206         for (; o < (int)
SIZE; o++)
 
  244       template <Player A> 
bool isByFixed() 
const;
 
  250       template <Player A> 
bool isNtesuki(
int pass_left) 
const;
 
  251       template <Player A> 
void setNtesuki(
int pass_left);
 
  308       template <Player A> 
bool 
  309       useOld(
int pass_left) 
const;
 
  311       template <Player A> 
void 
  318       template <Player A> 
bool 
  322       template <Player A> 
void 
  326       template <Player A> 
bool 
  329         return !loop_path_list<A>()[pass_left].empty();
 
  335       template <Player P> 
bool 
  339       template <Player P> 
void 
  343       template <Player P> 
void 
  354       template <Player P> 
void 
  390         for (RecordPList::const_iterator it = 
parents.begin();
 
  393           if (*it == p) 
return false;
 
  413         RecordPList::iterator lp = 
parents.begin();
 
  414         if (
std::find(lvisited.begin(), lvisited.end(), *lp)
 
  419         lvisited.push_front(*lp);
 
  420         (*lp)->find_split(rhs, lvisited, rvisited);
 
  421         lvisited.pop_front();
 
  423         for (RecordPList::iterator lp = 
parents.begin();
 
  426           if (
std::find(lvisited.begin(), lvisited.end(), *lp)
 
  429             lvisited.push_front(*lp);
 
  430             (*lp)->find_split(rhs, lvisited, rvisited);
 
  431             lvisited.pop_front();
 
  458         RecordPList::iterator rp = rhs->
parents.begin();
 
  459         if (
std::find(rvisited.begin(), rvisited.end(), *rp)
 
  464         rvisited.push_front(*rp);
 
  466         rvisited.pop_front();
 
  470         for (RecordPList::iterator rp = rhs->
parents.begin();
 
  471              rp != rhs->
parents.end(); ++rp)
 
  473           if (
std::find(rvisited.begin(), rvisited.end(), *rp)
 
  476             rvisited.push_front(*rp);
 
  478             rvisited.pop_front();
 
  508             lvisited.push_front(
this);
 
  509             rvisited.push_front(p);
 
  522       typedef CArray<PathEncodingList, SIZE> 
pell_t;
 
  715       template <Player P> 
void 
  735                                     int pass_left) 
const;
 
  739                                        int pass_left) 
const;