Class sh::scripting::Api

class sh::scripting::Api

Interoperation layer between the Shallot core and a plugin interpreter.

Public Functions

Api()
~Api()
QStringList classes()
QStringList rootMembers()
ApiClass *getClass(QString name)
ApiClass *getClassByTypeIdName(QString typeidName)
void *rootMember(QString name)
ApiClass *rootMemberClass(QString name)

Private Functions

void registerClass(QString name, ApiClass **apiclass, const std::type_info &nativeType)
void registerMethod(ApiClass *apiclass, QString name)
void registerRootObjectMember(QString name, ApiClass *cls, void *member)

Private Members

QHash<QString, ApiClass*> _classes
QHash<QString, ApiClass*> _classesByNativeType
QHash<QString, void*> _rootMembers
QHash<QString, ApiClass*> _rootMembersClasses