GE Lua Documentation

Press F to search!

newExtensionProxy

Definition


-- @/lua/common/extensions.lua:1055

-- creation method of the object, inits the member variables
function newExtensionProxy(parentExtension, identifierPrefix)
  if parentExtension then
    if not parentExtension.__extensionName__ then
      log('E', '', 'Parent extension is not a valid extension: ' .. dumps(parentExtension))
      return
    end
    if identifierPrefix == nil then identifierPrefix = parentExtension.__extensionName__ end
  end
  if identifierPrefix == nil then identifierPrefix = '' end
  local extName = identifierPrefix .. '_virtual_' .. tostring(getUniqueVirtualExtensionNumber())
  local data = {
    extName = extName,
    extPath = extNameToLuaPath(extName),
    __virtual__ = true,
    __manuallyLoaded__ = true,
  }
  -- inform the extensions of this new virtual child
  if parentExtension then
    if not childExtensions[parentExtension] then childExtensions[parentExtension] = {} end
    table.insert(childExtensions[parentExtension], data)
  end
  setmetatable(data, ExtensionProxy)
  return data
end

Callers

@/lua/ge/extensions/util/testExtensionProxies.lua

  extProxy = newExtensionProxy(M) -- newExtensionProxy(nil, 'foobar')
  extProxy:submitEventSinks(testInstances)

  extProxy = newExtensionProxy(M) -- newExtensionProxy(nil, 'foobar')
  extProxy:submitEventSinks(testInstances)
@/lua/ge/extensions/flowgraph/states.lua
    autoStart = pnode.startingState or false,
    extProxy = newExtensionProxy(nil, self.mgr.extProxy.extName.."_state_"..node.name .. "-"..node.id),
    active = false,
  -- build the state resolver ext proxy.
  self.resolveExtProxy = newExtensionProxy(nil, self.mgr.extProxy.extName.."_StateResolver")
  local deps = {}
@/lua/ge/extensions/flowgraph/manager.lua
  self.stopRunningOnClientEndMission = false
  self.extProxy = newExtensionProxy(parent, "FG_" .. self.name .. "_" .. self.id)
  core_flowgraphManager.runningProxies[self.extProxy.extName] = true