> For the complete documentation index, see [llms.txt](https://docs.augelab.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.augelab.com/french/function-blocks/blocks-reference/input-output/data-inputs/headless-check.md).

# Headless Check

Ce bloc de fonction indique si l'exécution en cours fonctionne en mode headless (sans interface utilisateur). Utilisez-le pour adapter le comportement lorsque le scénario tourne sur des serveurs ou dans des environnements automatisés.

## 📥 Inputs <a href="#inputs" id="inputs"></a>

Ce bloc n’a pas d’entrées.

## 📤 Outputs <a href="#outputs" id="outputs"></a>

`Check`\
Cette sortie fournit une valeur booléenne : TRUE lorsque le scénario s'exécute en mode headless, FALSE lorsqu'une interface utilisateur est disponible.

## 🕹️ Contrôles <a href="#controls" id="controls"></a>

Ce bloc n’expose aucun contrôle utilisateur.

## 🎯 Features <a href="#features" id="features"></a>

* Indicateur simple TRUE/FALSE adapté au contrôle de flux.
* Léger et sûr à placer n'importe où dans le flux pour adapter le comportement en aval.
* Utile comme signal de verrouillage pour les blocs dépendant de l'interface (UI) ou pour activer/désactiver la journalisation et les exports lors d'exécutions automatisées.

## 📝 Comment l'utiliser <a href="#usage" id="usage"></a>

1. Placez le bloc à l'endroit où vous devez décider entre comportement UI et non-UI.
2. Connectez la sortie `Check` à des blocs logiques ou de contrôle pour activer/désactiver des branches (par exemple, pour ignorer les sorties visuelles en mode headless).
3. Utilisez le résultat avec des blocs logiques (`And` / `Or` / `Not`) ou des blocs de contrôle de flux pour implémenter un comportement conditionnel.

## 📊 Évaluation <a href="#evaluation" id="evaluation"></a>

Lors de son exécution, ce bloc renvoie un unique booléen sur `Check` indiquant la présence ou l'absence d'une interface utilisateur pour l'exécution en cours.

## 💡 Astuces <a href="#tips-and-tricks" id="tips-and-tricks"></a>

* Pour éviter d'ouvrir des fenêtres sur des serveurs, utilisez `Check` pour contrôler `Show Image` afin que les visionneuses ne s'activent que lorsqu'il n'y a pas de mode headless.
* En exécution headless, préférez sauvegarder les résultats plutôt que de les afficher. Combinez `Check` avec des blocs d'export comme Image Logger, Image Write, Record Video ou CSV Export pour enregistrer automatiquement les sorties en mode headless.
* Utilisez `Check` avec des blocs logiques tels que `Not`, `And` ou `Or` pour créer des règles flexibles (par exemple : sauvegarder les images uniquement quand `Check` est TRUE ET qu'un `Logic Input` est activé).
* Pour les évaluations automatisées, connectez `Check` à `Stop` pour terminer proprement les scénarios basés sur l'UI uniquement quand une interface est présente.

## 🛠️ Dépannage <a href="#troubleshooting" id="troubleshooting"></a>

* Si l'environnement semble headless mais que `Check` renvoie FALSE, vérifiez comment le scénario a été démarré (certains bureaux à distance ou affichages virtuels peuvent apparaître comme une GUI).
* Si vous avez besoin d'un comportement différent pour des configurations partiellement headless (par ex. processus GPU en arrière-plan mais UI occasionnelle), combinez `Check` avec un `Logic Input` manuel pour affiner le contrôle.
