class CcaseNB : public CObject
{
DECLARE_SERIAL(CcaseNB);
public:
bool m_impasse(int Index);
bool m_impasseDoubleOptim(int Index);
void m_AvoidBusyCaseTri();
void m_AvoidBusyCaseNoTri();
void m_AvoidBusyCaseAllTri();
void m_OrderBySigma(bool b);
void m_OrderRandom(bool b);
void m_OrderByLessLink(bool b);
int nbInitOrig;
int m_memo_index_trace;
bool CaseOnDiagoLeft;
bool CaseOnDiagoRight;
CString TimeOfResearch;
double TreeSearchTime;
SearchTime duration;
CcaseNB();
CcaseNB(int i);
virtual ~CcaseNB();
int current ;
int origine ;
int index ;
bool free ;
int nborigine ;
int tentative;
INTVECT FreePossibilites,possibilites;
int FreePossibilitesTab[9],possibilitesTab[9]; // perf compare with vector
CKCtrl * m_linkWnd;
int row,line;
int qrow,qline; // index row line dans le 1/4 de l'échiquier
static int MagicRow[8],MagicLine[8],MagicDiagoL,MagicDiagoR;
static int MagicRowVal[8],MagicLineVal[8],MagicDiagoLVal,MagicDiagoRVal;
// methodes de l'algorithme réparti sur les cases
virtual int FirstStep(int Src);
virtual bool IsFree(int Index);
virtual int NextStep();
virtual int GetSource();
void clear_affiche();
void affiche(bool prog);
void Serialize(CArchive& ar);
void SignalEnd();
};
|