Simulateur Ferroviaire
Reconstruction et visualisation d'un réseau ferroviaire à partir de données GeoJSON — Win32 / WebView2 / Leaflet
Chargement...
Recherche...
Aucune correspondance
Element.h
Aller à la documentation de ce fichier.
1#pragma once
2
3#include <string>
5
17enum class ElementType
18{
19 SWITCH,
21};
22
34{
35public:
36
37 // -------------------------------------------------------------------------
38 // Construction / Destruction
39 // -------------------------------------------------------------------------
40
41 Element() = default;
42 virtual ~Element() = default;
43
45 Element(const Element&) = delete;
46 Element& operator=(const Element&) = delete;
47
49 Element(Element&&) = default;
50 Element& operator=(Element&&) = default;
51
52 // -------------------------------------------------------------------------
53 // Interface virtuelle pure
54 // -------------------------------------------------------------------------
55
59 [[nodiscard]] virtual std::string getId() const = 0;
60
65 [[nodiscard]] virtual ElementType getType() const = 0;
66
67protected :
71 std::string m_id;
72
89};
ElementType
Types d'éléments interactifs ferroviaires.
Definition Element.h:18
Système de journalisation à 5 niveaux de trace, un fichier par moteur.
Classe de base abstraite pour tous les éléments interactifs ferroviaires.
Definition Element.h:34
Element()=default
Element(const Element &)=delete
Interdit la copie — risque de slicing.
Element & operator=(Element &&)=default
virtual std::string getId() const =0
Retourne l'identifiant unique de l'élément (ex. "sw/3", "s/12").
virtual ~Element()=default
std::string m_id
id de l'element
Definition Element.h:71
Element & operator=(const Element &)=delete
virtual ElementType getType() const =0
Retourne le type de l'élément.
static Logger m_logger
Logger statique partagé par TOUS les éléments interactifs.
Definition Element.h:88
Element(Element &&)=default
Déplacement autorisé — requis par le pipeline de construction.
Journaliseur associé à un moteur nommé.
Definition Logger.h:99