Loading [MathJax]/extensions/tex2jax.js
ug4
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
bindings_lua.h File Reference
#include <vector>
#include <string>
#include "externals/lua/lua.h"
#include "externals/lua/lauxlib.h"
#include "externals/lua/lualib.h"
#include "common/common.h"
#include "registry/registry.h"

Go to the source code of this file.

Classes

struct  ug::bridge::lua::ConstSmartUserDataWrapper
 
struct  ug::bridge::lua::RawUserDataWrapper
 
struct  ug::bridge::lua::SmartUserDataWrapper
 
struct  ug::bridge::lua::UserDataWrapper
 

Namespaces

namespace  ug
 the ug namespace
 
namespace  ug::bridge
 
namespace  ug::bridge::lua
 

Enumerations

enum  ug::bridge::lua::UserDataWrapperTypes { ug::bridge::lua::RAW_POINTER = 1 , ug::bridge::lua::SMART_POINTER = 1 << 1 , ug::bridge::lua::IS_CONST = 1 << 2 }
 

Functions

bool ug::bridge::lua::CreateBindings_LUA (lua_State *L, Registry &reg)
 creates bindings for ug_interface and a given lua-state.
 
ConstSmartUserDataWrapperug::bridge::lua::CreateNewUserData (lua_State *L, const ConstSmartPtr< void > &ptr, const char *metatableName)
 creates a new UserDataWrapper and associates it with ptr in luas registry
 
SmartUserDataWrapperug::bridge::lua::CreateNewUserData (lua_State *L, const SmartPtr< void > &ptr, const char *metatableName)
 creates a new UserDataWrapper and associates it with ptr in luas registry
 
RawUserDataWrapperug::bridge::lua::CreateNewUserData (lua_State *L, void *ptr, const char *metatableName, void(*deleteFunc)(const void *), bool is_const)
 creates a new UserDataWrapper and associates it with ptr in luas registry