14#ifndef OR_TOOLS_MATH_OPT_SOLVERS_GUROBI_CALLBACK_H_
15#define OR_TOOLS_MATH_OPT_SOLVERS_GUROBI_CALLBACK_H_
20#include "absl/container/flat_hash_set.h"
21#include "absl/status/status.h"
22#include "absl/time/time.h"
25#include "ortools/math_opt/callback.pb.h"
29#include "ortools/math_opt/sparse_containers.pb.h"
57 const absl::flat_hash_set<CallbackEventProto>& events);
std::function< void(const std::vector< std::string > &)> MessageCallback
std::function< absl::StatusOr< CallbackResultProto >( const CallbackDataProto &)> Callback
GurobiMPCallbackContext * context
std::vector< bool > EventToGurobiWhere(const absl::flat_hash_set< CallbackEventProto > &events)
void GurobiCallbackImplFlush(const GurobiCallbackInput &callback_input, MessageCallbackData &message_callback_data)
absl::Status GurobiCallbackImpl(const Gurobi::CallbackContext &context, const GurobiCallbackInput &callback_input, MessageCallbackData &message_callback_data, SolveInterrupter *const local_interrupter)
In SWIG mode, we don't want anything besides these top-level includes.