53#include <unordered_set>
114 std::unordered_set<PCCNode*>& visited,
Système de journalisation à 5 niveaux de trace, un fichier par moteur.
Conteneur propriétaire du graphe PCC.
Journaliseur associé à un moteur nommé.
Definition Logger.h:99
Conteneur propriétaire du graphe PCC — nœuds, arêtes et index.
Definition PCCGraph.h:50
Calculateur de positions logiques X/Y du PCCGraph.
Definition PCCLayout.h:64
static void fixCollapsedBranches(PCCGraph &graph, Logger &logger)
Corrige les branches convergentes de longueurs inégales (post-BFS).
Definition PCCLayout.cpp:300
PCCLayout()=delete
Interdit l'instanciation — classe utilitaire statique.
static std::vector< PCCNode * > findTermini(const PCCGraph &graph, Logger &logger)
Détecte les nœuds terminus (points de départ du schéma).
Definition PCCLayout.cpp:66
static void compute(PCCGraph &graph, Logger &logger)
Calcule et assigne les positions logiques à tous les nœuds.
Definition PCCLayout.cpp:19
static int runBFS(PCCGraph &graph, PCCNode *start, std::unordered_set< PCCNode * > &visited, int offsetX, Logger &logger)
Lance un BFS linéaire depuis start et assigne les positions X/Y.
Definition PCCLayout.cpp:103
Nœud abstrait du graphe PCC.
Definition PCCNode.h:70
Contexte BFS d'un nœud en file d'attente.
Definition PCCLayout.h:86
PCCNode * node
Nœud à traiter.
Definition PCCLayout.h:87
bool arrivedViaDeviation
Vrai si atteint via une arête DEVIATION.
Definition PCCLayout.h:90
int y
Rang vertical (0 = backbone, ±n = branches).
Definition PCCLayout.h:89
int x
Profondeur BFS (position horizontale).
Definition PCCLayout.h:88