|
| SynchronousProcessor (int in_arity, int out_arity) |
| Initializes a processor. More...
|
|
synchronized Pushable | getPushableInput (int index) |
|
synchronized Pullable | getPullableOutput (int index) |
|
final SynchronousProcessor | setEventTracker (EventTracker tracker) |
|
| Processor (int in_arity, int out_arity) |
| Initializes a processor. More...
|
|
final synchronized Object | getContext (String key) |
| Retrieves an object from the processor's context. More...
|
|
synchronized Context | getContext () |
| Gets the context associated to this object. More...
|
|
synchronized void | setContext (String key, Object value) |
| Adds an object to the object's context. More...
|
|
synchronized void | setContext (Context context) |
| Adds a complete context to this object. More...
|
|
final int | hashCode () |
| Implementation of hashCode() specific to processors. More...
|
|
final boolean | equals (Object o) |
| Implementation of equals() specific to processors. More...
|
|
final int | getId () |
| Fetches the processor instance's unique ID. More...
|
|
synchronized void | reset () |
| Resets the processor. More...
|
|
abstract Pushable | getPushableInput (int index) |
| Returns the Pushable corresponding to the processor's i-th input trace. More...
|
|
final synchronized Pushable | getPushableInput () |
| Returns the Pushable corresponding to the processor's first input trace. More...
|
|
abstract Pullable | getPullableOutput (int index) |
| Returns the Pullable corresponding to the processor's i-th output trace. More...
|
|
final synchronized Pullable | getPullableOutput () |
| Returns the Pullable corresponding to the processor's first output trace. More...
|
|
synchronized void | setPullableInput (int i, Pullable p) |
| Assigns a Pullable to the processor's i-th input. More...
|
|
synchronized Pullable | getPullableInput (int i) |
| Returns the Pullable corresponding to the processor's i-th input. More...
|
|
synchronized void | setPushableOutput (int i, Pushable p) |
| Assigns a Pushable to the processor's i-th output. More...
|
|
synchronized Pushable | getPushableOutput (int i) |
| Retrieves the Pushable associated to the processor's i-th output. More...
|
|
final int | getInputArity () |
| Returns the processor's input arity. More...
|
|
final int | getOutputArity () |
| Returns the processor's output arity. More...
|
|
void | duplicateInto (Processor p) |
| Copies the contents and state of the current processor into another. More...
|
|
final Set< Class<?> > | getInputType (int index) |
| Gets the type of events the processor accepts for its i-th input trace. More...
|
|
void | getInputTypesFor (Set< Class<?>> classes, int index) |
| Populates the set of classes accepted by the processor for its i-th input. More...
|
|
Class<?> | getOutputType (int index) |
| Returns the type of the events produced by the processor for its i-th output. More...
|
|
void | start () |
| Starts the processor. More...
|
|
void | stop () |
| Stops the processor. More...
|
|
final EventTracker | getEventTracker () |
| Gets the instance of event tracker associated to this processor. More...
|
|
Processor | setEventTracker (EventTracker tracker) |
| Associates an event tracker to this processor. More...
|
|
void | associateToInput (int in_stream_index, int in_stream_pos, int out_stream_index, int out_stream_pos) |
| Associates an input event to an output event. More...
|
|
void | associateTo (NodeFunction f, int out_stream_index, int out_stream_pos) |
| Associates a node function to a particular event of processor's output stream. More...
|
|
void | associateToOutput (int in_stream_index, int in_stream_pos, int out_stream_index, int out_stream_pos) |
| Associates an input event to an output event. More...
|
|
final int | getInputCount () |
| Gets the number of event fronts received so far by this processor. More...
|
|
final int | getOutputCount () |
| Gets the number of event fronts produced so far by this processor. More...
|
|
final Object | print (ObjectPrinter<?> printer) throws ProcessorException |
| Prints the contents of this processor into an object printer. More...
|
|
final Processor | read (ObjectReader<?> reader, Object o) throws ProcessorException |
| Reads the content of a processor from a serialized object. More...
|
|
final Processor | duplicate () |
| Duplicates an object and sets it to its initial state. More...
|
|
void | copyInputQueue (int index, Collection< Object > to) |
| Copies the content of one of the processor's input queue to a collection. More...
|
|
void | copyOutputQueue (int index, Collection< Object > to) |
| Copies the content of one of the processor's output queue to a collection. More...
|
|
abstract Processor | duplicate (boolean with_state) |
| Duplicates an object. More...
|
|
Processor | or (Processor p) |
| Connects the first output pipe of this processor to the first input pipe of another processor. More...
|
|
Processor | or (Pushable p) |
| Connects the output at index 0 of the current processor to the input of another processor. More...
|
|
Pushable | getAt (int index) |
| Gets the Pushable object corresponding to the processor's input pipe for a given index. More...
|
|
|
static boolean | allNull (Object[] v) |
| Checks if all objects in the array are null. More...
|
|
static Queue< Object[]> | getEmptyQueue () |
| Gets an instance of an empty event queue. More...
|
|
static void | startAll (Processor ... procs) |
| Starts all processors given as an argument. More...
|
|
static void | stopAll (Processor ... procs) |
| Stops all processors given as an argument. More...
|
|
static List< ProvenanceNode > | getLeaves (ProvenanceNode root) |
| Gets the leaves of a provenance tree. More...
|
|
static final transient String | s_versionString = "0.10.5" |
| A string used to identify the program's version. More...
|
|
static final transient int | MAX_PULL_RETRIES = 10000000 |
| Number of times the Pullable#hasNext() method tries to produce an output from the input before giving up. More...
|
|
static void | getLeaves (ProvenanceNode root, List< ProvenanceNode > leaves) |
| Accumulates the leaves of a provenance tree in a list. More...
|
|
Performs a computation on input events to produce output events.
This is the direct descendant of Processor, and probably the one you'll want to inherit from when creating your own processors. While Processor takes care of input and output queues, SynchronousProcessor also implements Pullables and Pushables. These take care of collecting input events, waiting until one new event is received from all input traces before triggering the computation, pulling and buffering events from all outputs when either of the Pullables is being called, etc.
The only thing that is left undefined is what to do when new input events have been received from all input traces. This is the task of abstract method compute(Object[], Queue), which descendants of this class must implement.
In early versions of the library, this class was called SingleProcessor
.
- Author
- Sylvain Hallé
- Since
- 0.1
Definition at line 51 of file SynchronousProcessor.java.