#ifndef COMPONENT_H #define COMPONENT_H #include class Component { public: virtual ~Component() {} // Update the component each frame. virtual void Update(float deltaTime) = 0; // Save the component's state to a YAML node. virtual YAML::Node Save() const = 0; // Load the component's state from a YAML node. virtual void Load(const YAML::Node &node) = 0; }; #endif // COMPONENT_H