Simulateur Ferroviaire
Reconstruction et visualisation d'un réseau ferroviaire à partir de données GeoJSON — Win32 / WebView2 / Leaflet
Chargement...
Recherche...
Aucune correspondance
Référence de la classe TopologyData

Conteneur partagé entre tous les modules métier et la couche HMI. Plus de détails...

#include <TopologyData.h>

Graphe de collaboration de TopologyData:

Fonctions membres publiques

void clear ()
 Vide les listes et les index (remise à zéro entre deux parsings).
 
void buildIndex ()
 Construit les index id→ptr depuis les vecteurs.
 

Attributs publics

std::vector< std::unique_ptr< StraightBlock > > straights
 
std::vector< std::unique_ptr< SwitchBlock > > switches
 
std::unordered_map< std::string, SwitchBlock * > switchIndex
 
std::unordered_map< std::string, StraightBlock * > straightIndex
 

Description détaillée

Conteneur partagé entre tous les modules métier et la couche HMI.

Sert de point de vérité unique pour les listes de blocs extraites du parsing GeoJSON.

Les blocs sont détenus par unique_ptr afin de :

  • garantir un polymorphisme correct (pas de slicing),
  • autoriser le delete sur pointeur de base (destructeur virtuel),
  • interdire la copie accidentelle des éléments.

Documentation des fonctions membres

◆ buildIndex()

void TopologyData::buildIndex ( )
inline

Construit les index id→ptr depuis les vecteurs.

Appeler en fin de pipeline GeoParser, après transfert en unique_ptr et résolution de tous les pointeurs (partenaires, branches, voisins). Les adresses des objets doivent être stables — aucune réallocation de vecteur ne doit survenir après cet appel.

◆ clear()

void TopologyData::clear ( )
inline

Vide les listes et les index (remise à zéro entre deux parsings).

Documentation des données membres

◆ straightIndex

std::unordered_map<std::string, StraightBlock*> TopologyData::straightIndex

◆ straights

std::vector<std::unique_ptr<StraightBlock> > TopologyData::straights

◆ switches

std::vector<std::unique_ptr<SwitchBlock> > TopologyData::switches

◆ switchIndex

std::unordered_map<std::string, SwitchBlock*> TopologyData::switchIndex

Index de lookup rapide id → ptr, construit après résolution des pointeurs. Permet un accès O(1) par ID sans find_if sur les vecteurs.


La documentation de cette classe a été générée à partir du fichier suivant :