Voici le code des fonctions _malloc et _free à placer dans le fichier qtsi1.cpp : // ************************
_malloc *********************** hBuffer=GlobalAlloc(GHND,longueur); // ********************
_free ****************** hBuffer=GlobalHandle(block); Nous devons à présent écrire un petit script Tcl qui va permettre d'appeler la fonction qm_window efficacement (utilisez pour cela un petite traitement de texte comme WordPad) : ############################# if
{[llength $audace(box)] == 4} { Sauvegardez ce script sous le nom qm.tcl (par exemple) dans le répertoire du logiciel AUDACE. Ce simple script permet d'exploiter la fonction de fenêtrage intéractivement : vous définissez un rectangle dans l'image (en glissant avec la souris tout en appuyant sur le bouton gauche), puis vous tapez la commande q_window depuis la console. Le fonction q_window qui est définie dans le script vérifie tout d'abord que vous avez bien défini un rectangle dans l'image (les coordonnées de ce rectangle sont situées dans la variable liste audace(box)). Les coordonnées des deux coins opposés du rectangle sont passées ensuite à la fonction qm_window qui se situe dans votre bibliothèque. Pour finir, l'image modifiée est est affichée à l'écran. D'une manière générale il est opportun d'appeler vos fonctions C depuis un script Tcl qui est propre à votre bibliothèque. Par exemple pour la fonction offset vous pourriez ajouter le script suivant dans le fichier qm.tcl : ############################# if
{[llength $args] == 1} { Ainsi pour additionner une constante à une image vous pouvez faire : q_offset 500 au lieu de : qm_offset 500 La première manière enchaîne automatiquement une visualisation à la suite du calcul d'offset. Pour rendre accessibles toutes les fonctions de votre librairie il suffit de charger votre fichier de script qm.tcl depuis AUDACE. Pour cela éditez le fichier aud.tcl et au tout debut ajoutez la ligne : source qm.tcl Les premières lignes de aud.tcl vont donc ressembler à ceci : source combobox.tcl Lorsque vous distribuez votre librairie il faudra donc fournir les fichiers qm.tcl et libqm.dll. A vous de faire vivre à présent le langage Tcl en y ajoutant toutes les fonctions de votre choix !
|