Versión de Firmware con funciones de RAM incorporadas.

Dependencies:   mbed

Fork of VmRecorderV1dot1 by virtualmech

Committer:
JuanManuelAmador
Date:
Mon Jun 15 15:34:27 2015 +0000
Revision:
0:3d456b8ce449
prueba

Who changed what in which revision?

UserRevisionLine numberNew contents of line
JuanManuelAmador 0:3d456b8ce449 1 /**
JuanManuelAmador 0:3d456b8ce449 2 * @author Juan Manuel Amador Olivares (virtualmech)
JuanManuelAmador 0:3d456b8ce449 3 */
JuanManuelAmador 0:3d456b8ce449 4 #ifndef SCREENMANAGER_H
JuanManuelAmador 0:3d456b8ce449 5 #define SCREENMANAGER_H
JuanManuelAmador 0:3d456b8ce449 6
JuanManuelAmador 0:3d456b8ce449 7 #define NUMSCREENS 25
JuanManuelAmador 0:3d456b8ce449 8 #define NIDIOMAS 2
JuanManuelAmador 0:3d456b8ce449 9 #define NCARSCREEN 16
JuanManuelAmador 0:3d456b8ce449 10
JuanManuelAmador 0:3d456b8ce449 11 #include "Screen.cpp"
JuanManuelAmador 0:3d456b8ce449 12 #include <string.h>
JuanManuelAmador 0:3d456b8ce449 13
JuanManuelAmador 0:3d456b8ce449 14 class ScreenManager {
JuanManuelAmador 0:3d456b8ce449 15
JuanManuelAmador 0:3d456b8ce449 16 public:
JuanManuelAmador 0:3d456b8ce449 17 /**
JuanManuelAmador 0:3d456b8ce449 18 * Constructor.
JuanManuelAmador 0:3d456b8ce449 19 *
JuanManuelAmador 0:3d456b8ce449 20 */
JuanManuelAmador 0:3d456b8ce449 21 ScreenManager(DogMLCD* lcdScreen);
JuanManuelAmador 0:3d456b8ce449 22
JuanManuelAmador 0:3d456b8ce449 23 void selectGroup(int groupID); // Se selecciona el grupo mostrado actualmente. Llamamar a esta funcioón justo antes de cambiar a una pantalla o llamar initialize para que se muestre la actual correctamente
JuanManuelAmador 0:3d456b8ce449 24 int addScreen(Screen* screen, char name[NCARSCREEN], int groupID); // Devuelve el índice asignado a la nueva pantalla
JuanManuelAmador 0:3d456b8ce449 25 void changeScreen(char nameNextScreen[NCARSCREEN]);
JuanManuelAmador 0:3d456b8ce449 26 void backScreen(); // Vuelve a la pantalla anterior, devuelve el índice de la pantalla anterior
JuanManuelAmador 0:3d456b8ce449 27 void getLastScreen(char buff[]); // Devuelve el nombre de la pantalla anterior
JuanManuelAmador 0:3d456b8ce449 28 int getnScreen(int groupID); // Devuelve el número de pantallas
JuanManuelAmador 0:3d456b8ce449 29 int getCurrentGroupID(); //Devuelve el grupo de patallas seleccionado actual
JuanManuelAmador 0:3d456b8ce449 30 char *getCurrentScreen(); // Devuelve el nombre de la pantalla actual
JuanManuelAmador 0:3d456b8ce449 31
JuanManuelAmador 0:3d456b8ce449 32 void initialize(); // Iniciliza la pantalla actual
JuanManuelAmador 0:3d456b8ce449 33 void update();
JuanManuelAmador 0:3d456b8ce449 34
JuanManuelAmador 0:3d456b8ce449 35
JuanManuelAmador 0:3d456b8ce449 36 private:
JuanManuelAmador 0:3d456b8ce449 37 int currentGroupID; // Grupo actual
JuanManuelAmador 0:3d456b8ce449 38 int currentScreen; // Índice de la pantalla actual
JuanManuelAmador 0:3d456b8ce449 39 int lastScreen; // Índice de la pantalla anterior
JuanManuelAmador 0:3d456b8ce449 40 int nScreens[NIDIOMAS]; // Número total de pantallas añadidas de cada grupo
JuanManuelAmador 0:3d456b8ce449 41 Screen* screens[NIDIOMAS][NUMSCREENS];
JuanManuelAmador 0:3d456b8ce449 42 char screenName[NIDIOMAS][NUMSCREENS][NCARSCREEN];
JuanManuelAmador 0:3d456b8ce449 43 DogMLCD* lcd;
JuanManuelAmador 0:3d456b8ce449 44
JuanManuelAmador 0:3d456b8ce449 45 };
JuanManuelAmador 0:3d456b8ce449 46
JuanManuelAmador 0:3d456b8ce449 47 #endif