Resource.js 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  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. })
  10. }
  11. Resource.RESOURCE_TEXTURE = 0
  12. Resource.RESOURCE_MATERIAL = 1
  13. Resource.RESOURCE_SHADER = 2
  14. Resource.RESOURCE_PROGRAM = 3
  15. Resource.RESOURCE_MESH = 5
  16. Resource.RESOURCE_CUBEMAP = 6
  17. Resource.RESOURCE_SPRITE = 7
  18. Resource.RESOURCE_ENTITY_INSTANCE = 8
  19. Resource.RESOURCE_FONT = 9
  20. Resource.RESOURCE_SCRIPT = 10
  21. Resource.prototype = Object.create(EventDispatcher.prototype)
  22. Resource.prototype.__get_reloadOnFileModify = function() {
  23. return Polycode.Resource__get_reloadOnFileModify(this.__ptr)
  24. }
  25. Resource.prototype.__set_reloadOnFileModify = function(val) {
  26. Polycode.Resource__set_reloadOnFileModify(this.__ptr, val)
  27. }
  28. Resource.prototype.__get_resourceFileTime = function() {
  29. var retVal = new size_t()
  30. retVal.__ptr = Polycode.Resource__get_resourceFileTime(this.__ptr)
  31. return retVal
  32. }
  33. Resource.prototype.__set_resourceFileTime = function(val) {
  34. Polycode.Resource__set_resourceFileTime(this.__ptr, val.__ptr)
  35. }
  36. Duktape.fin(Resource.prototype, function (x) {
  37. if (x === Resource.prototype) {
  38. return;
  39. }
  40. Polycode.Resource__delete(x.__ptr)
  41. })
  42. Resource.prototype.reloadResource = function() {
  43. Polycode.Resource_reloadResource(this.__ptr)
  44. }
  45. Resource.prototype.getResourceName = function() {
  46. return Polycode.Resource_getResourceName(this.__ptr)
  47. }
  48. Resource.prototype.getResourceType = function() {
  49. return Polycode.Resource_getResourceType(this.__ptr)
  50. }
  51. Resource.prototype.setResourceName = function(newName) {
  52. Polycode.Resource_setResourceName(this.__ptr, newName)
  53. }
  54. Resource.prototype.setResourcePath = function(path) {
  55. Polycode.Resource_setResourcePath(this.__ptr, path)
  56. }
  57. Resource.prototype.getResourcePath = function() {
  58. return Polycode.Resource_getResourcePath(this.__ptr)
  59. }