View Categories

Durée de lecture estimée : 2 mn

EEPIsControlTrackReserved()
Utilité

Renseigne sur l'occupation d'un tronçon d'une section de voies guidées

Arguments

Un ou deux

Valeurs en retour

Deux ou trois

Versions EEP min.

EEP11.3 plugin 3 / EEP13.2 plugin 2 / EEP17.2 plugin 2

Syntaxe
EEPIsControlTrackReserved(ID [, true|Position])
Détails
  • Le 1er argument est l'ID du tronçon dont on veut connaître le statut d'occupation.
  • Depuis EEP 13.2 plug-in 2 un 2ème argument facultatif true permet d'obtenir le nom du véhicule en guise de 3ème élément retourné par la fonction.
  • Depuis EEP 17.2 plug-in 2, une valeur de position peut être entrée en lieu et place du second argument facultatif true, afin que la fonction renvoie le nom du véhicule qui occupe le tronçon de voies guidées à cette position précise.
  • La 1ère valeur retournée est = à true lorsque le tronçon à interroger existe et est enregistrée sinon = à false dans le cas contraire.
  • La 2ème valeur retournée est = à true lorsque le tronçon est occupée sinon = à false dans le cas contraire.
  • La 3ème valeur (optionnelle) retournée est le nom du véhicule qui occupe le tronçon à la première position (si la valeur du second argument est true ou 1) ou à la Xème position définie par la valeur entrée comme second argument. Toutefois si la valeur entrée comme deuxième argument est supérieure au nombre de véhicules occupants le tronçon, la 3ème valeur retournée sera une chaîne de caractères vide.
ATTENTION : La troisième valeur retournée est correcte tant que les véhicules ne sont pas en mouvement ! Si les véhicules se déplacent, l'interpréteur Lua peut renvoyer des noms erronés, car la liste des noms change à une vitesse par exemple de 60 fps, alors que Lua s'exécute de manière asynchrone dans un autre thread (CPU) afin de ne pas ralentir EEP.
  • Avant toute demande d'occupation, le tronçon doit être préalablement enregistré avec la fonction EEPRegisterControlTrack().
Exemple
Lua
EEPRegisterControlTrack(333)
ok, Occupe = EEPIsControlTrackReserved(333)

ok, Occupe, Nom = EEPIsControlTrackReserved(333, true)
if  Occupe == true then
    print("la voie ID333 est occupée par ", Nom)
  else
    print("la voie ID333 est libre")
end

ok, Occupe, Nom = EEPIsControlTrackReserved(333, 2)
if Occupe == true then
    print("le 2ème véhicule ", Nom, " circule sur la voie ID333.")
  else
    print("la voie ID333 est libre")
end
0 0 votes
Évaluation de l'article
S’abonner
Notification pour
guest
0 Commentaires
Le plus ancien
Le plus récent Le plus populaire
Commentaires en ligne
Afficher tous les commentaires
Retour en haut