idol
A C++ Framework for Optimization
Loading...
Searching...
No Matches
idol::Env Class Reference

#include <Env.h>

Inheritance diagram for idol::Env:
Inheritance graph
Collaboration diagram for idol::Env:
Collaboration graph

Public Member Functions

 Env ()=default
 

Friends

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

Detailed 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.

Definition at line 164 of file Env.h.

Constructor & Destructor Documentation

◆ Env()

idol::Env::Env ( )
default

Constructor.

Creates a new optimization environment.

Friends And Related Symbol Documentation

◆ 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.