Factory function
The factory function consists of an R list which specifies the parameters of your R user-defined extension (UDx).
Example
FunctionNameFactory <- function() {
  list(name                  = MainFunctionName,
       udxtype               = c("scalar"),
       intype                = c("float","int", ...),
       outtype               = c("float", ...),
       outtypecallback       = MyReturnTypeFunc,
       parametertypecallback = MyParamReturnFunc,
       volatility            = c("volatile"),
       strictness            = c("called_on_null_input") )
}
Arguments
name |  
The name of the R function in this UDx that is called when the function is invoked by Vertica, and which returns the value(s) back to Vertica. | 
udxtype |  
 The type of UDx, one of the following: 
  | 
intype |  
Data types of arguments accepted by the function. UDxs support up to 9800 arguments. | 
outtype |  
Data types of the arguments returned by the function. | 
outtypecallback |  
(Optional) The callback function to call before sending the data back to Vertica, which defines the types and precision that the main function returns. | 
parametertypecallback |  
 The callback function to send parameter types and names to Vertica. This parameter is required if your UDx is called from Vertica with USING PARAMETERS.  | 
volatility |  
 (Optional) Indicates whether the function returns the same output given the same input, one of the following: 
 For details, see Setting null input and volatility behavior for R functions.  | 
strictness |  
 (Optional) Indicates whether the function always returns NULL when any input argument is NULL, one of the following: 
 For details, see Setting null input and volatility behavior for R functions.  | 
Description
User-defined functions in R (R UDx) require a factory function for each main R function that you want to call from within Vertica. The factory function encapsulates all the information required by Vertica to load the R UDx.