|
Simulateur Ferroviaire
Reconstruction et visualisation d'un réseau ferroviaire à partir de données GeoJSON — Win32 / WebView2 / Leaflet
|
Interface abstraite pour tous les éléments de shuntage ferroviaire. Plus de détails...
#include <ShuntingElement.h>
Fonctions membres publiques | |
| ShuntingElement ()=default | |
| virtual | ~ShuntingElement ()=default |
| ShuntingElement (ShuntingElement &&)=default | |
| ShuntingElement & | operator= (ShuntingElement &&)=default |
| virtual ShuntingState | getState () const =0 |
| Retourne l'état opérationnel courant de l'élément. | |
| bool | isFree () const |
| Retourne true si l'élément est libre. | |
| bool | isOccupied () const |
| Retourne true si l'élément est occupé. | |
| bool | isInactive () const |
| Retourne true si l'élément est hors service. | |
Fonctions membres publiques hérités de Element | |
| Element ()=default | |
| virtual | ~Element ()=default |
| Element (const Element &)=delete | |
| Interdit la copie — risque de slicing. | |
| Element & | operator= (const Element &)=delete |
| Element (Element &&)=default | |
| Déplacement autorisé — requis par le pipeline de construction. | |
| Element & | operator= (Element &&)=default |
| virtual std::string | getId () const =0 |
| Retourne l'identifiant unique de l'élément (ex. "sw/3", "s/12"). | |
| virtual ElementType | getType () const =0 |
| Retourne le type de l'élément. | |
Attributs protégés | |
| ShuntingState | m_state = ShuntingState::FREE |
Attributs protégés hérités de Element | |
| std::string | m_id |
| id de l'element | |
Membres hérités additionnels | |
Attributs protégés statiques hérités de Element | |
| static Logger | m_logger |
| Logger statique partagé par TOUS les éléments interactifs. | |
Interface abstraite pour tous les éléments de shuntage ferroviaire.
Étend Element avec une requête d'état propre à l'infrastructure de shuntage (sections de voie, détecteurs, signaux de manœuvre, …).
Les sous-classes concrètes doivent implémenter getId(), getType() et getState().
Règles de copie / déplacement :
|
default |
|
virtualdefault |
|
default |
Déplacement explicite — nécessaire car le destructeur virtuel supprime la génération implicite des opérateurs de déplacement en C++11/14/17.
|
pure virtual |
Retourne l'état opérationnel courant de l'élément.
Implémenté dans StraightBlock, et SwitchBlock.
|
inline |
Retourne true si l'élément est libre.
|
inline |
Retourne true si l'élément est hors service.
|
inline |
Retourne true si l'élément est occupé.
|
default |
|
protected |
État opérationnel courant du bloc (FREE par défaut).