Main Page | Modules | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

YadaRunnableDocument Class Reference

Inheritance diagram for YadaRunnableDocument:

Inheritance graph
[legend]
Collaboration diagram for YadaRunnableDocument:

Collaboration graph
[legend]
List of all members.

Detailed Description

YadaRunnableDocument - abstract document able to launch YadaJobs. This document offers all functionality to launch one or a whole bunch of YadaJobs. Most notably YadaRunner inherits this abstract class and implements the left virtual methods.

Author:
Michael Daum
Id
YadaRunnableDocument.tcl,v 1.17 2004/05/11 14:30:48 ddreyer Exp

Definition at line 22 of file YadaRunnableDocument.tcl.

Public Member Functions

virtual activationHandle ()
 askRunall ()
 backward ()
 breakJob ()
 clear ()
virtual deActivationHandle ()
 displayTitle ()
 forward ()
 fromDOM (domNode node)
 getPersistanceFileName ()
 hasSavedState ()
virtual init ()
 interruptJobs ()
 isModified ()
 killJob ()
 lastChanged ()
 load ()
 markWordgraph (TclString wordgraph)
 print (TclString message)
 reload ()
 resetModified ()
 resortRows ()
 run (YadaExperiment experiment="")
 runall ()
 save ()
 selectExperiment (TclString experimentName="")
 setModified ()
 setToggle (TclString name, TclRef value="")
 sortRows (TclNumber colNo, TclList args)
 step (TclString wordgraph="")
 termJob ()
 toDOM ()
 unbreakJob ()
 unmarkWordgraph (TclString wordgraph)
 YadaRunnableDocument (TclList args)

Static Public Member Functions

 newDocument (TclString className, TclString name)

Public Attributes

TclString hasView = "true"
TclString name = ""
YadaDocument nextDocument
YadaDocument prevDocument
TclString selectedExperiment = ""

Protected Member Functions

 _analyseDocument (DomDocument document, TclExperiment experiment)
 _clearRow ()
 _computeSpeedup (TclNumber time1, TclNumber time2)
 _computeStatistics ()
 _deleteData ()
 _getActiveWordgraphs ()
 _getDoneWork ()
 _getRowOfWordgraph (TclString wordgraph)
 _getSelectedExperiment ()
 _getSelectedWork ()
 _getTypeOfColumn (TclNumber colNo)
 _getUndoneWork ()
 _getWordgraphs ()
 _getXMLFileName (TclString wordgraph)
 _insertData (TclString wordgraph, TclList args)
 _jobConsumer (YadaJob job)
 _registerJob (YadaJob job)
 _resetDataOf (TclList wordgraphs)
 _showContextMenu (TclNumber x, TclNumber y, TclNumber xroot, TclNumber yroot)
 _traceProcess ()
 _unregisterJob (YadaJob job)
 _viewLogfile (TclList experiments="")
 _viewXmlfile (TclList experiments="")
 askNewLoad ()
 loadUpdatedWordgraphs (TclList args)
 updateModificationTime ()

Protected Attributes

TclArray _analyseResult
TclArray _doneWordgraph
TclNumber _gotBreak = 0
TclNumber _isInitialized = 0
TclNumber _isRunning = 0
TclNumber _lastModificationTime = 0
TclNumber _modified = 0
TclString _selectedContextWordgraph = ""

Private Member Functions

 _breakButtonAction ()
 _computeETA (YadaMachine machine, TclNumber noJobs)
 _escapeCommand ()
 _leaveTableCommand ()
 _returnCommand ()
 _runButtonAction ()

Private Attributes

TclNumber _clearLogFlag = 0
TclNumber _consoleFlag = 1
TclArray _currentJobs
TclNumber _followDataFlag = 1
TclNumber _lastSorting = 0
TclString _orientFlag = "horizontal"
TclString _progressProcess = ""
TclNumber _tableFlag = 1
TclNumber _timer = 0


Constructor & Destructor Documentation

YadaRunnableDocument::YadaRunnableDocument TclList  args  ) 
 

constructor

Definition at line 165 of file YadaRunnableDocument.tcl.


Member Function Documentation

YadaRunnableDocument::_analyseDocument DomDocument  document,
TclExperiment  experiment
[protected]
 

analyse a given DomDocument produced with the help of a YadaExperiment. This method extracts all the information that we normaly are interested in in runnable documents. Classes (like YadaGlsStats) overload this function and extract extra information not analysed here. So as a sideeffect the resulting data is stored into the protected variable _analyseResult as documented above. In some cases where the DomDocument is illformed we still try to extract as many information as possible. In case of any error you will notice that by a return code of 0. Error messages are give by print(). The experiment is consulted especialy when no evaluation data is contained in the document in order to get the number of tries in the statistics correctly an which is only provided by the used CDG grammar, especialy the contained annotation of the lattice.

Parameters:
document the DomDocument resulting from a dom parse
experiment the experiment with which we produced this document
Definition at line 1051 of file YadaRunnableDocument.tcl.

YadaRunnableDocument::_breakButtonAction  )  [private]
 

_breakButtonAction

Definition at line 482 of file YadaRunnableDocument.tcl.

YadaRunnableDocument::_clearRow  )  [protected]
 

_clearRow

Definition at line 1641 of file YadaRunnableDocument.tcl.

YadaRunnableDocument::_computeETA YadaMachine  machine,
TclNumber  noJobs
[private]
 

compute the estimated time of arrival. This method tries to compute the left duration of given number of jobs that might run on a YadaMachine. This is done by querying the time-per-job statistics via YadaMachine::getTimePerJob(). This figure is being tracked by the YadaMachine itself and might change the more YadaJobs are executed by that machine.

Parameters:
machine the YadaMachine which we are interested in
noJobs the number of jobs that we still need to do
Returns:
the estimation
Definition at line 1026 of file YadaRunnableDocument.tcl.

YadaRunnableDocument::_computeSpeedup TclNumber  time1,
TclNumber  time2
[protected]
 

_computeSpeedup

Definition at line 718 of file YadaRunnableDocument.tcl.

YadaRunnableDocument::_computeStatistics  )  [protected]
 

_computeStatistics

Reimplemented in YadaOneOnOne, YadaDifference, YadaGlsStats, and YadaRunner.

Definition at line 732 of file YadaRunnableDocument.tcl.

YadaRunnableDocument::_deleteData  )  [protected]
 

_deleteData

Definition at line 1717 of file YadaRunnableDocument.tcl.

YadaRunnableDocument::_escapeCommand  )  [private]
 

_escapeCommand

Definition at line 641 of file YadaRunnableDocument.tcl.

YadaRunnableDocument::_getActiveWordgraphs  )  [protected]
 

_getActiveWordgraphs

Definition at line 960 of file YadaRunnableDocument.tcl.

YadaRunnableDocument::_getDoneWork  )  [protected]
 

_getDoneWork

Reimplemented in YadaOneOnOne, and YadaDifference.

Definition at line 819 of file YadaRunnableDocument.tcl.

YadaRunnableDocument::_getRowOfWordgraph TclString  wordgraph  )  [protected]
 

_getRowOfWordgraph

Definition at line 449 of file YadaRunnableDocument.tcl.

YadaRunnableDocument::_getSelectedExperiment  )  [protected]
 

_getSelectedExperiment

Definition at line 784 of file YadaRunnableDocument.tcl.

YadaRunnableDocument::_getSelectedWork  )  [protected]
 

_getSelectedWork

Definition at line 795 of file YadaRunnableDocument.tcl.

YadaRunnableDocument::_getUndoneWork  )  [protected]
 

_getUndoneWork

Reimplemented in YadaOneOnOne, and YadaDifference.

Definition at line 835 of file YadaRunnableDocument.tcl.

YadaRunnableDocument::_getWordgraphs  )  [protected]
 

_getWordgraphs: get all wordgraphs of a experiments grammar

handle the case that only the 'data model' of the document is being used

Reimplemented in YadaOneOnOne, and YadaDifference.

Definition at line 764 of file YadaRunnableDocument.tcl.

YadaRunnableDocument::_getXMLFileName TclString  wordgraph  )  [protected]
 

Returns wordgraph file name for selected experiment.

Definition at line 1845 of file YadaRunnableDocument.tcl.

Referenced by _resetDataOf().

YadaRunnableDocument::_insertData TclString  wordgraph,
TclList  args
[protected]
 

_insertData

Definition at line 977 of file YadaRunnableDocument.tcl.

YadaRunnableDocument::_jobConsumer YadaJob  job  )  [protected]
 

_jobConsumer

Reimplemented in YadaOneOnOne, and YadaDifference.

Definition at line 1378 of file YadaRunnableDocument.tcl.

YadaRunnableDocument::_leaveTableCommand  )  [private]
 

_leaveTableCommand

Definition at line 656 of file YadaRunnableDocument.tcl.

YadaRunnableDocument::_registerJob YadaJob  job  )  [protected]
 

_registerJob

Definition at line 1430 of file YadaRunnableDocument.tcl.

YadaRunnableDocument::_resetDataOf TclList  wordgraphs  )  [protected]
 

_resetDataOf

Reimplemented in YadaOneOnOne, YadaDifference, YadaGlsStats, and YadaRunner.

Definition at line 1835 of file YadaRunnableDocument.tcl.

References _getXMLFileName().

YadaRunnableDocument::_returnCommand  )  [private]
 

_returnCommand

Definition at line 670 of file YadaRunnableDocument.tcl.

YadaRunnableDocument::_runButtonAction  )  [private]
 

_runButtonAction

Definition at line 464 of file YadaRunnableDocument.tcl.

YadaRunnableDocument::_showContextMenu TclNumber  x,
TclNumber  y,
TclNumber  xroot,
TclNumber  yroot
[protected]
 

_showContextMenu

Definition at line 1538 of file YadaRunnableDocument.tcl.

YadaRunnableDocument::_traceProcess  )  [protected]
 

_traceProcess

Reimplemented in YadaOneOnOne, and YadaDifference.

Definition at line 1655 of file YadaRunnableDocument.tcl.

YadaRunnableDocument::_unregisterJob YadaJob  job  )  [protected]
 

_unregisterJob

Definition at line 1438 of file YadaRunnableDocument.tcl.

YadaRunnableDocument::_viewLogfile TclList  experiments = ""  )  [protected]
 

display logfile of a experiment. This method reads the logfiles of one or more experiments given a selected wordgraph in _selectedContextWordgraph.

Parameters:
experiments the optional list of experiments that we want to display. if the list is empty the we fetch the currently selected experiments via _getSelectedExperiment().
Definition at line 1554 of file YadaRunnableDocument.tcl.

YadaRunnableDocument::_viewXmlfile TclList  experiments = ""  )  [protected]
 

_viewXmlfile

Definition at line 1597 of file YadaRunnableDocument.tcl.

YadaDocument::activationHandle  )  [virtual, inherited]
 

activationHandle

Reimplemented from YadaPlainDocument.

Reimplemented in YadaOneOnOne, YadaConfig, YadaDifference, YadaGlsStats, YadaRanking, and YadaRunner.

Definition at line 280 of file YadaDocument.tcl.

YadaDocument::askNewLoad  )  [protected, inherited]
 

Pops up a yes/no message dialog and returns the result (i.e. which button has been pressed) Definition at line 330 of file YadaDocument.tcl.

YadaRunnableDocument::askRunall  ) 
 

askRunall

Definition at line 1456 of file YadaRunnableDocument.tcl.

YadaDocument::backward  )  [inherited]
 

backward

Definition at line 236 of file YadaDocument.tcl.

References YadaDocument::forward().

YadaRunnableDocument::breakJob  ) 
 

breakJob

Definition at line 493 of file YadaRunnableDocument.tcl.

References printMessage().

YadaRunnableDocument::clear  ) 
 

clear

Reimplemented in YadaOneOnOne, YadaDifference, YadaGlsStats, and YadaRunner.

Definition at line 581 of file YadaRunnableDocument.tcl.

YadaPlainDocument::deActivationHandle  )  [virtual, inherited]
 

deActivationHandle

Reimplemented in YadaConfig.

Definition at line 91 of file YadaPlainDocument.tcl.

References YadaPlainDocument::init().

Referenced by YadaPlainDocument::activationHandle().

YadaPlainDocument::displayTitle  )  [inherited]
 

Displays title in main window (reflecting modification state of document).

Reimplemented in YadaConfigDocument, YadaGenerals, YadaRanking, and YadaRunner.

Definition at line 207 of file YadaPlainDocument.tcl.

YadaDocument::forward  )  [inherited]
 

forward

Definition at line 243 of file YadaDocument.tcl.

References YadaDocument::prevDocument.

Referenced by YadaDocument::backward().

YadaPlainDocument::hasSavedState  )  [inherited]
 

Predicate returning 1, if file containing persistant state of YadaGrammar exists, otherwise 0 Definition at line 192 of file YadaPlainDocument.tcl.

Referenced by YadaPlainDocument::resetModified().

YadaRunnableDocument::init  )  [virtual]
 

init

Reimplemented from YadaPlainDocument.

Definition at line 689 of file YadaRunnableDocument.tcl.

YadaRunnableDocument::interruptJobs  ) 
 

interruptJobs

Definition at line 519 of file YadaRunnableDocument.tcl.

YadaPlainDocument::isModified  )  [inherited]
 

Predicate returning 1, if configuration data has changed, 0 otherwise.

Definition at line 168 of file YadaPlainDocument.tcl.

References YadaPlainDocument::setModified().

YadaRunnableDocument::killJob  ) 
 

killJob

Definition at line 551 of file YadaRunnableDocument.tcl.

YadaPlainDocument::lastChanged  )  [inherited]
 

Returns time of last update to document XML file or an empty string, if there is no such file Definition at line 219 of file YadaPlainDocument.tcl.

YadaPlainDocument::load  )  [inherited]
 

Loads current document from file (file name depends on document name).

reset in case there is some value left from last load operation;

Modified state may be changed by overridden fromDOM methods

Reimplemented in YadaConfig, YadaExperiments, YadaGrammars, YadaMachines, and YadaRunner.

Definition at line 113 of file YadaPlainDocument.tcl.

Referenced by YadaPlainDocument::setToggle().

YadaRunnableDocument::loadUpdatedWordgraphs TclList  args  )  [protected]
 

loadUpdatedWordgraphs

Reimplemented from YadaDocument.

Definition at line 903 of file YadaRunnableDocument.tcl.

YadaRunnableDocument::markWordgraph TclString  wordgraph  ) 
 

markWordgraph

Definition at line 863 of file YadaRunnableDocument.tcl.

YadaDocument::newDocument TclString  className,
TclString  name
[static, inherited]
 

newDocument

Definition at line 319 of file YadaDocument.tcl.

YadaRunnableDocument::print TclString  message  ) 
 

print

Definition at line 895 of file YadaRunnableDocument.tcl.

YadaRunnableDocument::reload  ) 
 

reload

Reimplemented in YadaRunner.

Definition at line 567 of file YadaRunnableDocument.tcl.

YadaPlainDocument::resetModified  )  [inherited]
 

Removes modification mark.

Definition at line 183 of file YadaPlainDocument.tcl.

References YadaPlainDocument::hasSavedState().

Referenced by YadaPlainDocument::setModified().

YadaRunnableDocument::resortRows  ) 
 

resortRows

Definition at line 999 of file YadaRunnableDocument.tcl.

References sortRows().

YadaRunnableDocument::run YadaExperiment  experiment = ""  ) 
 

run

Definition at line 1206 of file YadaRunnableDocument.tcl.

YadaRunnableDocument::runall  ) 
 

runall

Reimplemented in YadaOneOnOne, and YadaDifference.

Definition at line 1260 of file YadaRunnableDocument.tcl.

YadaRunnableDocument::save  ) 
 

Overridden method.

Reimplemented from YadaPlainDocument.

Definition at line 1858 of file YadaRunnableDocument.tcl.

YadaRunnableDocument::selectExperiment TclString  experimentName = ""  ) 
 

selectExperiment

Set initial modification time to react to concurrent file changes Definition at line 1502 of file YadaRunnableDocument.tcl.

YadaPlainDocument::setModified  )  [inherited]
 

Marks item as modified.

Definition at line 175 of file YadaPlainDocument.tcl.

References YadaPlainDocument::resetModified().

Referenced by YadaPlainDocument::isModified().

YadaRunnableDocument::setToggle TclString  name,
TclRef  value = ""
 

setToggle

Reimplemented from YadaDocument.

Definition at line 1770 of file YadaRunnableDocument.tcl.

YadaRunnableDocument::sortRows TclNumber  colNo,
TclList  args
 

sortRows

Reimplemented in YadaGlsStats.

Definition at line 1008 of file YadaRunnableDocument.tcl.

Referenced by resortRows().

YadaRunnableDocument::step TclString  wordgraph = ""  ) 
 

step

Reimplemented in YadaOneOnOne, and YadaDifference.

Definition at line 1149 of file YadaRunnableDocument.tcl.

YadaRunnableDocument::termJob  ) 
 

termJob

Definition at line 535 of file YadaRunnableDocument.tcl.

YadaRunnableDocument::unbreakJob  ) 
 

unbreakJob

Definition at line 633 of file YadaRunnableDocument.tcl.

YadaRunnableDocument::unmarkWordgraph TclString  wordgraph  ) 
 

unmarkWordgraph

Definition at line 850 of file YadaRunnableDocument.tcl.

YadaPlainDocument::updateModificationTime  )  [protected, inherited]
 

Synchronizes internal modification attribute with modification time of document's XML file Definition at line 234 of file YadaPlainDocument.tcl.


Member Data Documentation

TclArray YadaRunnableDocument::_analyseResult [protected]
 

results of _analyseDocument(). This variable is modified by _analyseDocument() in a sideeffect. Outside this method we only read _analyseResult. The filled values are:

  • wordgraph: the name of the wordgraph in the DomDocument
  • noValues: the number of levelvalues in a computed constraintnet
  • score: the score of a found parse
  • totalTime: the total amount of time needed to terminate the solution method
  • solutionTime: the time to find the parse
  • softTime: the time to find the first parse without any hard violations
  • tries: the number of tried items in the solution parse
  • structHits: the number of structural correct items in the solution parse
  • labelledHits: the number of structural correct and correctly labelled items
  • lexicalHits: the number of structural, labelled and lexically correct items
  • strictHits: the number of identical dependency edges
Definition at line 52 of file YadaRunnableDocument.tcl.

TclNumber YadaRunnableDocument::_clearLogFlag = 0 [private]
 

flag indicating whether we clear the log window on each new computation.

Definition at line 84 of file YadaRunnableDocument.tcl.

TclNumber YadaRunnableDocument::_consoleFlag = 1 [private]
 

flag indicating whether we display the log window

Definition at line 90 of file YadaRunnableDocument.tcl.

TclArray YadaRunnableDocument::_currentJobs [private]
 

