Skip to content

Inconsistent help/execution behavior of op builder #181

@hinerm

Description

@hinerm

While working on this branch I have an environment with a single op:

  names: [filter.gauss]
    - parameter type: INPUT
      name: in
      description: |
        the input {@link Mat} to blur
      type: org.bytedeco.opencv.opencv_core.Mat
    - parameter type: MUTABLE
      name: out
      description: |
        a preallocated {@link Mat} to populate
      type: org.bytedeco.opencv.opencv_core.Mat
    - parameter type: INPUT
      name: size
      description: |
        desired kernel size
      type: org.bytedeco.opencv.opencv_core.Size
    - parameter type: INPUT
      name: StDev
      description: |
        desired standard deviation/blur intensity
      type: double

When trying to use the OpBuilder to print help and execute this op, I ran into a discrepancy. Here are two different builder configurations:

OpBuilder.Arity3_IV_OV<Mat, Size, Integer, Mat> ternaryBuilder =
	ops.ternary(TEST_OP).input(src, size, stDev).output(opsFish);

OpBuilder.Arity4_IV_OU<Mat, Mat, Size, Integer> quaternaryBuilder =
	ops.quaternary(TEST_OP).input(src, opsFish, size, stDev);

And the help/mutate calls that only work with one builder or the other:

System.out.println(ternaryBuilder.help());
System.out.println(ternaryBuilder.helpVerbose());

quaternaryBuilder.mutate2();

Trying to run quaternaryBuilder.help() produces no results; neither does ternaryBuilder.compute().

Expected behavior would be: quaternaryBuilder matches in help/helpVerbose calls, ternaryBuilder does not.

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions