com.sun.electric.tool.drc
Class MTDRCTool
java.lang.Object
com.sun.electric.tool.Job
com.sun.electric.tool.MultiTaskJob<Layer,MTDRCTool.MTDRCResult,MTDRCTool.MTDRCResult>
com.sun.electric.tool.drc.MTDRCTool
- All Implemented Interfaces:
- java.io.Serializable
- Direct Known Subclasses:
- MTDRCAreaTool, MTDRCLayoutTool
public abstract class MTDRCTool
- extends MultiTaskJob<Layer,MTDRCTool.MTDRCResult,MTDRCTool.MTDRCResult>
User: gg151869
Date: Dec 12, 2007
- See Also:
- Serialized Form
Methods inherited from class com.sun.electric.tool.Job |
abort, acquireExamineLock, checkAbort, fieldVariableChanged, getAllJobs, getDatabase, getDebug, getDeleteWhenDone, getDisplay, getExtendedUserInterface, getInfo, getNumThreads, getRunMode, getRunningJob, getScheduledToAbort, getStatus, getUserInterface, initJobManager, invokeExamineLater, isFinished, releaseExamineLock, remove, setDebug, setProgress, setReportExecutionFlag, setThreadMode, startJob, startJob, startJobOnMyResult, terminateFail, terminateIt, terminateOK, threadDatabase, toString, updateIncrementalDRCErrors, updateNetworkErrors, wantUpdateGui |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
topCell
protected Cell topCell
globalStartTime
protected long globalStartTime
cellLayersCon
protected com.sun.electric.tool.drc.CellLayersContainer cellLayersCon
printLog
protected final boolean printLog
rules
protected DRCRules rules
MTDRCTool
public MTDRCTool(java.lang.String jobName,
Cell c,
Consumer<MTDRCTool.MTDRCResult> consumer)
prepareTasks
public void prepareTasks()
- Description copied from class:
MultiTaskJob
- This abstract method split large computation into smaller task.
Smaller tasks are identified by TaskKey class.
Each task is scheduled by startTask method.
- Specified by:
prepareTasks
in class MultiTaskJob<Layer,MTDRCTool.MTDRCResult,MTDRCTool.MTDRCResult>
mergeTaskResults
public MTDRCTool.MTDRCResult mergeTaskResults(java.util.Map<Layer,MTDRCTool.MTDRCResult> taskResults)
- Description copied from class:
MultiTaskJob
- This abtract method combines task results into final result.
- Specified by:
mergeTaskResults
in class MultiTaskJob<Layer,MTDRCTool.MTDRCResult,MTDRCTool.MTDRCResult>
- Parameters:
taskResults
- map which contains result of each completed task.
- Returns:
- final result which is obtained by merging task results.
runTask
public MTDRCTool.MTDRCResult runTask(Layer taskKey)
- Description copied from class:
MultiTaskJob
- This abtract methods performs computation of each task.
- Specified by:
runTask
in class MultiTaskJob<Layer,MTDRCTool.MTDRCResult,MTDRCTool.MTDRCResult>
- Parameters:
taskKey
- task key which identifies the task
- Returns:
- result of task computation