dlvhex  2.5.0
ModelGraph< EvalGraphT, ModelPropertyBaseT, ModelDepPropertyBaseT >::EvalUnitModels Struct Reference

Stores the models for one EvalUnit. More...

#include <include/dlvhex2/ModelGraph.h>

Public Member Functions

 EvalUnitModels ()
 Constructor.
 EvalUnitModels (const EvalUnitModels &eum)
 Constructor.
 ~EvalUnitModels ()
ModelListgetModels (ModelType t)
 Retrieves all models of a given type.
const ModelListgetModels (ModelType t) const
 Retrieves all models of a given type.
void reallocate ()
 Internal reallocation of data structures according to current number of models.

Protected Attributes

boost::shared_ptr< std::vector
< ModelList > > 
models
 For each type of model we have a model list.

Detailed Description

template<typename EvalGraphT, typename ModelPropertyBaseT = none_t, typename ModelDepPropertyBaseT = none_t>
struct ModelGraph< EvalGraphT, ModelPropertyBaseT, ModelDepPropertyBaseT >::EvalUnitModels

Stores the models for one EvalUnit.

Definition at line 209 of file ModelGraph.h.


Constructor & Destructor Documentation

template<typename EvalGraphT, typename ModelPropertyBaseT = none_t, typename ModelDepPropertyBaseT = none_t>
ModelGraph< EvalGraphT, ModelPropertyBaseT, ModelDepPropertyBaseT >::EvalUnitModels::EvalUnitModels ( ) [inline]

Constructor.

Definition at line 220 of file ModelGraph.h.

References DBGLOG.

template<typename EvalGraphT, typename ModelPropertyBaseT = none_t, typename ModelDepPropertyBaseT = none_t>
ModelGraph< EvalGraphT, ModelPropertyBaseT, ModelDepPropertyBaseT >::EvalUnitModels::EvalUnitModels ( const EvalUnitModels eum) [inline]

Constructor.

Parameters:
eumModels of the unit.

Definition at line 224 of file ModelGraph.h.

References DBGLOG.

template<typename EvalGraphT, typename ModelPropertyBaseT = none_t, typename ModelDepPropertyBaseT = none_t>
ModelGraph< EvalGraphT, ModelPropertyBaseT, ModelDepPropertyBaseT >::EvalUnitModels::~EvalUnitModels ( ) [inline]

Definition at line 226 of file ModelGraph.h.

References DBGLOG.


Member Function Documentation

template<typename EvalGraphT, typename ModelPropertyBaseT = none_t, typename ModelDepPropertyBaseT = none_t>
ModelList& ModelGraph< EvalGraphT, ModelPropertyBaseT, ModelDepPropertyBaseT >::EvalUnitModels::getModels ( ModelType  t) [inline]

Retrieves all models of a given type.

Parameters:
tModelType.
Returns:
All models of type t.

Definition at line 231 of file ModelGraph.h.

References ModelGraph< EvalGraphT, ModelPropertyBaseT, ModelDepPropertyBaseT >::EvalUnitModels::models.

template<typename EvalGraphT, typename ModelPropertyBaseT = none_t, typename ModelDepPropertyBaseT = none_t>
const ModelList& ModelGraph< EvalGraphT, ModelPropertyBaseT, ModelDepPropertyBaseT >::EvalUnitModels::getModels ( ModelType  t) const [inline]

Retrieves all models of a given type.

Parameters:
tModelType.
Returns:
All models of type t.

Definition at line 236 of file ModelGraph.h.

References ModelGraph< EvalGraphT, ModelPropertyBaseT, ModelDepPropertyBaseT >::EvalUnitModels::models.

template<typename EvalGraphT, typename ModelPropertyBaseT = none_t, typename ModelDepPropertyBaseT = none_t>
void ModelGraph< EvalGraphT, ModelPropertyBaseT, ModelDepPropertyBaseT >::EvalUnitModels::reallocate ( ) [inline]

Internal reallocation of data structures according to current number of models.

Definition at line 239 of file ModelGraph.h.

References ModelGraph< EvalGraphT, ModelPropertyBaseT, ModelDepPropertyBaseT >::EvalUnitModels::models.


Field Documentation

template<typename EvalGraphT, typename ModelPropertyBaseT = none_t, typename ModelDepPropertyBaseT = none_t>
boost::shared_ptr< std::vector<ModelList> > ModelGraph< EvalGraphT, ModelPropertyBaseT, ModelDepPropertyBaseT >::EvalUnitModels::models [protected]

For each type of model we have a model list.

We need to use a pointer here, because otherwise resizing the EvalUnitModelsPropertyMap will invalidate all iterators to the list). This additinoally makes resizing the property map cheaper.

Definition at line 217 of file ModelGraph.h.

Referenced by ModelGraph< EvalGraphT, ModelPropertyBaseT, ModelDepPropertyBaseT >::EvalUnitModels::getModels(), and ModelGraph< EvalGraphT, ModelPropertyBaseT, ModelDepPropertyBaseT >::EvalUnitModels::reallocate().


The documentation for this struct was generated from the following file: