/*1Stockfish, a UCI chess playing engine derived from Glaurung 2.12Copyright (C) 2004-2025 The Stockfish developers (see AUTHORS file)34Stockfish is free software: you can redistribute it and/or modify5it under the terms of the GNU General Public License as published by6the Free Software Foundation, either version 3 of the License, or7(at your option) any later version.89Stockfish is distributed in the hope that it will be useful,10but WITHOUT ANY WARRANTY; without even the implied warranty of11MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the12GNU General Public License for more details.1314You should have received a copy of the GNU General Public License15along with this program. If not, see <http://www.gnu.org/licenses/>.16*/1718#ifndef EVALUATE_H_INCLUDED19#define EVALUATE_H_INCLUDED2021#include <string>2223#include "types.h"2425namespace Stockfish {2627class Position;2829namespace Eval {3031// The default net name MUST follow the format nn-[SHA256 first 12 digits].nnue32// for the build process (profile-build and fishtest) to work. Do not change the33// name of the macro or the location where this macro is defined, as it is used34// in the Makefile/Fishtest.35#define EvalFileDefaultNameBig "nn-1c0000000000.nnue"36#define EvalFileDefaultNameSmall "nn-37f18f62d772.nnue"3738namespace NNUE {39struct Networks;40struct AccumulatorCaches;41class AccumulatorStack;42}4344std::string trace(Position& pos, const Eval::NNUE::Networks& networks);4546int simple_eval(const Position& pos);47bool use_smallnet(const Position& pos);48Value evaluate(const NNUE::Networks& networks,49const Position& pos,50Eval::NNUE::AccumulatorStack& accumulators,51Eval::NNUE::AccumulatorCaches& caches,52int optimism);53} // namespace Eval5455} // namespace Stockfish5657#endif // #ifndef EVALUATE_H_INCLUDED585960