ug4
ug::vrl::invocation Namespace Reference

Functions

const ug::bridge::ClassNameNodegetClassNodePtrByName (ug::bridge::Registry *reg, std::string className)
 
const ug::bridge::ExportedConstructorgetConstructorBySignature (JNIEnv *env, ug::bridge::Registry *reg, ug::bridge::IExportedClass *eCls, jobjectArray params)
 
const ug::bridge::IExportedClassgetExportedClassPtrByName (ug::bridge::Registry *reg, std::string className)
 
const ug::bridge::ExportedFunctiongetFunctionBySignature (JNIEnv *env, ug::bridge::Registry *reg, std::string functionName, jobjectArray params)
 
const ug::bridge::ExportedMethodgetMethodBySignature (JNIEnv *env, ug::bridge::Registry *reg, const ug::bridge::IExportedClass *clazz, bool readOnly, std::string methodName, jobjectArray params)
 
void initClasses (ug::bridge::Registry &reg)
 

Variables

static ug::Hash< std::string, const ug::bridge::IExportedClass * > classes
 

Function Documentation

◆ getClassNodePtrByName()

const ug::bridge::ClassNameNode * ug::vrl::invocation::getClassNodePtrByName ( ug::bridge::Registry reg,
std::string  className 
)

Returns a classnode by name.

Parameters
regregistry to search
classNameclass name
Returns
pointer to requested classnode if such a node exists; NULL otherwise

References classes.

Referenced by ug::vrl::compareParamTypes(), Java_edu_gcsc_vrl_ug_UG__1invokeMethod(), ug::vrl::jObject2ConstSmartPtrVector(), ug::vrl::jObject2PtrVector(), ug::vrl::jObject2SmartPtrVector(), and ug::vrl::jobjectArray2ParamStack().

◆ getConstructorBySignature()

const ug::bridge::ExportedConstructor * ug::vrl::invocation::getConstructorBySignature ( JNIEnv *  env,
ug::bridge::Registry reg,
ug::bridge::IExportedClass eCls,
jobjectArray  params 
)

Returns an exported function by its signature.

Parameters
envJVM environment to operate on
regregistry to search
eClsexported class
paramsJava object array containing method parameter
Returns
pointer to requested method if such a method exists; NULL otherwise

References ug::vrl::compareParamTypes(), ug::bridge::IExportedClass::get_constructor(), ug::bridge::IExportedClass::num_constructors(), and ug::bridge::ExportedConstructor::params_in().

Referenced by Java_edu_gcsc_vrl_ug_UG__1newInstance().

◆ getExportedClassPtrByName()

const ug::bridge::IExportedClass * ug::vrl::invocation::getExportedClassPtrByName ( ug::bridge::Registry reg,
std::string  className 
)

Returns an exported class by name.

Parameters
regregistry to search
classNameclass name
Returns
pointer to requested class if such a class exists; NULL otherwise

References classes.

Referenced by ug::vrl::getParentClasses(), Java_edu_gcsc_vrl_ug_UG__1getExportedClassPtrByName(), and Java_edu_gcsc_vrl_ug_UG__1invokeMethod().

◆ getFunctionBySignature()

const ug::bridge::ExportedFunction * ug::vrl::invocation::getFunctionBySignature ( JNIEnv *  env,
ug::bridge::Registry reg,
std::string  functionName,
jobjectArray  params 
)

Returns an exported function by its signature.

Parameters
envJVM environment to operate on
regregistry to search
functionNamemethod name
paramsJava object array containing method parameter
Returns
pointer to requested method if such a method exists; NULL otherwise

References ug::vrl::compareParamTypes(), func(), ug::bridge::Registry::get_exported_function_group(), ug::bridge::ExportedFunctionGroup::get_overload(), and ug::bridge::ExportedFunctionGroup::num_overloads().

Referenced by Java_edu_gcsc_vrl_ug_UG__1invokeFunction().

◆ getMethodBySignature()

const ug::bridge::ExportedMethod * ug::vrl::invocation::getMethodBySignature ( JNIEnv *  env,
ug::bridge::Registry reg,
const ug::bridge::IExportedClass clazz,
bool  readOnly,
std::string  methodName,
jobjectArray  params 
)

Returns an exported method by its signature.

Parameters
envJVM environment to operate on
regregistry to search
clazzclass the method to search belongs to
readOnlydefines whether to search a const method
methodNamemethod name
paramsJava object array containing method parameter
Returns
pointer to requested method if such a method exists; NULL otherwise

References ug::vrl::compareParamTypes(), ug::bridge::IExportedClass::get_const_exported_method_group(), ug::bridge::IExportedClass::get_exported_method_group(), ug::bridge::ExportedMethodGroup::get_overload(), ug::vrl::getParentClasses(), ug::bridge::ExportedMethodGroup::num_overloads(), and ug::bridge::ExportedFunctionBase::params_in().

Referenced by Java_edu_gcsc_vrl_ug_UG__1invokeMethod().

◆ initClasses()

Variable Documentation

◆ classes

ug::Hash<std::string, const ug::bridge::IExportedClass*> ug::vrl::invocation::classes
static