14 package com.google.ortools.sat;
23 CpModelProto.Builder builder,
int startIndex,
int sizeIndex,
int endIndex, String name) {
24 this.modelBuilder = builder;
25 this.constraintIndex = modelBuilder.getConstraintsCount();
26 ConstraintProto.Builder ct = modelBuilder.addConstraintsBuilder();
28 this.intervalBuilder = ct.getIntervalBuilder();
29 this.intervalBuilder.setStart(startIndex);
30 this.intervalBuilder.setSize(sizeIndex);
31 this.intervalBuilder.setEnd(endIndex);
34 IntervalVar(CpModelProto.Builder builder,
int startIndex,
int sizeIndex,
int endIndex,
35 int isPresentIndex, String name) {
36 this.modelBuilder = builder;
37 this.constraintIndex = modelBuilder.getConstraintsCount();
38 ConstraintProto.Builder ct = modelBuilder.addConstraintsBuilder();
40 ct.addEnforcementLiteral(isPresentIndex);
41 this.intervalBuilder = ct.getIntervalBuilder();
42 this.intervalBuilder.setStart(startIndex);
43 this.intervalBuilder.setSize(sizeIndex);
44 this.intervalBuilder.setEnd(endIndex);
49 return modelBuilder.getConstraints(constraintIndex).toString();
54 return constraintIndex;
59 return intervalBuilder;
64 return modelBuilder.getConstraints(constraintIndex).getName();
67 private final CpModelProto.Builder modelBuilder;
68 private final int constraintIndex;
69 private final IntervalConstraintProto.Builder intervalBuilder;