/*
Stockfish, a UCI chess playing engine derived from Glaurung 2.1
- Copyright (C) 2004-2008 Tord Romstad (Glaurung author)
- Copyright (C) 2008-2015 Marco Costalba, Joona Kiiski, Tord Romstad
+ Copyright (C) 2004-2020 The Stockfish developers (see AUTHORS file)
Stockfish is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
namespace Eval {
-const Value Tempo = Value(17); // Must be visible to search
+ std::string trace(const Position& pos);
+ Value evaluate(const Position& pos);
-void init();
-std::string trace(const Position& pos);
+ extern bool useNNUE;
+ extern std::string eval_file_loaded;
-template<bool DoTrace = false>
-Value evaluate(const Position& pos);
-}
+ // The default net name MUST follow the format nn-[SHA256 first 12 digits].nnue
+ // for the build process (profile-build and fishtest) to work. Do not change the
+ // name of the macro, as it is used in the Makefile.
+ #define EvalFileDefaultName "nn-62ef826d1a6d.nnue"
+
+ namespace NNUE {
+
+ Value evaluate(const Position& pos);
+ bool load_eval(std::string name, std::istream& stream);
+ void init();
+ void verify();
+
+ } // namespace NNUE
+
+} // namespace Eval
#endif // #ifndef EVALUATE_H_INCLUDED