#pragma once #include "ifdefs.h" #include "const.h" #include "utils.h" #include "sprite.h" #include "screen.h" #include "jail_audio.h" #ifndef LOGO_H #define LOGO_H // Clase Logo class Logo { private: SDL_Renderer *mRenderer; // El renderizador de la ventana Screen *mScreen; // Objeto encargado de dibujar en pantalla std::string *mFileList; // Lista de ficheros LTexture *mTexture; // Textura con los graficos SDL_Event *mEventHandler; // Manejador de eventos SDL_Texture *mBackbuffer; // Textura para usar como backbuffer Sprite *mSprite; // Sprite con la textura del logo Uint16 mCounter; // Contador section_t mSection; // Estado del bucle principal para saber si continua o se sale Uint32 mTicks; // Contador de ticks para ajustar la velocidad del programa Uint8 mTicksSpeed; // Velocidad a la que se repiten los bucles del programa public: // Constructor Logo(SDL_Renderer *renderer, Screen *screen, std::string *fileList); // Destructor ~Logo(); // Inicializa las variables void init(); // Carga los recursos bool loadMedia(); // Bucle principal section_t run(); }; #endif