Package edu.rit.pj.reduction
Class ObjectOp<T>
java.lang.Object
edu.rit.pj.reduction.Op
edu.rit.pj.reduction.ObjectOp<T>
- Type Parameters:
T
- Object data type.
Class ObjectOp is the abstract base class for a binary operation on object
values, used to do reduction in a parallel program.
When classes in the Parallel Java Library call the op(x,y)
method
during a reduction operation, the x
argument is the value of the
reduction variable, and the y
argument is the value to be combined
with the reduction variable. The value returned by the op(x,y)
method is stored back into the reduction variable.
The op(x,y)
method in any subclass of class ObjectOp must obey the
following requirements, which are assumed by classes in the Parallel Java
Library:
-
If as a result of the binary operation the state of the reduction variable
will not change, the
op(x,y)
method must returnx
. -
If as a result of the binary operation the state of the reduction variable
will change, the
op(x,y)
method must return a newly created object containing the desired state. -
The
op(x,y)
method must neither change the state ofx
nor change the state ofy
; that is, theop(x,y)
method must have no side effects.
- Version:
- 30-Mar-2008
- Author:
- Alan Kaminsky
-
Constructor Summary
-
Method Summary
-
Constructor Details
-
ObjectOp
protected ObjectOp()Construct a new object binary operation.
-
-
Method Details
-
op
Perform this binary operation.- Parameters:
x
- First argument.y
- Second argument.- Returns:
- (
x
opy
), where op stands for this binary operation.
-