I
- type of inputsO
- type of outputpublic interface BinaryHybridCFI<I,O extends I> extends BinaryHybridCFI1<I,I,O>, BinaryHybridCI<I,O>
BinaryComputerOp
,
BinaryFunctionOp
or BinaryInplaceOp
.
To populate a preallocated output object, call
BinaryComputerOp.compute(I1, I2, O)
; to compute a new output object, call
BinaryFunctionOp.calculate(I1, I2)
; to mutate an input inplace, call
BinaryInplace1Op.mutate1(O, I2)
or BinaryInplaceOp.mutate2(I, O)
. To do
any of these things as appropriate, call run(Object, Object, Object)
.
BinaryHybridCF
,
BinaryHybridCFI1
SpecialOp.Flavor
Modifier and Type | Method and Description |
---|---|
default BinaryHybridCFI<I,O> |
getIndependentInstance()
Gets a reference to an instance of this object which can be used
simultaneously from a second thread while this instance is being used from
"its" thread.
|
default void |
run() |
default O |
run(I input1,
I input2,
O output)
Executes the operation in a type-safe but flexible way.
|
mutate
calculate, calculate, createOutput
createOutput
run, run
calculate, createOutput
compute, compute
compute
setOutput
mutate2
in, in1, mutate1
in2, setInput, setInput1, setInput2
candidates, filterArity, op
ops, setEnvironment
initialize
default O run(I input1, I input2, O output)
BinaryOp
The exact behavior depends on the type of special op.
run
in interface BinaryComputerOp<I,I,O extends I>
run
in interface BinaryFunctionOp<I,I,O extends I>
run
in interface BinaryHybridCF<I,I,O extends I>
run
in interface BinaryHybridCFI1<I,I,O extends I>
run
in interface BinaryHybridCI<I,O extends I>
run
in interface BinaryHybridCI1<I,I,O extends I>
run
in interface BinaryInplace1Op<I,I,O extends I>
run
in interface BinaryInplaceOp<I,O extends I>
run
in interface BinaryOp<I,I,O extends I>
input1
- first argument to the operationinput2
- second argument to the operationoutput
- reference where the operation's result will be storedBinaryComputerOp.run(Object, Object, Object)
,
BinaryFunctionOp.run(Object, Object, Object)
,
BinaryInplaceOp.run(Object, Object, Object)
,
BinaryHybridCF.run(Object, Object, Object)
default void run()
run
in interface BinaryComputerOp<I,I,O extends I>
run
in interface BinaryHybridCF<I,I,O extends I>
run
in interface BinaryHybridCFI1<I,I,O extends I>
run
in interface BinaryHybridCI1<I,I,O extends I>
run
in interface BinaryInplace1Op<I,I,O extends I>
run
in interface BinaryOp<I,I,O extends I>
run
in interface NullaryComputerOp<O extends I>
run
in interface NullaryHybridCF<O extends I>
run
in interface NullaryOp<O extends I>
run
in interface Runnable
run
in interface UnaryComputerOp<I,O extends I>
run
in interface UnaryHybridCF<I,O extends I>
run
in interface UnaryHybridCFI<I,O extends I>
run
in interface UnaryHybridCI<I,O extends I>
run
in interface UnaryOp<I,O extends I>
default BinaryHybridCFI<I,O> getIndependentInstance()
Threadable
It is expected that subclasses which override this method will narrow the return type appropriately. We do not enforce this at compile time via recursive generics due to their complexity: they introduce a host of typing difficulties.
getIndependentInstance
in interface BinaryComputerOp<I,I,O extends I>
getIndependentInstance
in interface BinaryFunctionOp<I,I,O extends I>
getIndependentInstance
in interface BinaryHybridCF<I,I,O extends I>
getIndependentInstance
in interface BinaryHybridCFI1<I,I,O extends I>
getIndependentInstance
in interface BinaryHybridCI<I,O extends I>
getIndependentInstance
in interface BinaryHybridCI1<I,I,O extends I>
getIndependentInstance
in interface BinaryInplace1Op<I,I,O extends I>
getIndependentInstance
in interface BinaryInplaceOp<I,O extends I>
getIndependentInstance
in interface BinaryOp<I,I,O extends I>
getIndependentInstance
in interface NullaryComputerOp<O extends I>
getIndependentInstance
in interface NullaryFunctionOp<O extends I>
getIndependentInstance
in interface NullaryHybridCF<O extends I>
getIndependentInstance
in interface NullaryOp<O extends I>
getIndependentInstance
in interface SpecialOp
getIndependentInstance
in interface Threadable
getIndependentInstance
in interface UnaryComputerOp<I,O extends I>
getIndependentInstance
in interface UnaryFunctionOp<I,O extends I>
getIndependentInstance
in interface UnaryHybridCF<I,O extends I>
getIndependentInstance
in interface UnaryHybridCFI<I,O extends I>
getIndependentInstance
in interface UnaryHybridCI<I,O extends I>
getIndependentInstance
in interface UnaryInplaceOp<I,O extends I>
getIndependentInstance
in interface UnaryOp<I,O extends I>
Copyright © 2014–2022 ImageJ. All rights reserved.