Re: question de Cpp et signaux

Startseite

Nachricht beantworten
Autor: ML Guilde
Datum:  
To: ML Guilde
Betreff: Re: question de Cpp et signaux
Le samedi 1 Mai 2004 20:37, Gauthier DELERCE a écrit :

> *******
> void fct1(pvoid data) //une fonction globale qui gere des interruptions
> {
>
> if(interruptionSympa) executer_une_methode_de_objet1
>
> }
>
> int main
> {
> Class1 objet1
> }
> *******
>
> Mon but est qu'a chaque interruption interessante je puisse executer une
> methode de objet1, cela devrait pouvoir se faire par des signaux/slots
> mais je ne peux/sais pas connecter un slot de objet1 avec un signal emis
> en dehors du main.


Peux-tu nous en dire un peu plus ? Tu parles de signaux/slots...
Developpes-tu sous Qt (ou autre toolkit graphique utilisant cette
technique) ?

Une solution consite a creer un manager (un singleton) qui gere ton (ou tes)
objet(s) a appeler. Ici, il n'y aurait que objet1. Cet objet serait
enregistre dans le manager, juste apres sa creation (dans le main()).

Ensuite, dans ta fonction d'IT, tu utilises le manager pour retrouver ton
instance objet1, et tu appelles la methode qui va bien.

L'interface de ton manager serait simple (je passe sous silence la
definition du singleton; je te laisse chercher sur google):

class Manager {

    void add(name, char*);
    char* get(name);
    void del(name);
}


La variable 'name' est juste la pour retrouver le(s) objet(s) dans le
manager.

--
Frederic