jigcell.compare
Interface IProgrammableDataGenerator

All Superinterfaces:
java.lang.Cloneable, IDataGenerator, IDataSource, IEditableDataGenerator, IReadableDataSource, IWriteableDataSource, java.awt.datatransfer.Transferable
All Known Subinterfaces:
IObjective, IResultantTransform, ITransform, ITransformContainer
All Known Implementing Classes:
BooleanRelationalObjective, BoxTransformContainer, BuddingYeastPhenotypeObjective, BuddingYeastScanTransform, ConstantTransform, DispatchedTransformHelper, DispatchedTransformTemplate, ExtremaTestTransform, FileTransform, GenericPhenotypeObjective, GenericScanTransform, InputTransform, JigCellRunManagerTransform, MethodDispatcherTests.DispatchedTransform, MetricObjective, MinkowskiObjective, Objective, ObjectiveHelper, ObjectiveTemplate, ProgrammableDataGenerator, ReadFromFileTransform, ScriptEvaluationObjective, ScriptEvaluationTransform, SelectColumnsTransform, Transform, TransformContainer, TransformEvaluationTransform, TransformHelper, TransformTemplate, WildtypeScanTransform, WOSSObjective, WriteToFileTransform

public interface IProgrammableDataGenerator
extends IEditableDataGenerator

A data generator that can derive its value from some programmatic evaluation.

Additionally a public static method is required to be implemented:

A single or collection of prototypical generators that can be customized.

This code is licensed under the DARPA BioCOMP Open Source License. See LICENSE for more details.

Author:
Nicholas Allen

Nested Class Summary
 
Nested classes/interfaces inherited from interface jigcell.compare.IDataSource
IDataSource.Option
 
Field Summary
static java.lang.String METHOD_GENERATE
          Name of the static method to be invoked for customizable generators
static java.lang.String OPTION_COMPARE
          The Comparator this generator is acting as a part of
static java.lang.String OPTION_INPUTTYPECHECKER
          Option for a type checker that can validate the input
static java.lang.String OPTION_OUTPUTTYPECHECKER
          Option for a type checker that can validate the output
 
Fields inherited from interface jigcell.compare.IDataGenerator
ATTRIBUTE_COMMENT, ATTRIBUTE_GUID, PROPERTY_GENERATOR_EDIT, RESOURCE_GENERATORS
 
Fields inherited from interface jigcell.compare.IReadableDataSource
OPTION_READDESCRIPTION, OPTION_READICON
 
Fields inherited from interface jigcell.compare.IDataSource
OPTION_NAME
 
Fields inherited from interface jigcell.compare.IWriteableDataSource
OPTION_WRITEDESCRIPTION, OPTION_WRITEICON
 
Method Summary
 void addEvaluationListener(IEvaluationListener listener)
          Adds a listener to this generator.
 IEvaluationCallStack getCallStack()
          The call stack for the current evaluation.
 IDataElement getElement(IEvaluationCallStack callStack)
          A DataElement corresponding to this object.
 EDU.oswego.cs.dl.util.concurrent.Sync getEvaluationLock()
          Lock for preventing concurrent access during evaluation.
 ITypeChecker getInputTypeChecker()
          Type checker that can validate the input to this generator.
 ICustomizableInterface getInterface()
          The customizable interface for this generator.
 ITypeChecker getOutputTypeChecker()
          Type checker that can validate the output from this generator.
 IDataElement peekElement()
          The element for this generator if no one holds a lock and it is available according to isCached.
 void removeEvaluationListener(IEvaluationListener listener)
          Removes a listener from this generator.
 
Methods inherited from interface jigcell.compare.IEditableDataGenerator
clear, setComment, setCopyName, setElement, setName
 
Methods inherited from interface jigcell.compare.IDataGenerator
copy, getAttribute, getComment, getCopiedFrom, getElement, isCached, isCopy, isCopyRelated, setAttribute
 
Methods inherited from interface jigcell.compare.IReadableDataSource
getPredictedContents, getReadDescriptionOption, getReadIconOption, read, setReadDescriptionOption, setReadIconOption
 
Methods inherited from interface jigcell.compare.IDataSource
addOption, clone, configure, getName, getOption, getState, setOption, setState
 
Methods inherited from interface java.awt.datatransfer.Transferable
getTransferData, getTransferDataFlavors, isDataFlavorSupported
 
Methods inherited from interface jigcell.compare.IWriteableDataSource
getPredictedCompatibility, getPredictedCompatibility, getWriteDescriptionOption, getWriteIconOption, setWriteDescriptionOption, setWriteIconOption, write
 

Field Detail

METHOD_GENERATE

static final java.lang.String METHOD_GENERATE
Name of the static method to be invoked for customizable generators

See Also:
Constant Field Values

OPTION_COMPARE

static final java.lang.String OPTION_COMPARE
The Comparator this generator is acting as a part of

See Also:
Constant Field Values

OPTION_INPUTTYPECHECKER

static final java.lang.String OPTION_INPUTTYPECHECKER
Option for a type checker that can validate the input

See Also:
Constant Field Values

OPTION_OUTPUTTYPECHECKER

static final java.lang.String OPTION_OUTPUTTYPECHECKER
Option for a type checker that can validate the output

See Also:
Constant Field Values
Method Detail

addEvaluationListener

void addEvaluationListener(IEvaluationListener listener)
Adds a listener to this generator.

Parameters:
listener - Listener

getCallStack

IEvaluationCallStack getCallStack()
The call stack for the current evaluation. This is only defined while the element is being computed and the evaluation lock is held.


getElement

IDataElement getElement(IEvaluationCallStack callStack)
A DataElement corresponding to this object. This may be a potentially expensive operation if isCached is false.


getEvaluationLock

EDU.oswego.cs.dl.util.concurrent.Sync getEvaluationLock()
Lock for preventing concurrent access during evaluation.


getInputTypeChecker

ITypeChecker getInputTypeChecker()
Type checker that can validate the input to this generator.


getInterface

ICustomizableInterface getInterface()
The customizable interface for this generator.


getOutputTypeChecker

ITypeChecker getOutputTypeChecker()
Type checker that can validate the output from this generator.


peekElement

IDataElement peekElement()
The element for this generator if no one holds a lock and it is available according to isCached. Otherwise, this method returns null.


removeEvaluationListener

void removeEvaluationListener(IEvaluationListener listener)
Removes a listener from this generator.

Parameters:
listener - Listener