* Then, it is used to list all variables involved in constraint through constraint's xxx_element_set lists, or
* vice-versa list all constraints for a given variable.
*/
-class s_lmm_element_t {
+XBT_PUBLIC_CLASS s_lmm_element_t {
public:
int get_concurrency() const;
void decrease_concurrency();
* \li Active elements which variable's weight is non-zero (i.e. it is enabled) AND its element value is non-zero.
* LMM_solve iterates over active elements during resolution, dynamically making them active or unactive.
*/
-class s_lmm_constraint_t {
+XBT_PUBLIC_CLASS s_lmm_constraint_t {
public:
s_lmm_constraint_t() = default;
s_lmm_constraint_t(void* id_value, double bound_value);
* When something prevents us from enabling a variable, we "stage" the weight that we would have like to set, so that as
* soon as possible we enable the variable with desired weight
*/
-class s_lmm_variable_t {
+XBT_PUBLIC_CLASS s_lmm_variable_t {
public:
void initialize(simgrid::surf::Action* id_value, double sharing_weight_value, double bound_value,
int number_of_constraints, unsigned visited_value);
/**
* @brief LMM system
*/
-class s_lmm_system_t {
+XBT_PUBLIC_CLASS s_lmm_system_t {
public:
/**
* @brief Create a new Linear MaxMim system