|
|
|||||||||||||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||||||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectde.lmu.ifi.dbs.elki.logging.AbstractLoggable
de.lmu.ifi.dbs.elki.algorithm.AbstractAlgorithm<O,R>
O
- the type of DatabaseObjects handled by this AlgorithmR
- the type of result to retrieve from this Algorithmpublic abstract class AbstractAlgorithm<O extends DatabaseObject,R extends Result>
AbstractAlgorithm sets the values for flags verbose and time.
This class serves also as a model of implementing an algorithm within this framework. Any Algorithm that makes use of these flags may extend this class.
Field Summary | |
---|---|
private boolean |
time
Holds the value of TIME_FLAG . |
private Flag |
TIME_FLAG
Flag to request output of performance time. |
private boolean |
verbose
Holds the value of VERBOSE_FLAG . |
private Flag |
VERBOSE_FLAG
Flag to allow verbose messages while performing the algorithm. |
Fields inherited from class de.lmu.ifi.dbs.elki.logging.AbstractLoggable |
---|
debug, logger |
Constructor Summary | |
---|---|
protected |
AbstractAlgorithm(Parameterization config)
Constructor, adhering to Parameterizable |
Method Summary | |
---|---|
boolean |
isTime()
Returns whether the performance time of the algorithm should be assessed. |
boolean |
isVerbose()
Returns whether verbose messages should be printed while executing the algorithm. |
R |
run(Database<O> database)
Calls the runInTime()-method of extending classes. |
protected abstract R |
runInTime(Database<O> database)
The run method encapsulated in measure of runtime. |
void |
setTime(boolean time)
Sets whether whether the time should be assessed while executing the algorithm. |
void |
setVerbose(boolean verbose)
Sets whether verbose messages should be printed while executing the algorithm. |
Methods inherited from class de.lmu.ifi.dbs.elki.logging.AbstractLoggable |
---|
debugFine, debugFiner, debugFinest, exception, progress, verbose, warning |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
private final Flag VERBOSE_FLAG
Key: -verbose
private boolean verbose
VERBOSE_FLAG
.
private final Flag TIME_FLAG
Key: -time
private boolean time
TIME_FLAG
.
Constructor Detail |
---|
protected AbstractAlgorithm(Parameterization config)
Parameterizable
config
- ParameterizationMethod Detail |
---|
public boolean isTime()
public boolean isVerbose()
public void setVerbose(boolean verbose)
Algorithm
setVerbose
in interface Algorithm<O extends DatabaseObject,R extends Result>
verbose
- the flag to allow verbose messages while performing the
algorithmpublic void setTime(boolean time)
Algorithm
setTime
in interface Algorithm<O extends DatabaseObject,R extends Result>
time
- the flag to request output of performance timepublic final R run(Database<O> database) throws IllegalStateException
run
in interface Algorithm<O extends DatabaseObject,R extends Result>
database
- the database to run the algorithm on
IllegalStateException
- if the algorithm has not been initialized
properly (e.g. the setParameters(String[]) method has been failed
to be called).protected abstract R runInTime(Database<O> database) throws IllegalStateException
database
- the database to run the algorithm on
IllegalStateException
- if the algorithm has not been initialized
properly (e.g. the setParameters(String[]) method has been failed
to be called).
|
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |