| Pca | |
| Puqac | |
| Plif | |
| Pcep | Elementary classes defining all the basic concepts of event stream processing |
| Pfunctions | Definition of the Function object and basic concepts around functions |
| CApplyFunction | Applies a function to input events to produce output events |
| CShiftTracker | Simple tracker proxy that records associations from the underlying function, and shifts its input/output by the current position in the input/output stream |
| CApplyFunctionArgument | A function of two arguments, the first of which is a 1:1 function; it applies this function to the second argument and returns the result |
| CApplyFunctionLambda | |
| CUnaryLambdaEvaluable | |
| CBinaryLambdaEvaluable | |
| CLambdaEvaluable | |
| CApplyFunctionPartial | Evaluates a function on each event front in a lazy manner |
| CInputPushable | |
| COutputPullable | |
| CBinaryFunction | Function of two inputs and one output |
| CConstant | Representation of a unary constant |
| CContextAssignment | An object that assigns a value to a specific key in a Context object |
| CContextVariable | Placeholder for the value of a context element |
| CCumulate | Creates a cumulative processor out of a cumulative function |
| CStartValue | Node function representing the start value defined for a particular function |
| CCumulativeFunction | A function with memory |
| CDuplicableFunction | Interface implemented by functions that can be duplicated |
| CFunction | Represents a stateless m-to-n function |
| CFunctionException | Generic class for any exception thrown during the evaluation of a function |
| CFunctionLambda | A function defined based on a lambda expression |
| CUnaryLambdaEvaluable | |
| CBinaryLambdaEvaluable | |
| CFunctionTree | A Function object representing the composition of multiple functions together to form a "compound" function |
| CIdentityFunction | Function that returns its input for its output |
| CIfThenElse | Function that acts as an if-then-else |
| CIntegrate | Receives a stream of Function objects and applies these functions to update an internal object kept in memory |
| CInvalidArgumentException | Exception thrown when a function is given an argument that is invalid |
| CNothingToReturnException | Exception thrown when a function cannot produce a return value |
| CPassthroughFunction | Delegates all calls of the Function class to an internal object instantiated by a method |
| CRaiseArity | A Function that raises the arity of another function |
| CStreamVariable | Symbol standing for the i-th trace given as input |
| CTurnInto | Processor that turns any event into a predefined object |
| CUnaryFunction | Function of one input and one output |
| CVariable | A function that acts as a placeholder for a value to be computed at a later time |
| Pio | Processors to handle input and output of data from external sources, such as files and pipes |
| CCall | Processor calling an external command upon receiving an event, and returning the output of that command as its output stream |
| CCommandRunner | Utility class to run commands on the command line and fetch their output |
| CStreamGobbler | Constantly reads an input stream and captures its content |
| CHttpGet | Reads chunks of data from an URL, using an HTTP request |
| CPrint | Sends its input to a PrintStream (such as the standard output) |
| CPrintln | A special type of Print processor that prints a carriage return by default between tokens |
| CReadInputStream | Read contents from a Java InputStream, and outputs its chunks as byte arrays |
| CReadInputStreamPullable | A special Pullable that overrides the default behavior of SynchronousProcessor.OutputPullable |
| CReadLines | Source that reads text lines from a Java InputStream |
| CReadStringStream | Extracts character strings from a Java InputStream |
| CReadTokens | Separates a stream of string chunks into tokens according to a user-defined separator |
| CSpliceSource | Source that sequentially reads from multiple input files, and optionally from the standard input |
| CSpliceLineSource | |
| CSpliceTokenSource | |
| CSpliceByteSource | |
| CWriteOutputStream | Processor that writes events to a Java OutputStream |
| CWriteToFile | Writes input events to one or more files |
| Ptmf | Processors to manipulate traces of generic events |
| CAbstractSlice | Separates an input trace into different "slices" |
| CToAllSlices | Dummy object telling the slicer that an event must be sent to all slices |
| CAbstractWindow | Simulates the application of a "sliding window" to a trace |
| CBlackHole | A special type of Sink that discards everything it receives |
| CCallbackSink | A sink that calls a method when a new front of events is pushed to it |
| CCountDecimate | Returns one input event and discards the next n-1 |
| CDecimate | By default, a Decimate acts like a Passthrough for which only certain inputs are allowed to be output |
| CDetectEnd | Lets all input events through, and sends an "end of trace" signal when a specific event is received |
| CDivert | Diverts an input stream to one of many downstream processor chains |
| CDivertPushable | Implementation of the Pushable interface for the Divert processor |
| CDivertPullable | Implementation of the Pullable interface for the Divert processor |
| CFilter | Discards events from an input trace based on a selection criterion |
| CFilterOn | Discards events from an input trace based on a selection criterion |
| CFork | Duplicates an input trace into two or more output traces |
| CFreeze | Repeatedly outputs the first event it has received |
| CInsert | Inserts an event a certain number of times before letting the input events through |
| CInsertPullable | A Pullable object that does not pull events from upstream before the events to insert have been emitted |
| CKeepLast | Outputs only the last event received |
| CMultiplex | Merges the contents of multiple traces into a single trace |
| CMuxPullable | |
| CMuxPushable | |
| CPad | |
| CPassthrough | Returns its input as its output |
| CPrefix | Returns the first n input events and discards the following ones |
| CPump | Processor that repeatedly pulls its input, and pushes the resulting events to its output |
| CPushUnit | The encapsulation of a 1:1 processor connected to a sink |
| CQueueSink | Sink that accumulates events into queues |
| CQueueSource | Source whose input is a queue of objects |
| CQueueFunction | Provenance function that links an output event to an element of the processor's queue |
| CQueueSourceBatch | Operates like QueueSource, except that it dumps all its queue at once, instead of releasing the events one by one |
| CResetLast | Processor that receives two input streams; it pushes the events of a first stream into a processor, and resets this processor whenever the event on the second input stream is true |
| CSimpleFilter | A simple filter that lets input events out by evaluating a condition on them; if the condition evaluates to true, the event is output, otherwise it is discarded |
| CSink | Receives input events and stores them |
| CSinkLast | Sink that remembers only the last event sent to it |
| CSlice | Concrete version of AbstractSlice whose output is an associative map between slice IDs and the last event produced by that slice processor |
| CSliceLast | Concrete version of AbstractSlice whose output is a stream of lists, where each list contains all the events produced by inner slices from a given input event |
| CSource | Produces output events from no input |
| CSplice | Joins multiple sources as a single one |
| CStutter | Repeats each input event a specified number of times |
| CTank | Accumulates pushed events into a queue until they are pulled |
| CQueuePullable | |
| CQueuePushable | |
| CTankLast | Tank that, when pulled, creates an output event based on the last event received |
| CTimeDecimate | After returning an input event, discards all others for the next n seconds |
| CTrim | Discards the first n events of the input, and outputs the remaining ones |
| CVariableStutter | Processor that repeats input events a number of times based on a control signal |
| CWindow | Simulates the application of a "sliding window" to a trace |
| CWindowFunction | Takes a sliding window of n successive input events, passes them to an n-ary function and outputs the result |
| Putil | Utility processors and functions to manipulate strings, arrays, and a few other data structures |
| CBags | A container object for functions and processors applying to generic collections, i.e |
| CFilterElements | Gets all the elements of the collection that satisfy some condition |
| CContains | Checks if an object is a member of a collection |
| CRunOn | Runs each element of a collection into a processor, and collect its output |
| CToCollection | Converts a front of n input events into a collection of n objects |
| CToArray | Converts a front of n events into an array of n objects |
| CToList | Converts a front of n events into a list of n objects |
| CToSet | Converts a front of n events into a set of n objects |
| CGetSize | Gets the size of a collection |
| CApplyToAll | Given a set/list/array, returns a new set/list/array whose content is the result of applying a function to each element |
| CProduct | Computes the Cartesian product of two collections, returning pairs as arrays |
| CAnyElement | Returns any element of a collection |
| CExplode | A 1:m function provided by the Bags utility class |
| CMaximumValue | Returns the element with the maximum value in a collection |
| CMinimumValue | Returns the element with the maximum value in a collection |
| CIsElement | Checks if an element is a member of a collection |
| CBooleans | A container object for Boolean functions |
| CAnd | Implementation of the logical conjunction |
| CImplies | Implementation of the logical implication |
| COr | Implementation of the logical disjunction |
| CNot | Implementation of the logical negation |
| CBagAnd | Implementation of the logical conjunction over a collection |
| CBagOr | Implementation of the logical disjunction over a collection |
| CBooleanCast | Function that attempts to convert an object into a Boolean |
| CEquals | A function that checks for the equality of various data types |
| CFindPattern | Extracts chunks of an input stream based on a regular expression |
| CInstanceOf | Checks if an object is an instance of a given class |
| CLists | A container object for functions and processors applying to lists |
| CListUpdateProcessor | Processor that updates a list |
| CPutInto | Updates a list |
| CPutIntoNew | Updates a list |
| CAbstractPack | Common ancestor to TimePack and Pack |
| CPack | Accumulates events from a first input pipe, and sends them in a burst into a list based on the Boolean value received on its second input pipe |
| CTimePack | Accumulates events that are being pushed, and sends them in a burst into a list at predefined time intervals |
| CTimer | Timer that pushes the contents of m_packedEvents every m_outputInterval milliseconds |
| CUnpack | Unpacks a collection of objects by outputting its contents as separate events |
| CMathList | A list that implements equality |
| CSort | |
| CSortOn | |
| CProduct | Computes the Cartesian product of two collections, returning pairs as MathLists |
| CMaps | A container object for map functions and processors |
| CValues | Gets the set of values in a map |
| CKeys | Gets the set of keys in a map |
| CMultiValues | Gets the multi-set of values in a map |
| CGet | Gets a value in the map, based on the name of a key |
| CPutInto | Updates a map by putting key-value pairs into it |
| CMapPutInto | Updates a map by putting key-value pairs into it |
| CApplyAll | Creates a new map by applying a function to all the values of a map given as input |
| CMergeMaps | Updates a map by merging its contents with a stream of incoming maps |
| CFilterMap | Filters a map based on a condition on its key-value pairs |
| CMathMap | A map that implements equality based on its contents |
| CMultiset | A set where each element can be present more than once |
| CInsert | Given a multiset and an element, returns a new multiset with this element added to it |
| CGetCardinalities | Gets the cardinalities of each element in a multiset |
| CPutInto | Puts incoming events into a multiset, and returns this set |
| CNthElement | Function that returns the n-th element of an ordered collection (array or list) |
| CNumbers | A container object for functions applying to numbers |
| CAbsoluteValue | Computes the absolute value of its argument |
| CAddition | Computes the sum of its arguments |
| CDivision | Computes the quotient of its arguments |
| CSquare | Computes the square of a number |
| CIsEven | Computes if a number is even |
| CIsGreaterOrEqual | Checks if a number is greater than or equal to an other number |
| CIsGreaterThan | Checks if a number is greater than other number |
| CIsLessOrEqual | Checks if a number is less than or equal to an other number |
| CIsLessThan | Checks if a number is less than an other number |
| CMaximum | Returns the maximum of two numbers |
| CMinimum | Returns the minimum of two numbers |
| CMultiplication | Computes the product of its arguments |
| CNumberCast | Converts an object into a number |
| CPower | Computes the power of its arguments |
| CSignum | Computes the signum of its argument |
| CSquareRoot | Computes the square root of its argument |
| CSubtraction | Computes the difference of its arguments |
| CCeiling | Rounds a number up to the nearest integer |
| CFloor | Rounds a number down to the nearest integer |
| CModulo | Evaluates the remainder of modulus division |
| CRandomize | A n:n processor that turns an arbitrary input event front into an output front made of randomly selected numerical values |
| CSets | A container object for set functions and processors |
| CSetUpdateProcessor | Processor that updates a set |
| CPutInto | Updates a set by putting the elements it receives into the set |
| CIntersect | Calculates the successive intersection of a stream of sets |
| CUnion | Calculates the successive union of a stream of sets |
| CPutIntoNew | Updates a set |
| CIsSubsetOrEqual | Checks if a set is a subset of another |
| CIsSupersetOrEqual | Checks if a set is a superset of another |
| CMathSet | Implementation of a set with "mathematical" equality |
| CSize | Evaluates the size of an object |
| CStrings | A container object for string functions |
| CBuildString | Concatenates input strings into an output string |
| CConcat | Concatenates two strings |
| CContains | Function that checks if a string contains another |
| CEndsWith | Function that checks if a string ends by another |
| CMatches | Checks if a string matches a regular expression |
| CStartsWith | Checks if a string starts by another |
| CSplitString | Transforms a comma-separated line of text into an array |
| CToString | Transforms any object into a string using the "toString" method |
| CFindRegex | Finds all substrings that match capturing group 1 of a regular expression |
| CFindRegexOnce | Finds the first substring that matches capturing group 1 of a regular expression |
| CSubstring | Extracts a sub-string out of another string |
| CReplaceAll | Replaces all matches of a regular expression by another regular expression |
| CAdder | A simple processor that adds two integers |
| CAsynchronousProcessor | Processor that handles its inputs asynchronously |
| CInputPushable | |
| COutputPullable | |
| CCallAfterConnect | An object carrying a Processor to be connected, and which expects a call to its call() method after the connection is established |
| CConnector | Provides a number of convenient methods for connecting the outputs of processors to the inputs of other processors |
| CConnectorException | Exception thrown when a problem occurs when attempting to connect two objects |
| CConnectionException | Exception thrown when a problem occurs when connecting the output pipe of a processor to the input pipe of another one |
| CIncompatibleTypesException | Exception thrown when two processors with incompatible input/output types are attempted to be connected |
| CIndexOutOfBoundsException | Exception thrown when the connector is asked to pipe something to a nonexistent input or output |
| CSelfLoopException | Exception thrown when trying to connect the output of a processor to its own input |
| CVariant | Empty class representing the fact that the output type of a processor may vary |
| CConnection | Represents a connection between two pipes |
| CPipeSelector | An object that holds a reference to a processor, and which can produce a SelectedPipe for a given index |
| CSelectedPipe | An object that designates a specific input or output pipe for a specific processor |
| CSelectedInputPipe | |
| CSelectedOutputPipe | |
| CContext | Associative map used by processors to store persistent data |
| CContextualizable | Interface implemented by all BeepBeep objects that manipulate a Context |
| CDoubler | A processor that doubles every number it is given |
| CDuplicable | Interface indicating that an object can be duplicated |
| CDuplicableProcessor | An override on the return type of Duplicable that enforces the return of a processor |
| CEventNodeFunction | |
| CEventTracker | Tracks the relationship between output events produced by processors, and the input events that were used to compute them |
| CNoOpEventTracker | Dummy event tracker that does nothing |
| CGroupProcessor | Encapsulates a chain of processors as if it were a single one |
| CInputOutputAssociation | |
| CProcessorAssociation | Tuple made of a number and a processor |
| CCopyCrawler | Crawler that creates copies (clones) of whatever it encounters on its way and re-pipes processors as in the original group |
| CCollectCrawler | A crawler that adds to the group any processor it encounters |
| CProxyPullable | |
| CProxyPushable | |
| COutputCallAfterConnect | A CallAfterConnect object that can be used to connect the underlying processor of a GroupProcessor, and then to collect all processors that are part of the group |
| CMain | A dummy main file defining a few system-wide constants |
| CPipeCrawler | An object that visits every processor in a chain, from a processor used as a starting point |
| CProcessor | Receives zero or more input events, and produces zero or more output events |
| CInternalProcessorState | An object capturing the internal state of a processor, including the current contents of its input and output queues |
| CProcessorException | Generic class for any exception thrown in the lifecycle of a processor |
| CPullable | Queries events on one of a processor's outputs |
| CPullableException | A runtime exception indicating that something went wrong when attempting to check if a next event exists |
| CPullNotSupported | Pullable object that throws an UnsupportedOperationException upon every call to each of its methods (except getProcessor()) |
| CNextStatus | The "next" status of a Pullable object |
| CPushable | Gives events to some of a processor's input |
| CPushableException | A runtime exception indicating that something went wrong when attempting to check if a next event exists |
| CPushNotSupported | Pushable object that throws an UnsupportedOperationException upon every call to each of its methods (except getProcessor()) |
| CStateful | Interface implemented by processors that can publicly expose a token equivalent to their internal state |
| CSynchronousProcessor | Performs a computation on input events to produce output events |
| CInputPushable | Implementation of a Pushable for a single processor |
| COutputPullable | Implementation of a Pullable for a single processor |
| CTypedPullable | A Pullable object that casts all its output to a given type |
| CUniformProcessor | Processor that produces exactly one output front for each input front received |
| CUnaryPushable | A special type of Pushable for uniform processors with an input and output arity of exactly 1 |
| CUnaryPullable | A special type of Pushable for uniform processors with an input and output arity of exactly 1 |
| CUtilityMethods | A few methods repeatedly used throughout the code repository examples |