Loading...
Searching...
No Matches
idol::Env Class Reference

#include <Env.h>

Description

Environment class.

This class stores and manages every optimization objects and annotations in idol.

Essentially, it is the environment that controls the death and lives of such objects. It is through the environment that idol manages the different versions each optimization object may have during the execution of your program.

Important: If an optimization environment is destroyed, all of its objects are also destroyed. Trying to access them will lead to undefined behavior and, eventually, segmentation fault.

Typically, only one environment should be used by your code, though it is possible to instantiate many environment (not advised).

Environments are objects of the Env class and can be created as follows.

Env env; // Creates a new optimization environment.
Env()=default

Definition at line 164 of file Env.h.

Public Methods

 Env ()=default

Friends

class Model
class Var
class Ctr
class QCtr
class SOSCtr
class impl::Annotation

Constructor & Destructor Documentation

◆ Env()

idol::Env::Env ( )
default

Constructor.

Creates a new optimization environment.

◆ Ctr

friend class Ctr
friend

Definition at line 175 of file Env.h.

◆ impl::Annotation

friend class impl::Annotation
friend

Definition at line 178 of file Env.h.

◆ Model

friend class Model
friend

Definition at line 173 of file Env.h.

◆ QCtr

friend class QCtr
friend

Definition at line 176 of file Env.h.

◆ SOSCtr

friend class SOSCtr
friend

Definition at line 177 of file Env.h.

◆ Var

friend class Var
friend

Definition at line 174 of file Env.h.