#include #include #include #include #include class MediaService { private: ImageService *imageService = nullptr; MediaType type; std::shared_ptr texture; std::shared_ptr sprite; std::shared_ptr window; int client_width = 0; int client_height = 0; public: MediaService(const std::string &filename, int width, int height); ~MediaService() = default; std::shared_ptr GetSprite() { return sprite; } void SetWindow(std::shared_ptr window); void Play(); };