AuboCaps
0.6.0
|
#include <function_model.h>
Public Member Functions | |
FunctionModel (FunctionModel &f) | |
FunctionModel (FunctionModel &&f) | |
~FunctionModel () | |
FunctionPtr | addFunction (const std::string &name, const std::vector< std::string > &argumentNames) |
bool | removeFunction (FunctionPtr func) |
FunctionPtr | getFunction (const std::string &name) |
std::vector< FunctionPtr > | getFunctions () |
Private Member Functions | |
FunctionModel () | |
Private Attributes | |
void * | d_ { nullptr } |
Friends | |
class | DataSwitch |
This interface provides methods to add and remove script functions in the Expression Editor accessible from Assignment and If program nodes among others.
Added functions merely serve as an easy way for the end customer to use the contributed functions. The implementation of a given script function must be added in the preamble of program through the use of InstallationNodeContribution#generateScript(ScriptWriter).
The full set of functions which can be contributed must be added in the preamble at all times, regardless of whether they are added to the Expression Editor or not. Otherwise old programs that rely on a script function contribution might stop working.
See also Function.
Definition at line 33 of file function_model.h.
arcs::aubo_scope::FunctionModel::FunctionModel | ( | FunctionModel & | f | ) |
arcs::aubo_scope::FunctionModel::FunctionModel | ( | FunctionModel && | f | ) |
arcs::aubo_scope::FunctionModel::~FunctionModel | ( | ) |
|
private |
FunctionPtr arcs::aubo_scope::FunctionModel::addFunction | ( | const std::string & | name, |
const std::vector< std::string > & | argumentNames | ||
) |
name | Name of the function. Safe names must match regex [a-zA-Z][a-zA-Z0-9_]{0,24} for a total of 25 characters. A range of Universal Robots reserved names exists and cannot be used. In case of an illegal or reserved name, an FunctionException will be thrown. |
argumentNames | Is a list of hints (for the function arguments) to be shown comma separated inside angle brackets in the Expression Editor. No more than five arguments can be specified. The hints must also match the regex [a-zA-Z][a-zA-Z0-9_]{0,14} for a total of 15 characters. Otherwise an FunctionException will be thrown. |
FunctionException | if the name is illegal or more than five arguments are specified. |
FunctionPtr arcs::aubo_scope::FunctionModel::getFunction | ( | const std::string & | name | ) |
name | The name of the function. |
std::vector<FunctionPtr> arcs::aubo_scope::FunctionModel::getFunctions | ( | ) |
filter | The filter being applied to the full list of added functions (by AuboCaps). |
bool arcs::aubo_scope::FunctionModel::removeFunction | ( | FunctionPtr | func | ) |
function | Function to be removed. Only functions added by this AuboCap can be removed. |
true
, if the function was successfully removed. false
otherwise (e.g. if the function was not added by this AuboCap).
|
friend |
Definition at line 84 of file function_model.h.
|
private |
Definition at line 86 of file function_model.h.