project-kyoku/include/notegraphicsentity.h

32 lines
672 B
C++

#ifndef NOTEGRAPHICSENTITY_H
#define NOTEGRAPHICSENTITY_H
#include <SFML/Graphics/Drawable.hpp>
#include <SFML/Graphics/Transformable.hpp>
class NoteGraphicsEntity : public sf::Drawable, public sf::Transformable
{
public:
explicit NoteGraphicsEntity();
virtual ~NoteGraphicsEntity() = 0;
virtual void update() = 0;
virtual void attach() noexcept final;
virtual void detach() noexcept final;
virtual void onKeyPressed() = 0;
virtual void onKeyReleased() = 0;
virtual void show() = 0;
virtual void killAsExpired() = 0;
virtual void reset() = 0;
virtual bool isActive() const = 0;
protected:
bool _attached;
};
#endif