public abstract class DelegateBasedCostFunctionCallback extends Delegate
delegate
type used by the DelegateBasedCostFunction
. This must extract the value
from the results to minimize or maximize in a TargetedSegmentListParameterOptimizer
.Modifier and Type | Class and Description |
---|---|
static interface |
DelegateBasedCostFunctionCallback.Function
A functional interface for the containing delegate type.
|
Constructor and Description |
---|
DelegateBasedCostFunctionCallback()
Creates a new instance of this delegate.
|
DelegateBasedCostFunctionCallback(Class<?> targetClass,
String methodName,
Class<?>... methodParameterClasses)
Initializes a delegate that will invoke a static method on a class.
|
DelegateBasedCostFunctionCallback(Object targetObject,
String methodName,
Class<?>... methodParameterClasses)
Initializes a delegate that will invoke an instance method on a class instance.
|
Modifier and Type | Method and Description |
---|---|
abstract double |
invoke(SegmentResults results)
The
delegate type used by the DelegateBasedCostFunction . |
static DelegateBasedCostFunctionCallback |
of(DelegateBasedCostFunctionCallback.Function f)
Create a delegate for the given interface.
|
static DelegateBasedCostFunctionCallback |
of(DelegateBasedCostFunctionCallback.Function f,
Class<?> targetClass,
String methodName,
Class<?>... methodParameterClasses)
Create a delegate for the given interface.
|
static DelegateBasedCostFunctionCallback |
of(DelegateBasedCostFunctionCallback.Function f,
Object targetObject,
String methodName,
Class<?>... methodParameterClasses)
Create a delegate for the given interface.
|
public DelegateBasedCostFunctionCallback()
public DelegateBasedCostFunctionCallback(@Nonnull Object targetObject, @Nonnull String methodName, @Nonnull Class<?>... methodParameterClasses)
targetObject
- The class instance on which the delegate will invoke the method.methodName
- The name of the instance method.methodParameterClasses
- The type of the parameters of the instance method.public DelegateBasedCostFunctionCallback(@Nonnull Class<?> targetClass, @Nonnull String methodName, @Nonnull Class<?>... methodParameterClasses)
targetClass
- The class that defines the method.methodName
- The name of the static method.methodParameterClasses
- The type of the parameters of the static method.public abstract double invoke(SegmentResults results)
delegate
type used by the DelegateBasedCostFunction
. This must extract the value
from the results to minimize or maximize in a TargetedSegmentListParameterOptimizer
.results
- The results
of the segment specified in
the DelegateBasedCostFunction
.@Nonnull public static DelegateBasedCostFunctionCallback of(@Nonnull DelegateBasedCostFunctionCallback.Function f)
f
- The function which will be invoked.@Nonnull public static DelegateBasedCostFunctionCallback of(@Nonnull DelegateBasedCostFunctionCallback.Function f, @Nonnull Object targetObject, @Nonnull String methodName, @Nonnull Class<?>... methodParameterClasses)
f
- The function which will be invoked.targetObject
- The class instance on which the delegate will invoke the method.methodName
- The name of the instance method.methodParameterClasses
- The type of the parameters of the instance method.@Nonnull public static DelegateBasedCostFunctionCallback of(@Nonnull DelegateBasedCostFunctionCallback.Function f, @Nonnull Class<?> targetClass, @Nonnull String methodName, @Nonnull Class<?>... methodParameterClasses)
f
- The function which will be invoked.targetClass
- The class that defines the method.methodName
- The name of the static method.methodParameterClasses
- The type of the parameters of the static method.