27#include <unordered_map>
30#include <antares/solver/optim-model-filler/FullKey.h>
42 unsigned int initialTime = 0;
43 unsigned int finalTime = 0;
48 explicit Iterator(
unsigned int current);
49 unsigned int operator*()
const;
51 bool operator!=(
const Iterator& other)
const;
54 unsigned int current_;
64 return Iterator(finalTime + 1);
67 std::size_t size()
const
69 return finalTime - initialTime + 1;
77 Dimensions(std::optional<IntegerInterval> scenarioInterval,
78 std::optional<IntegerInterval> timeInterval);
79 bool isTimeDependent()
const;
80 bool isScenarioDependent()
const;
83 unsigned int getNumberOfTimesteps()
const;
86 std::optional<IntegerInterval> scenarioInterval;
87 std::optional<IntegerInterval> timeInterval;
92 unsigned int scenario;
93 unsigned int timestep;
100 class VectorWithOffset
103 VectorWithOffset() =
default;
104 void resize(
size_t initial_size,
unsigned offset);
105 Value& operator[](
unsigned int index);
106 const Value& operator[](
unsigned int index)
const;
107 const Value& at(
unsigned int index)
const;
108 Value& at(
unsigned int index);
111 std::vector<Value> values_ = {};
112 unsigned int offset_ = 0;
115 using TwoIndexVector = std::vector<VectorWithOffset>;
116 using HashMapVector = std::unordered_map<PartialKey, TwoIndexVector, PartialKeyHash>;
119 const TwoIndexVector& operator[](
const PartialKey& k)
const;
122 void addVariable(
const Dimensions& dimensions,
129 Value operator()(
const std::string& component,
const std::string& variable)
const;
130 Value& operator()(
const std::string& component,
const std::string& variable);
132 Value operator()(
const std::string& component,
133 const std::string& variable,
134 unsigned int scenario,
135 unsigned int timestep)
const;
137 Value& operator()(
const std::string& component,
138 const std::string& variable,
139 unsigned int scenario,
140 unsigned int timestep);
Definition mipVariable.h:31
Definition VariableDictionary.h:74
Definition VariableDictionary.h:46
Definition PartialKey.h:29
Definition VariableDictionary.h:97
Namespace for the classes related to the linear problem API.
Definition EvaluationContext.h:9
Definition constraint-slack-analysis.cpp:45
Definition VariableDictionary.h:41
Definition VariableDictionary.h:91