Learning Roadmap: Types of External C and C++ UDFs

The high-performance, in-process, external C and C++ user-defined functions available with the IQ_IDA license.

The v3 API requires either the IQ_UDF or IQ_IDA license. The v4 API requires the IQ_IDA license.

UDF Type Input Parameters Return API See:
Scalar UDF Scalar Single scalar value v3, v4 Declaring and Defining Scalar User-Defined Functions
Aggregate UDF Scalar Single scalar value v3, v4 Declaring and Defining Aggregate UDFs
Table UDF Scalar Table v4 Table UDFs and TPFs
Table parameterized function (TPF) Scalar and table Table v4 Table Parameterized Functions

These UDFs can be deterministic or nondeterministic. The result of a function can be determined by the input parameters and data (deterministic), or by some random behavior (nondeterministic). Parameters of nondeterministic UDFs typically need a random seed as one of the input parameters.