![]() |
C++ SDK Documentation
11.0.0
|


Public Types | |
| enum | UDXType { SCALAR = 1, TRANSFORM = 2, ANALYTIC = 3, MULTI_TRANSFORM = 4, AGGREGATE = 5, LOAD_SOURCE = 6, LOAD_FILTER = 7, LOAD_PARSER = 8, FILESYSTEM = 9, TYPE = 10, CURSOR_TRANSFORM = 11 } |
Public Member Functions | |
| virtual void | getParameterType (ServerInterface &srvInterface, SizedColumnTypes ¶meterTypes) |
| virtual void | getPerInstanceResources (ServerInterface &srvInterface, VResources &res) |
| virtual void | getPerInstanceResources (ServerInterface &srvInterface, VResources &res, const SizedColumnTypes &inputTypes) |
| virtual void | getPrototype (ServerInterface &srvInterface, ColumnTypes &argTypes, ColumnTypes &returnType)=0 |
| virtual void | getReturnType (ServerInterface &srvInterface, const SizedColumnTypes &argTypes, SizedColumnTypes &returnType)=0 |
| virtual UDXType | getUDXFactoryType ()=0 |
Protected Attributes | |
| Oid | libOid |
| std::string | sqlName |
|
inherited |
|
inlinevirtualinherited |
|
inlinevirtualinherited |
Set the resource required for each instance of the UDX Object subclass. Users should override only one of the following methods.
| srvInterface | a ServerInterface object used to communicate with Vertica |
| res | a VResources object used to tell Vertica what resources are needed by the UDX |
|
inlinevirtualinherited |
Set the resource required for each instance of the UDX Object subclass. Users should override only one of the following methods.
| srvInterface | a ServerInterface object used to communicate with Vertica |
| res | a VResources object used to tell Vertica what resources are needed by the UDX |
| argTypes | Provides the data types of arguments that this UDT was called with |
|
pure virtual |
Provides the argument and return types of the UDX
|
pure virtual |
Function to tell Vertica what the return types (and length/precision if necessary) of this UDX are.
For CHAR/VARCHAR types, specify the max length,
For NUMERIC types, specify the precision and scale.
For Time/Timestamp types (with or without time zone), specify the precision, -1 means unspecified/don't care
For IntervalYM/IntervalDS types, specify the precision and range
For all other types, no length/precision specification needed
| argTypes | Provides the data types of arguments that this UDT was called with. This may be used to modify the return types accordingly. |
| returnType | User code must fill in the names and data types returned by the UDT. |
Implemented in Vertica::ScalarFunctionFactory.
|
pure virtualinherited |
Implemented in Vertica::AggregateFunctionFactory, Vertica::AnalyticFunctionFactory, Vertica::TransformFunctionFactory, Vertica::ScalarFunctionFactory, and Vertica::UDFileSystemFactory.