public class AnalysisController extends Object
MeasurementController, ResultAnalysers and
the FinalJudge to measure and analyse parametric dependencies.
MeasurementController, only the FinalJudge
or only one ProposedExpressionAnalyser (or none of the previous) running. They
may use parallelisation as they wish but are self-responsible for synchronisation.
ProposedExpressionAnalyser will only be called if its
ProposedExpressionAnalyser.canContribute(de.uka.ipd.sdq.beagle.core.analysis.ReadOnlyProposedExpressionAnalyserBlackboardView) method returns true. The
MeasurementController will only be called if its
canMeasure method returns true.
MeasurementController will be always
be called next if its canMeasure method
returns true.
ProposedExpressionAnalyser whose
canContribute method returns
true will be called.
ProposedExpressionAnalyser can contribute.
MeasurementController,
Blackboard| Constructor and Description |
|---|
AnalysisController(Blackboard blackboard,
Set<MeasurementTool> measurementTools,
Set<MeasurementResultAnalyser> measurementResultAnalysers,
Set<ProposedExpressionAnalyser> proposedExpressionAnalysers)
Creates a controller to analyse all elements written on
blackboard. |
| Modifier and Type | Method and Description |
|---|---|
AnalysisState |
getAnalysisState()
Returns the current state of the analysis.
|
void |
performAnalysis()
Runs the complete analysis, including measurements, result analysis and the final
judging.
|
void |
setAnalysisState(AnalysisState analysisState)
Sets the current state of the analysis to
analysisState. |
public AnalysisController(Blackboard blackboard, Set<MeasurementTool> measurementTools, Set<MeasurementResultAnalyser> measurementResultAnalysers, Set<ProposedExpressionAnalyser> proposedExpressionAnalysers)
blackboard.blackboard - A blackboard having everything to be analysed written on it. Must
not be null.measurementTools - The MeasurementTools to use. Must not be
null and must not contain null.measurementResultAnalysers - The MeasurementResultAnalysers to use.
Must not be null and must not contain null.proposedExpressionAnalysers - The ProposedExpressionAnalysers to use.
Must not be null and must not contain null.public void performAnalysis()
public AnalysisState getAnalysisState()
public void setAnalysisState(AnalysisState analysisState)
analysisState. The analysis must
be started before this method is called. Otherwise an IllegalStateException
will be thrown.analysisState - The state the analysis will be in after this method has been
called.