Program Listing for File Entity.hpp

Return to documentation for file (gui/Demeter/Entity.hpp)

#pragma once

#include <memory>

namespace Dem {

  struct Demeter;

  class IEntity : public std::enable_shared_from_this<IEntity> {
  public:
    virtual ~IEntity() = default;

    [[nodiscard]] virtual bool Init(Demeter &d) = 0;

    [[nodiscard]] virtual bool Update(Demeter &d) = 0;

    [[nodiscard]] virtual bool Draw(Demeter &d) = 0;
  };

}  // namespace Dem