aboutsummaryrefslogtreecommitdiff
path: root/src/crepe/Resource.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/crepe/Resource.h')
-rw-r--r--src/crepe/Resource.h18
1 files changed, 8 insertions, 10 deletions
diff --git a/src/crepe/Resource.h b/src/crepe/Resource.h
index a0c8859..a2d65df 100644
--- a/src/crepe/Resource.h
+++ b/src/crepe/Resource.h
@@ -6,21 +6,19 @@ class ResourceManager;
class Asset;
/**
- * Resource is an interface class used to represent a (deserialized) game
- * resource (e.g. textures, sounds).
+ * \brief Resource interface
+ *
+ * Resource is an interface class used to represent a (deserialized) game resource (e.g.
+ * textures, sounds). Resources are always created from \ref Asset "assets" by ResourceManager.
+ *
+ * The game programmer has the ability to use the ResourceManager to keep instances of concrete
+ * resources between scenes, preventing them from being reinstantiated during a scene
+ * transition.
*/
class Resource {
public:
Resource(const Asset & src);
virtual ~Resource() = default;
-
-private:
- /**
- * The resource manager uses \c clone to create new instances of the concrete
- * resource class. This may be used to inherit references to classes that
- * would otherwise need to be implemented as singletons.
- */
- friend class ResourceManager;
};
} // namespace crepe