#ifndef PIXEL_H_INCLUDED #define PIXEL_H_INCLUDED #include #include #include typedef struct { SDL_Window * window; SDL_Renderer * renderer; int WIDTH; int HEIGHT; SDL_Event event; } SCREEN; /** * Set a pixel on a given screen * @param screen the screen to display the pixel * @param x x position * @param y y position * @param value display white if true and black if false * @return */ void SetPixel(SDL_Renderer *renderer, int x, int y, bool value); /** * Display an entire matrix on a given screen * @param screen the screen where the matrix should be displayed * @param m a Matrix * @return */ void DisplayMatrixSDL(SCREEN *screen, Matrix m); /** * Wait until the user press the enter key * @param screen the screen where the renderer is * @return */ void WaitUntilEnter(SCREEN * screen); /** * Print a matrix in a new SDL window * @param Matrix the matrix to display * @return int error code */ int NewWindowFromMatrix(Matrix m); /** * Display a message and ask for yes or no to the user * @param message the message to display * @return bool the answer */ bool YesOrNo(char message[]); /** * Display matrix choosing the right function * @param m a Matrix * @param useSDL a bool * @return */ void DisplayMatrixGUI(Matrix m, bool useSDL); /** * Get a number from the user safely * @param min the minimal authorized number * @param max the maximal authorized number * @return int the input number */ int SafeNumberInput(int min, int max); /** * Clears the buffer of stdin * @return */ void ClearBuffer(); #endif