Google OR-Tools v9.14
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
model_storage_types.h
Go to the documentation of this file.
1// Copyright 2010-2025 Google LLC
2// Licensed under the Apache License, Version 2.0 (the "License");
3// you may not use this file except in compliance with the License.
4// You may obtain a copy of the License at
5//
6// http://www.apache.org/licenses/LICENSE-2.0
7//
8// Unless required by applicable law or agreed to in writing, software
9// distributed under the License is distributed on an "AS IS" BASIS,
10// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11// See the License for the specific language governing permissions and
12// limitations under the License.
13
14// IWYU pragma: private, include "ortools/math_opt/cpp/math_opt.h"
15// IWYU pragma: friend "ortools/math_opt/cpp/.*"
16
17#ifndef OR_TOOLS_MATH_OPT_STORAGE_MODEL_STORAGE_TYPES_H_
18#define OR_TOOLS_MATH_OPT_STORAGE_MODEL_STORAGE_TYPES_H_
19
20#include <cstdint>
21#include <optional>
22
24#include "ortools/math_opt/elemental/elements.h" // IWYU pragma: export
25
27
28// nullopt denotes the primary objective.
29using ObjectiveId = std::optional<AuxiliaryObjectiveId>;
31 std::nullopt; // NOLINT: Used by dependencies
32DEFINE_STRONG_INT_TYPE(SecondOrderConeConstraintId, int64_t);
33DEFINE_STRONG_INT_TYPE(Sos1ConstraintId, int64_t);
34DEFINE_STRONG_INT_TYPE(Sos2ConstraintId, int64_t);
35DEFINE_STRONG_INT_TYPE(UpdateTrackerId, int64_t);
36
37} // namespace operations_research::math_opt
38
39#endif // OR_TOOLS_MATH_OPT_STORAGE_MODEL_STORAGE_TYPES_H_
An object oriented wrapper for quadratic constraints in ModelStorage.
Definition gurobi_isv.cc:28
constexpr ObjectiveId kPrimaryObjectiveId
std::optional< AuxiliaryObjectiveId > ObjectiveId
nullopt denotes the primary objective.
#define DEFINE_STRONG_INT_TYPE(type_name, value_type)