dlvhex  2.5.0
DumpingEvalGraphBuilder Class Reference

Evaluation Graph builder that dumps its evaluation plan. More...

#include <include/dlvhex2/DumpingEvalGraphBuilder.h>

Inheritance diagram for DumpingEvalGraphBuilder:
Collaboration diagram for DumpingEvalGraphBuilder:

Public Member Functions

 DumpingEvalGraphBuilder (ProgramCtx &ctx, ComponentGraph &cg, EvalGraphT &eg, ASPSolverManager::SoftwareConfigurationPtr externalEvalConfig, const std::string &outputfilename)
 Constructor.
virtual ~DumpingEvalGraphBuilder ()
 Destructor.
virtual EvalUnit createEvalUnit (const std::list< Component > &comps, const std::list< Component > &ccomps)
 This methods modifies the eval graph.

Protected Attributes

std::ofstream output
 Stream where the EvaluationGraph is dumped to.
std::map
< ComponentGraph::Component,
unsigned > 
componentidx
 Assignment of unique indexes to components.

Detailed Description

Evaluation Graph builder that dumps its evaluation plan.

Definition at line 43 of file DumpingEvalGraphBuilder.h.


Constructor & Destructor Documentation

Constructor.

Parameters:
ctxSee EvalGraphBuilder::ctx.
cgSee EvalGraphBuilder::cg.
egEvaluation graph to write the result to.
externalEvalConfigSee ASPSolverManager::SoftwareConfiguration.
outputfilenameName of the file where the evaluation graph is written to.

Definition at line 45 of file DumpingEvalGraphBuilder.cpp.

Destructor.

Definition at line 58 of file DumpingEvalGraphBuilder.cpp.


Member Function Documentation

DumpingEvalGraphBuilder::EvalUnit DumpingEvalGraphBuilder::createEvalUnit ( const std::list< Component > &  comps,
const std::list< Component > &  ccomps 
) [virtual]

This methods modifies the eval graph.

It asserts that all requirements for evaluation units are fulfilled it adds an evaluation unit created from given nodes, including dependencies.

Todo:

add ordered unit dependencies

ComponentRange

Parameters:
compsList of components to directly put into eval unit.
ccompsList of components to copy into eval unit (these copied components may only contain constraints, and these must obey the constraint pushing restrictions (this will be asserted by createEvalUnit)).
Returns:
Evaluation unit.

Reimplemented from EvalGraphBuilder.

Definition at line 64 of file DumpingEvalGraphBuilder.cpp.

References EvalGraphBuilder::cg, EvalGraphBuilder::cgrest, componentidx, EvalGraphBuilder::createEvalUnit(), DBGLOG, DBGLOG_SCOPE, EvalGraphBuilder::getComponentGraphRest(), ComponentGraph::getComponents(), output, and printrange().


Field Documentation

Assignment of unique indexes to components.

Definition at line 50 of file DumpingEvalGraphBuilder.h.

Referenced by createEvalUnit().

std::ofstream DumpingEvalGraphBuilder::output [protected]

Stream where the EvaluationGraph is dumped to.

Definition at line 48 of file DumpingEvalGraphBuilder.h.

Referenced by createEvalUnit().


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