33 const bool is_model_proto =
model_proto.variable_size() > 0;
35 if (!is_model_proto && !is_request_proto) {
36 LOG(
ERROR) <<
"Failed to parse '" << input_file_path
37 <<
"' as an MPModelProto or an MPModelRequest.";
40 if (is_model_proto && is_request_proto) {
42 <<
" is parsing as both MPModelProto and MPModelRequest";
45 if (is_request_proto) {
46 VLOG(1) <<
"Read input proto as an MPModelRequest.";
49 VLOG(1) <<
"Read input proto as an MPModelProto.";
void MPModelProtoToLinearProgram(const MPModelProto &input, LinearProgram *output)
#define VLOG(verboselevel)
bool LoadLinearProgramFromModelOrRequest(const std::string &input_file_path, LinearProgram *linear_program)
int variable_size() const
const ::operations_research::MPModelProto & model() const
bool LoadMPModelProtoFromModelOrRequest(const std::string &input_file_path, MPModelProto *model)
::operations_research::MPModelProto * mutable_model()
CpModelProto const * model_proto
bool ReadFileToProto(absl::string_view filename, google::protobuf::Message *proto)
Collection of objects used to extend the Constraint Solver library.