hash of registered YadaJobs. This structure hashes a YadaExperiment to all YadaJobs that have been constructed for it and therefor holds all jobs scheduled by this document.

See also:
_registerJob().
Definition at line 67 of file YadaRunnableDocument.tcl.

TclArray YadaRunnableDocument::_doneWordgraph [protected]
 

hash mapping wordgraph ids to 0 or 1. This indicates whether a wordgraph has been computed or not. Definition at line 60 of file YadaRunnableDocument.tcl.

TclNumber YadaRunnableDocument::_followDataFlag = 1 [private]
 

flag indicating whether the display should focus on new data.

Definition at line 73 of file YadaRunnableDocument.tcl.

TclNumber YadaRunnableDocument::_gotBreak = 0 [protected]
 

flag to indicate a received break signal

Definition at line 32 of file YadaRunnableDocument.tcl.

TclNumber YadaPlainDocument::_isInitialized = 0 [protected, inherited]
 

flag indicating initialization. Possible falues are 0 and 1. init() sets this to 1 when it is called in the init chain calls of inheriting classes, i.e. YadaConfigDocument::init() or YadaRunnableDocument::init(). Definition at line 36 of file YadaPlainDocument.tcl.

TclNumber YadaRunnableDocument::_isRunning = 0 [protected]
 

flag to indicate that the document is currently busy

Definition at line 35 of file YadaRunnableDocument.tcl.

TclNumber YadaPlainDocument::_lastModificationTime = 0 [protected, inherited]
 

Denotes time of most recent modification of document's XML file CAUSED by this object. This allows recognizing cases where a second object modifies the same file concurrently, in which case the need may arise to synchronize the object with the new file contents. Definition at line 44 of file YadaPlainDocument.tcl.

TclNumber YadaRunnableDocument::_lastSorting = 0 [private]
 

current sorting state. This variable stores the column number allong which the table is sorted. Definition at line 77 of file YadaRunnableDocument.tcl.

TclString YadaRunnableDocument::_orientFlag = "horizontal" [private]
 

flag indicating the orientation of the splitted window. Possible values are horizontal and vertical Definition at line 94 of file YadaRunnableDocument.tcl.

TclString YadaRunnableDocument::_progressProcess = "" [private]
 

traced process. This variable stores the YadaProcess that we currently trace. Definition at line 81 of file YadaRunnableDocument.tcl.

TclString YadaRunnableDocument::_selectedContextWordgraph = "" [protected]
 

the wordgraph selected by a right mouse click on the table.

Definition at line 56 of file YadaRunnableDocument.tcl.

TclNumber YadaRunnableDocument::_tableFlag = 1 [private]
 

flag indicating whether we display the table

Definition at line 87 of file YadaRunnableDocument.tcl.

TclNumber YadaRunnableDocument::_timer = 0 [private]
 

profiler for job execution time.

Definition at line 70 of file YadaRunnableDocument.tcl.

TclString YadaPlainDocument::hasView = "true" [inherited]
 

flag indicating whether this object functions as combined model-view object (value "true"), or as a pure model object (value "false": has to be set explicitly when instantiating object) Definition at line 29 of file YadaPlainDocument.tcl.

TclString YadaPlainDocument::name = "" [inherited]
 

name of the document

Definition at line 25 of file YadaPlainDocument.tcl.

YadaDocument::nextDocument [inherited]
 

link to the next YadaDocument registered to YadaMain

Definition at line 265 of file YadaDocument.tcl.

YadaDocument::prevDocument [inherited]
 

link to the previous YadaDocument registered to YadaMain

Definition at line 250 of file YadaDocument.tcl.

Referenced by YadaDocument::forward().

TclString YadaRunnableDocument::selectedExperiment = ""
 

Needed for instantiations without view.

Definition at line 28 of file YadaRunnableDocument.tcl.


The documentation for this class was generated from the following file:
YADA 2.0-alpha (20 Oct 2004)