18 #include <type_traits>
20 #include "absl/status/statusor.h"
21 #include "ortools/math_opt/parameters.pb.h"
22 #include "ortools/math_opt/solvers/gurobi.pb.h"
28 GurobiInitializerProto::ISVKey isv_key_proto;
29 isv_key_proto.set_name(
name);
32 isv_key_proto.set_key(
key);
37 const GurobiInitializerProto::ISVKey& key_proto) {
39 .
name = key_proto.name(),
40 .application_name = key_proto.application_name(),
41 .expiration = key_proto.expiration(),
42 .key = key_proto.key(),
47 GurobiInitializerProto params_proto;
50 *params_proto.mutable_isv_key() =
isv_key->Proto();
57 const GurobiInitializerProto& args_proto) {
59 if (args_proto.has_isv_key()) {
66 SolverInitializerProto params_proto;
69 *params_proto.mutable_gurobi() =
gurobi->Proto();
75 absl::StatusOr<StreamableSolverInitArguments>
77 const SolverInitializerProto& args_proto) {
79 if (args_proto.has_gurobi()) {
Collection of objects used to extend the Constraint Solver library.
static GurobiISVKey FromProto(const GurobiInitializerProto::ISVKey &key_proto)
GurobiInitializerProto::ISVKey Proto() const
std::string application_name
GurobiInitializerProto Proto() const
std::optional< GurobiISVKey > isv_key
static StreamableGurobiInitArguments FromProto(const GurobiInitializerProto &args_proto)
SolverInitializerProto Proto() const
static absl::StatusOr< StreamableSolverInitArguments > FromProto(const SolverInitializerProto &args_proto)
std::optional< StreamableGurobiInitArguments > gurobi