Versión sin post-procesado del software del VmRideR

Dependencies:   mbed

Revision:
0:3d456b8ce449
diff -r 000000000000 -r 3d456b8ce449 ScreenManager/ScreenManager.h
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ScreenManager/ScreenManager.h	Mon Jun 15 15:34:27 2015 +0000
@@ -0,0 +1,47 @@
+/**
+ * @author Juan Manuel Amador Olivares (virtualmech)
+ */
+#ifndef SCREENMANAGER_H
+#define SCREENMANAGER_H
+
+#define NUMSCREENS 25
+#define NIDIOMAS 2
+#define NCARSCREEN 16
+
+#include "Screen.cpp"
+#include <string.h> 
+
+class ScreenManager {
+
+public:
+    /**
+     * Constructor.
+     *
+     */
+    ScreenManager(DogMLCD* lcdScreen);
+    
+    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
+    int addScreen(Screen* screen, char name[NCARSCREEN], int groupID);   // Devuelve el índice asignado a la nueva pantalla
+    void changeScreen(char nameNextScreen[NCARSCREEN]);  
+    void backScreen();               // Vuelve a la pantalla anterior, devuelve el índice de la pantalla anterior
+    void getLastScreen(char buff[]);    // Devuelve el nombre de la pantalla anterior
+    int getnScreen(int groupID);       // Devuelve el número de pantallas
+    int getCurrentGroupID();            //Devuelve el grupo de patallas seleccionado actual
+    char *getCurrentScreen();      // Devuelve el nombre de la pantalla actual
+    
+    void initialize();  // Iniciliza la pantalla actual
+    void update();
+    
+    
+    private:
+    int currentGroupID; // Grupo actual
+    int currentScreen;  // Índice de la pantalla actual
+    int lastScreen;     // Índice de la pantalla anterior
+    int nScreens[NIDIOMAS];       // Número total de pantallas añadidas de cada grupo
+    Screen* screens[NIDIOMAS][NUMSCREENS];
+    char screenName[NIDIOMAS][NUMSCREENS][NCARSCREEN];
+    DogMLCD* lcd;
+
+};
+
+#endif
\ No newline at end of file