Resource.js 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. require('Polycode/EventDispatcher')
  2. function Resource(type) {
  3. if(arguments[0] != "__skip_ptr__") {
  4. this.__ptr = Polycode.Resource(type)
  5. }
  6. Object.defineProperties(this, {
  7. 'reloadOnFileModify': { enumerable: true, configurable: true, get: Resource.prototype.__get_reloadOnFileModify, set: Resource.prototype.__set_reloadOnFileModify},
  8. 'resourceFileTime': { enumerable: true, configurable: true, get: Resource.prototype.__get_resourceFileTime, set: Resource.prototype.__set_resourceFileTime},
  9. 'platformData': { enumerable: true, configurable: true, get: Resource.prototype.__get_platformData, set: Resource.prototype.__set_platformData}
  10. })
  11. }
  12. Resource.RESOURCE_TEXTURE = 0
  13. Resource.RESOURCE_MATERIAL = 1
  14. Resource.RESOURCE_SHADER = 2
  15. Resource.RESOURCE_PROGRAM = 3
  16. Resource.RESOURCE_MESH = 5
  17. Resource.RESOURCE_CUBEMAP = 6
  18. Resource.RESOURCE_SPRITE = 7
  19. Resource.RESOURCE_ENTITY_INSTANCE = 8
  20. Resource.RESOURCE_FONT = 9
  21. Resource.RESOURCE_SCRIPT = 10
  22. Resource.prototype = Object.create(EventDispatcher.prototype)
  23. Resource.prototype.__get_reloadOnFileModify = function() {
  24. return Polycode.Resource__get_reloadOnFileModify(this.__ptr)
  25. }
  26. Resource.prototype.__set_reloadOnFileModify = function(val) {
  27. Polycode.Resource__set_reloadOnFileModify(this.__ptr, val)
  28. }
  29. Resource.prototype.__get_resourceFileTime = function() {
  30. var retVal = new size_t("__skip_ptr__")
  31. retVal.__ptr = Polycode.Resource__get_resourceFileTime(this.__ptr)
  32. return retVal
  33. }
  34. Resource.prototype.__set_resourceFileTime = function(val) {
  35. Polycode.Resource__set_resourceFileTime(this.__ptr, val.__ptr)
  36. }
  37. Resource.prototype.__get_platformData = function() {
  38. var retVal = new RendererPlatformData("__skip_ptr__")
  39. retVal.__ptr = Polycode.Resource__get_platformData(this.__ptr)
  40. return retVal
  41. }
  42. Resource.prototype.__set_platformData = function(val) {
  43. Polycode.Resource__set_platformData(this.__ptr, val.__ptr)
  44. }
  45. Duktape.fin(Resource.prototype, function (x) {
  46. if (x === Resource.prototype) {
  47. return;
  48. }
  49. Polycode.Resource__delete(x.__ptr)
  50. })
  51. Resource.prototype.getResourceName = function() {
  52. return Polycode.Resource_getResourceName(this.__ptr)
  53. }
  54. Resource.prototype.getResourceType = function() {
  55. return Polycode.Resource_getResourceType(this.__ptr)
  56. }
  57. Resource.prototype.setResourceName = function(newName) {
  58. Polycode.Resource_setResourceName(this.__ptr, newName)
  59. }
  60. Resource.prototype.setResourcePath = function(path) {
  61. Polycode.Resource_setResourcePath(this.__ptr, path)
  62. }
  63. Resource.prototype.getResourcePath = function() {
  64. return Polycode.Resource_getResourcePath(this.__ptr)
  65. }