Type de données (DUT)

Présentation

Vous pouvez définir vos propres types de données en plus des types de données standard. Vous pouvez créer des structures, des types d'énumération et des références en tant que type de données (DUT) dans l'éditeur de type de données.

Pour une description d'un type standard spécifique et des types de données définis par l'utilisateur, consultez la description des types de données.

Ajout d'un objet de type de données

Pour ajouter un objet DUT dans une application, sélectionnez le nœud de l'application dans l'arborescence Applications, cliquez sur le signe plus de couleur verte et choisissez DUT.... Vous pouvez aussi cliquer avec le bouton droit sur le nœud et choisir la commande Ajouter un objet > DUT. Pour créer un objet DUT indépendant d'une application, sélectionnez le nœud Global dans l'arborescence Applications. Dans la boîte de dialogue Ajouter DUT, entrez le Nom du nouveau type de données et choisissez le type Structure, Énumération, Alias ou Union souhaité.

Vous pouvez faire en sorte que les objets DUT de type Énumération prennent en charge les listes de textes. Pour plus d'informations, consultez la description de la commande Ajouter support de listes de textes.

Si vous choisissez le type Structure, vous pouvez utiliser le principe d'héritage afin d'assurer la prise en charge de la programmation orientée objet. Si vous le souhaitez, vous pouvez aussi indiquer que le type de données en étend un autre déjà défini dans le projet. Ainsi, les définitions de l'objet DUT étendu seront automatiquement valides dans le type actuel. Pour cela, activez l'option Étendu : et entrez le nom de l'autre DUT.

Cliquez sur Ajouter pour confirmer les paramètres. L'éditeur du nouveau DUT s'ouvre et vous pouvez commencer à le modifier.

Déclaration d'un objet DUT

Syntaxe

TYPE <identifiant> : <déclaration des composants DUT>END_TYPE

La déclaration de composant DUT varie selon le type de DUT, par exemple, une structure ou une énumération.

Exemple

L'exemple suivant contient deux DUT qui définissent les structures struct1 et struct2 ; struct2 étend struct1, ce qui signifie que vous pouvez utiliser struct2.a dans votre implémentation pour accéder à la variable a.

TYPE struct1 :
    STRUCT
        a:INT;
        b:BOOL;
    END_STRUCT
END_TYPE
TYPE struct2 EXTENDS struct1 :
    STRUCT
  c:DWORD;
  d:STRING;
    END_STRUCT
END_TYPE