#ifndef PARAMS_H_INCLUDED
#define PARAMS_H_INCLUDED

#include "ramjet.h"

// search modes: halted, tournament, upper-bounded, infinite/ponder
typedef enum {SM_HALT, SM_SMART, SM_FIXED, SM_INF} SEARCHMODE;

// the parameters data type
typedef struct {
    MILLISEC time;
    NODECOUNT nodes;
    int depth;
    SEARCHMODE sm;
} PARAMS;

#define PAR_DEPTH_MAX 29

// reset the parameters to their default values
void par_clear(PARAMS* par);

// input/output in UCI format
void par_scan_uci(char* uci, PARAMS* par, PLAYER pl);

// test the functions above
int par_test();

#endif // PARAMS_H_INCLUDED
