attraper
les
exceptions
YAPI.DisableExceptions()
chaque fonction sont systématiquement remplacées par des valeurs de retour particulières, qui
peuvent être testées par l'appelant lorsque c'est pertinent. Le nom de la valeur de retour en cas
d'erreur pour chaque fonction est systématiquement documenté dans la référence de la librairie. Il
suit
toujours
la
même
Y_STATE_INVALID
Y_CURRENTVALUE_INVALID
ne sera pas un pointeur nul qui risquerait de faire crasher votre programme. Au pire, si vous affichez
la valeur sans la tester, elle sera hors du cadre attendu pour la valeur retournée. Dans le cas de
fonctions qui ne retournent à priori pas d'information, la valeur de retour sera
tout va bien, et un code d'erreur différent en cas d'échec.
Quand vous travaillez sans les exceptions, il est possible d'obtenir un code d'erreur et un message
expliquant l'origine de l'erreur en le demandant à l'objet qui a retourné une erreur à l'aide des
méthodes
errType()
associées à l'exception si elles avaient été actives.
9.4. Intégration de la librairie Yoctopuce en C++
Selon vos besoins et vos préférences, vous pouvez être mené à intégrer de différentes manières la
librairie à vos projets. Cette section explique comment implémenter les différentes options.
Intégration au format source (recommandé)
L'intégration de toutes les sources de la librairie dans vos projets a plusieurs avantages:
• Elle garanti le respect des conventions de compilation de votre projet (32/64 bits, inclusion des
symboles de debug, caractères unicode ou ASCII, etc.);
• Elle facilite le déboggage si vous cherchez la cause d'un problème lié à la librairie Yoctopuce
• Elle réduit les dépendances sur des composants tiers, par exemple pour parer au cas où vous
pourriez être mené à recompiler ce projet pour une architecture différente dans de
nombreuses années.
• Elle ne requiert pas l'installation d'une librairie dynamique spécifique à Yoctopuce sur le
système final, tout est dans l'exécutable.
Pour intégrer le code source, le plus simple est d'inclure simplement le répertoire
librairie Yoctopuce à votre IncludePath, et d'ajouter tous les fichiers de ce répertoire (y compris le
sous-répertoire
yapi
Pour que votre projet se construise ensuite correctement, il faudra linker avec votre projet les
librairies systèmes requises, à savoir:
• Pour Windows: les librairies sont mises automatiquement
• Pour Mac OS X: IOKit.framework et CoreFoundation.framework
• Pour Linux: libm, libpthread, libusb1.0 et libstdc++
Intégration en librairie statique
L'intégration de de la librairie Yoctopuce sous forme de librairie statique permet une compilation
rapide du programme en une seule commande. Elle ne requiert pas non plus l'installation d'une
librairie dynamique spécifique à Yoctopuce sur le système final, tout est dans l'exécutable.
Pour utiliser la librairie statique, il faut la compiler à l'aide du shell script
sous Windows. Ce script qui se situe à la racine de la librairie, détecte l'OS et
build.bat
recompile toutes les librairies ainsi que les exemples correspondants.
Ensuite, pour intégrer la librairie statique Yoctopuce à votre projet, vous devez inclure le répertoire
de la librairie Yoctopuce à votre IncludePath, et ajouter le sous-répertoire de
Sources
correspondant à votre système d'exploitation à votre LibPath.
Binaries/...
www.yoctopuce.com
à
chaque
pour commuter la librairie dans un mode où les exceptions de
logique:
une
,
une
méthode
, etc. Dans tous les cas, la valeur retournée sera du type attendu, et
et
errMessage()
) à votre projet.
ligne
de
code.
Il
méthode
get_state()
get_currentValue
. Ce sont les même informations qui auraient été
9. Utilisation du Yocto-4-20mA-Tx en C++
suffit
d'appeler
la
retournera
une
retournera
une
YAPI_SUCCESS
Sources
sous UNIX, ou
build.sh
fonction
valeur
valeur
si
de la
59