OR-Tools  9.6
lp_types.h File Reference

Go to the source code of this file.

Classes

class  StrictITISpan< IntType, T >
 
class  StrictITIVector< IntType, T >
 
class  VectorIterator< EntryType >
 

Namespaces

 operations_research
 Collection of objects used to extend the Constraint Solver library.
 
 operations_research::glop
 

Typedefs

typedef int32_t Index
 
typedef double Fractional
 
typedef StrictITIVector< ColIndex, Fractional > DenseRow
 
typedef StrictITIVector< ColIndex, bool > DenseBooleanRow
 
typedef StrictITIVector< ColIndex, ColIndex > ColMapping
 
typedef std::vector< ColIndex > ColIndexVector
 
typedef std::vector< RowIndex > RowIndexVector
 
typedef StrictITIVector< ColIndex, RowIndex > ColToRowMapping
 
typedef StrictITIVector< ColIndex, VariableType > VariableTypeRow
 
typedef StrictITIVector< ColIndex, VariableStatus > VariableStatusRow
 
typedef Bitset64< ColIndex > DenseBitRow
 
typedef StrictITIVector< RowIndex, Fractional > DenseColumn
 
typedef StrictITIVector< RowIndex, bool > DenseBooleanColumn
 
typedef Bitset64< RowIndex > DenseBitColumn
 
typedef StrictITIVector< RowIndex, RowIndex > RowMapping
 
typedef StrictITIVector< RowIndex, ColIndex > RowToColMapping
 
typedef StrictITIVector< RowIndex, ConstraintStatus > ConstraintStatusColumn
 

Enumerations

enum class  ProblemStatus : int8_t {
  OPTIMAL , PRIMAL_INFEASIBLE , DUAL_INFEASIBLE , INFEASIBLE_OR_UNBOUNDED ,
  PRIMAL_UNBOUNDED , DUAL_UNBOUNDED , INIT , PRIMAL_FEASIBLE ,
  DUAL_FEASIBLE , ABNORMAL , INVALID_PROBLEM , IMPRECISE
}
 
enum class  VariableType : int8_t {
  UNCONSTRAINED , LOWER_BOUNDED , UPPER_BOUNDED , UPPER_AND_LOWER_BOUNDED ,
  FIXED_VARIABLE
}
 
enum class  VariableStatus : int8_t {
  BASIC , FIXED_VALUE , AT_LOWER_BOUND , AT_UPPER_BOUND ,
  FREE
}
 
enum class  ConstraintStatus : int8_t {
  BASIC , FIXED_VALUE , AT_LOWER_BOUND , AT_UPPER_BOUND ,
  FREE
}
 

Functions

 DEFINE_STRONG_INDEX_TYPE (ColIndex)
 
 DEFINE_STRONG_INDEX_TYPE (RowIndex)
 
ColIndex RowToColIndex (RowIndex row)
 
RowIndex ColToRowIndex (ColIndex col)
 
Index ColToIntIndex (ColIndex col)
 
Index RowToIntIndex (RowIndex row)
 
 DEFINE_STRONG_INT64_TYPE (EntryIndex)
 
static double ToDouble (double f)
 
static double ToDouble (long double f)
 
bool IsFinite (Fractional value)
 
constexpr RowIndex kInvalidRow (-1)
 
constexpr ColIndex kInvalidCol (-1)
 
std::string GetProblemStatusString (ProblemStatus problem_status)
 
std::ostream & operator<< (std::ostream &os, ProblemStatus status)
 
std::string GetVariableTypeString (VariableType variable_type)
 
std::ostream & operator<< (std::ostream &os, VariableType type)
 
std::string GetVariableStatusString (VariableStatus status)
 
std::ostream & operator<< (std::ostream &os, VariableStatus status)
 
std::string GetConstraintStatusString (ConstraintStatus status)
 
std::ostream & operator<< (std::ostream &os, ConstraintStatus status)
 
ConstraintStatus VariableToConstraintStatus (VariableStatus status)
 
static double DeterministicTimeForFpOperations (int64_t n)
 

Variables

constexpr double kRangeMax = std::numeric_limits<double>::max()
 
constexpr double kInfinity = std::numeric_limits<double>::infinity()
 
constexpr double kEpsilon = std::numeric_limits<double>::epsilon()