ibex::SpaceFactory Class Reference

Space factory. More...

#include <IbexSpace.h>

Inheritance diagram for ibex::SpaceFactory:

ibex::ConstraintSpaceFactory ibex::SystemSpaceFactory

List of all members.

Public Member Functions

 SpaceFactory (const Env &env)
Spacebuild_space (Space *s=NULL) const
const Envget_env () const
 ~SpaceFactory ()
void set_entity (int id_key, EntityType type, const INTERVAL &domain)
void set_entity (int id_key, EntityType type)
void set_entity (const char *name, EntityType type)
void set_entity (const char *name, EntityType type, const INTERVAL &domain)
bool is_set (int id_key) const

Public Attributes

const Envenv


Detailed Description

Space factory.

Author:
Gilles Chabert
Date:
October 2007

Constructor & Destructor Documentation

ibex::SpaceFactory::SpaceFactory ( const Env env  ) 

Create a space factory

ibex::SpaceFactory::~SpaceFactory (  ) 

Delete this instance.


Member Function Documentation

Space * ibex::SpaceFactory::build_space ( Space s = NULL  )  const

Builds the space.

const Env& ibex::SpaceFactory::get_env (  )  const [inline]

Return a reference to the environment.

void ibex::SpaceFactory::set_entity ( int  id_key,
EntityType  type,
const INTERVAL domain 
)

Set the type and domain of an entity from a symbol.

Parameters:
id_key - the symbol number in the environment.
type - the type that must be given to the entity in the space (IBEX_VAR, IBEX_UPR, IBEX_EPR or IBEX_SYB)
domain - the domain that must be given to the entity in the space.

void ibex::SpaceFactory::set_entity ( int  id_key,
EntityType  type 
) [inline]

Set the type of an entity from a symbol.

Parameters:
id_key - the symbol number in the environment.
type - the type that must be given to the entity in the space (IBEX_VAR, IBEX_UPR, IBEX_EPR or IBEX_SYB)

void ibex::SpaceFactory::set_entity ( const char *  name,
EntityType  type 
)

Set the type of an entity from a symbol. This function can be used to set the type of all the components of an array simultaneously. For instance, if x is a 2D array, the following code

 env.set_entity("x",IBEX_VAR);
will set every symbol x[i][j] to a variable in the new space.

Parameters:
name - the symbol corresponding to the entity (must be declared in the environment).
type - the type that must be given to the entity in the space (IBEX_VAR, IBEX_UPR, IBEX_EPR or IBEX_SYB)

Reimplemented in ibex::SystemSpaceFactory.

void ibex::SpaceFactory::set_entity ( const char *  name,
EntityType  type,
const INTERVAL domain 
)

Set the type and domain of an entity from an symbol. This function can be used to set the type of all the components of an array simultaneously (see above).

Parameters:
name - the symbol corresponding to the entity (must be declared in the environment).
type - the type that must be given to the entity in the space (IBEX_VAR, IBEX_UPR, IBEX_EPR or IBEX_SYB)
domain - the domain that must be given to the entity in the space.

bool ibex::SpaceFactory::is_set ( int  id_key  )  const [inline]

Return true if the symbol with number id_key is already set.


Member Data Documentation

Environment.


The documentation for this class was generated from the following files:

Generated on Sun Jun 27 15:52:00 2010 for IBEX by  doxygen 1.5.5