Loading...
Searching...
No Matches
LambdaContext.h
1//
2// Created by charlotte on 05.06.2026.
3//
4
5#ifndef IDOL_LAMBDA_CONTEXT_H
6#define IDOL_LAMBDA_CONTEXT_H
7
8#include "idol/general/utils/types.h"
9#include "idol/mixed-integer/modeling/models/Model.h"
10#include "idol/general/optimizers/LambdaOptimizer/Optimizers_LambdaOptimizer.h"
11
12namespace idol {
13 class LambdaContext {
14 Optimizers::LambdaOptimizer& m_optimizer;
15 public:
16 explicit LambdaContext(idol::Optimizers::LambdaOptimizer& t_optimizer)
17 : m_optimizer(t_optimizer){
18
19 }
20
21 const Model& get_model() const {
22 return m_optimizer.parent();
23 }
24
25 void set_status(const SolutionStatus& t_status){
26 m_optimizer.set_status(t_status);
27 }
28
29 void set_status(const SolutionStatus& t_status) const {
30 m_optimizer.set_status(t_status);
31 }
32
33 void set_best_obj(double t_best_obj) const {
34 m_optimizer.set_best_obj(t_best_obj);
35 }
36
37 void set_best_bound(double t_best_bound) const {
38 m_optimizer.set_best_bound(t_best_bound);
39 }
40
41 void set_var_primal(const Var& t_var, double t_value) const {
42 m_optimizer.set_var_primal(t_var, t_value);
43 }
44
45 };
46}
47
48#endif // IDOL_LAMBDA_CONTEXT_H