HALCON 区分了四类不同的算子参数:
输入参数通过值传递,输出参数通过引用传递(使用 & 操作符)。但 char* 类型的输出控制参数除外。在这种情况下,调用者必须提供内存,并且只将指向内存的指针传递给算子。
大多数 HALCON 算子也可以使用参数元组而不是单个值来调用(即所谓的元组模式)。就拿上一章示例程序中的 threshold 算子来说,它可以分割图像并返回分割后的区域: 如果您传递的是图像元组,它将返回一个区域元组,每个输入图像一个。不过,与 HDevelop 和其他编程接口不同,在 HALCON/C 中,必须通过在算子前添加 T_ 和使用元组来明确选择元组模式,并使用元组来表示所有控制值(详见 "控制参数" 一节)。算子是否可以在元组模式下调用,参见 HALCON 参考手册。
HALCON/C 为控制参数元组提供了数据结构 Htuple(详见 "元组模式"一节 ),为图像对象(单个对象和对象元组;详见 "图像对象" 一节 )提供了数据结构 Hobject。