⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 search.h

📁 超强国际象棋引擎
💻 H
字号:
// search.h

#ifndef SEARCH_H

#define SEARCH_H

// includes

#include <csetjmp>

#include "move_list.h"
#include "move.h"

// types

struct search_multipv_t
    {
    int mate;
    int depth;
    int max_depth;
    int value;
    double time;
    sint64 node_nb;
    char pv_string[512];
    };

struct search_param_t
    {
    int move;
    int best_move;
    int threat_move;
    bool reduced;
    };

struct search_input_t
    {
    board_t board[1];
    list_t list[1];
    bool infinite;
    bool depth_is_limited;
    int depth_limit;
    int multipv;
    bool time_is_limited;
    double time_limit_1;
    double time_limit_2;
    };

struct search_info_t
    {
    jmp_buf buf;
    bool can_stop;
    bool stop;
    int check_nb;
    int check_inc;
    double last_time;
    };

struct search_root_t
    {
    list_t list[1];
    int depth;
    int move;
    int move_pos;
    int move_nb;
    int last_value;
    bool bad_1;
    bool bad_2;
    bool change;
    bool easy;
    bool flag;
    };

struct search_best_t
    {
    int move;
    int value;
    int flags;
    int depth;
    mv_t pv[256];
    };

struct search_current_t
    {
    board_t board[1];
    my_timer_t timer[1];
    int max_depth;
    int act_iteration;
    int multipv;
    sint64 node_nb;
    double time;
    double speed;
    };

// variables

extern int number_threads;

extern search_input_t search_input[1];

extern search_info_t search_info[16][1];

extern search_best_t search_best[16][10];

extern search_root_t search_root[16][1];

extern search_current_t search_current[16][1];

// functions

extern bool depth_is_ok(int depth);
extern bool height_is_ok(int height);
extern void search_clear();
extern void search_init();
extern void search();
extern void search_smp(int thread_id);
extern void search_update_best(int thread_id);
extern void search_update_root(int thread_id);
extern void search_update_current(int thread_id);
extern void search_check(int thread_id);

#endif // !defined SEARCH_H

// end of search.h

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -