Resource.lua 1000 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. class "Resource"
  2. RESOURCE_TEXTURE = 0
  3. RESOURCE_MATERIAL = 1
  4. RESOURCE_SHADER = 2
  5. RESOURCE_PROGRAM = 3
  6. RESOURCE_MESH = 5
  7. RESOURCE_CUBEMAP = 6
  8. function Resource:Resource(...)
  9. for k,v in pairs(arg) do
  10. if type(v) == "table" then
  11. if v.__ptr ~= nil then
  12. arg[k] = v.__ptr
  13. end
  14. end
  15. end
  16. if self.__ptr == nil and arg[1] ~= "__skip_ptr__" then
  17. self.__ptr = Polycore.Resource(unpack(arg))
  18. end
  19. end
  20. function Resource:getResourceName()
  21. local retVal = Polycore.Resource_getResourceName(self.__ptr)
  22. return retVal
  23. end
  24. function Resource:getResourceType()
  25. local retVal = Polycore.Resource_getResourceType(self.__ptr)
  26. return retVal
  27. end
  28. function Resource:setResourceName(newName)
  29. local retVal = Polycore.Resource_setResourceName(self.__ptr, newName)
  30. end
  31. function Resource:setResourcePath(path)
  32. local retVal = Polycore.Resource_setResourcePath(self.__ptr, path)
  33. end
  34. function Resource:getResourcePath()
  35. local retVal = Polycore.Resource_getResourcePath(self.__ptr)
  36. return retVal
  37. end