Import initial du projet shipheart_appli

This commit is contained in:
2026-08-13 10:33:28 +02:00
commit 8fe204361b
62 changed files with 32339 additions and 0 deletions
+72
View File
@@ -0,0 +1,72 @@
//**********************************************************************************************************************************************************************************
// Fichier EVENTS.H
//
// Contient tous les define liés aux évènements
//
//**********************************************************************************************************************************************************************************/
// Maximums :
#define MAX_NOMBRE_EVENTS 200 // Cf équivalent dans 'main.qml'.
#define MAX_NOMBRE_CONDITIONS_HORAIRES_PAR_EVENT 15 // Cf équivalent dans 'main.qml'.
#define MAX_NOMBRE_ACTION_CIRCUITS_PAR_EVENT 50 // Cf équivalent dans 'main.qml'.
#define MAX_REPETITIONS_SEQUENCEUR_EVENT 3 // Nombre maxi de répétitions du séquenceur d'un même evenènement.
#define MAX_HEURES_SPECIALES 9 // Selon liste ci-dessous
// Tempos :
#define EVENTS_TEMPO_INIT 500 // En x 10ms
#define EVENTS_PERIODE_CHECK 10 // En x 10ms
#define EVENTS_DIVISEUR_CONDITIONS_HORAIRES 10 // Multiplie EVENTS_PERIODE_CHECK pour obtenir la période de traitement des conditions horaires.
// Heures spéciales :
#define HEURE_SPECIALE_OFFSET 24 // Les valeurs des heures spéciales telles que stockées dans des condtions horaires sont égales à [HEURE_SPECIALE_OFFSET + HEURE_SPECIALE_xxx] pour les distinguer des heures normales, de 00 à 23.
#define HEURE_SPECIALE_FIN_NUIT 0 // -18° de l'horizon
#define HEURE_SPECIALE_AUBE_NAUTIQUE 1 // -12° de l'horizon
#define HEURE_SPECIALE_AUBE 2 // -6° de l'horizon
#define HEURE_SPECIALE_LEVER_SOLEIL 3 // -0.833° de l'horizon
#define HEURE_SPECIALE_ZENITH 4
#define HEURE_SPECIALE_COUCHER_SOLEIL 5 // -0.833° de l'horizon
#define HEURE_SPECIALE_CREPUSCULE 6 // -6° de l'horizon
#define HEURE_SPECIALE_CREPUSCULE_NAUTIQUE 7 // -12° de l'horizon
#define HEURE_SPECIALE_DEBUT_NUIT 8 // -18° de l'horizon
// Attention : si ajout d'heures spéciales, penser à modifier MAX_HEURES_SPECIALES en début de ce fichier...
// NB : la valeur d'offset n'entre pas en compte dans ce MAX.
// Jours de la semaine :
#define JOUR_SEMAINE_LUNDI 1
#define JOUR_SEMAINE_MARDI 2
#define JOUR_SEMAINE_MERCREDI 3
#define JOUR_SEMAINE_JEUDI 4
#define JOUR_SEMAINE_VENDREDI 5
#define JOUR_SEMAINE_SAMEDI 6
#define JOUR_SEMAINE_DIMANCHE 7
#define JOUR_SEMAINE_TOUS_LES_JOURS 8
// Types de tests :
#define EVENTS_TYPE_TEST_NON_DEFINI 0
#define EVENTS_TYPE_TEST_STRICT_INFERIEUR 1
#define EVENTS_TYPE_TEST_INFERIEUR_OU_EGAL 2
#define EVENTS_TYPE_TEST_EGAL 3
#define EVENTS_TYPE_TEST_SUPERIEUR_OU_EGAL 4
#define EVENTS_TYPE_TEST_STRICT_SUPERIEUR 5
// Types d'action sur circuit :
#define EVENTS_TYPE_ACTION_CIRCUIT_TOGGLE -1
// Les autres actions sont l'application d'une consigne, entre 0 (Off) et MAX_CONSIGNE_CIRCUIT (100)
// Etats du séquenceur Event :
#define ETAT_SEQUENCEUR_EVENT_INIT 0
#define ETAT_SEQUENCEUR_EVENT_REPOS 1
#define ETAT_SEQUENCEUR_EVENT_LANCEMENT_TEMPO 2
#define ETAT_SEQUENCEUR_EVENT_ATTENTE_FIN_TEMPO 3
#define ETAT_SEQUENCEUR_EVENT_DECLENCHEMENT 4
#define ETAT_SEQUENCEUR_EVENT_ATTENTE_DESACTIVATION 5
// Etats du séquenceur Events :
#define ETAT_SEQUENCEUR_EVENTS_INIT 0
#define ETAT_SEQUENCEUR_EVENTS_REPOS 1