class_resourceformatsaver.rst 4.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. :github_url: hide
  2. .. Generated automatically by doc/tools/makerst.py in Godot's source tree.
  3. .. DO NOT EDIT THIS FILE, but the ResourceFormatSaver.xml source instead.
  4. .. The source is found in doc/classes or modules/<name>/doc_classes.
  5. .. _class_ResourceFormatSaver:
  6. ResourceFormatSaver
  7. ===================
  8. **Inherits:** :ref:`Reference<class_Reference>` **<** :ref:`Object<class_Object>`
  9. **Inherited By:** :ref:`GDNativeLibraryResourceSaver<class_GDNativeLibraryResourceSaver>`, :ref:`ResourceFormatSaverBinary<class_ResourceFormatSaverBinary>`, :ref:`ResourceFormatSaverGDScript<class_ResourceFormatSaverGDScript>`, :ref:`ResourceFormatSaverNativeScript<class_ResourceFormatSaverNativeScript>`, :ref:`ResourceFormatSaverShader<class_ResourceFormatSaverShader>`, :ref:`ResourceFormatSaverText<class_ResourceFormatSaverText>`, :ref:`ResourceSaverPNG<class_ResourceSaverPNG>`
  10. **Category:** Core
  11. Brief Description
  12. -----------------
  13. Saves a specific resource type to a file.
  14. Methods
  15. -------
  16. +-----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  17. | :ref:`PoolStringArray<class_PoolStringArray>` | :ref:`get_recognized_extensions<class_ResourceFormatSaver_method_get_recognized_extensions>` **(** :ref:`Resource<class_Resource>` resource **)** virtual |
  18. +-----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  19. | :ref:`bool<class_bool>` | :ref:`recognize<class_ResourceFormatSaver_method_recognize>` **(** :ref:`Resource<class_Resource>` resource **)** virtual |
  20. +-----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  21. | :ref:`int<class_int>` | :ref:`save<class_ResourceFormatSaver_method_save>` **(** :ref:`String<class_String>` path, :ref:`Resource<class_Resource>` resource, :ref:`int<class_int>` flags **)** virtual |
  22. +-----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  23. Description
  24. -----------
  25. The engine can save resources when you do it from the editor, or when you use the :ref:`ResourceSaver<class_ResourceSaver>` singleton. This is accomplished thanks to multiple :ref:`ResourceFormatSaver<class_ResourceFormatSaver>`\ s, each handling its own format and called automatically by the engine.
  26. By default, Godot saves resources as ``.tres`` (text-based), ``.res`` (binary) or another built-in format, but you can choose to create your own format by extending this class. Be sure to respect the documented return types and values. You should give it a global class name with ``class_name`` for it to be registered. Like built-in ResourceFormatSavers, it will be called automatically when saving resources of its recognized type(s). You may also implement a :ref:`ResourceFormatLoader<class_ResourceFormatLoader>`.
  27. Method Descriptions
  28. -------------------
  29. .. _class_ResourceFormatSaver_method_get_recognized_extensions:
  30. - :ref:`PoolStringArray<class_PoolStringArray>` **get_recognized_extensions** **(** :ref:`Resource<class_Resource>` resource **)** virtual
  31. Returns the list of extensions available for saving the resource object, provided it is recognized (see :ref:`recognize<class_ResourceFormatSaver_method_recognize>`).
  32. ----
  33. .. _class_ResourceFormatSaver_method_recognize:
  34. - :ref:`bool<class_bool>` **recognize** **(** :ref:`Resource<class_Resource>` resource **)** virtual
  35. Returns whether the given resource object can be saved by this saver.
  36. ----
  37. .. _class_ResourceFormatSaver_method_save:
  38. - :ref:`int<class_int>` **save** **(** :ref:`String<class_String>` path, :ref:`Resource<class_Resource>` resource, :ref:`int<class_int>` flags **)** virtual
  39. Saves the given resource object to a file at the target ``path``. ``flags`` is a bitmask composed with :ref:`SaverFlags<enum_ResourceSaver_SaverFlags>` constants.
  40. Returns :ref:`@GlobalScope.OK<class_@GlobalScope_constant_OK>` on success, or an :ref:`Error<enum_@GlobalScope_Error>` constant in case of failure.