26 #ifndef __TERRALIB_DATAACCESS_INTERNAL_FUNCTIONDEFN_H
27 #define __TERRALIB_DATAACCESS_INTERNAL_FUNCTIONDEFN_H
30 #include "../../datatype/Enums.h"
31 #include "../Config.h"
38 #include <boost/noncopyable.hpp>
45 class FunctionParameter;
70 bool isAggregate =
false,
71 std::string* description = 0);
81 const std::string&
getName()
const {
return m_name; }
90 void setName(
const std::string& name) { m_name = name; }
132 void setDescription(std::string* description);
174 #endif // __TERRALIB_DATAACCESS_INTERNAL_FUNCTIONDEFN_H
bool m_isAggregate
A flag that defines if the function is an aggregate one.
int getRetValType() const
It returns the data type of the return value.
FunctionParameter * operator[](std::size_t i) const
It returns the i-th function parameter.
void setName(const std::string &name)
It sets the function name;.
std::string * m_description
A brief description of the function.
std::size_t getNumParams() const
It returns the number of parameters for the function.
bool isAggregate() const
It returns true if it is an aggregate function, otherwise, returns false.
std::string * getDescription() const
It returns a brief description about the function.
void add(FunctionParameter *p)
It adds the parameter to the function list of parameters.
void setRetValType(int r)
It sets the data type of the return value.
std::vector< FunctionParameter * > m_params
The list of arguments.
std::string m_name
The function name. It may be an operator symbol or just a regular name like st_intersects.
void SetIsAggregate(bool a)
It tells if the function is an aggregate function or not.
#define TEDATAACCESSEXPORT
You can use this macro in order to export/import classes and functions from this module.
const std::string & getName() const
It returns the function name.
int m_retValType
Data type of the return value.
The definition of a function that can be used in a query object.
A FunctionParameter models the parameter of a function definition.