IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Boost C++ Discussion :

[Signal] faire suivre un signal


Sujet :

Boost C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 8
    Par défaut [Signal] faire suivre un signal
    Bonjour,
    j'utilise signal et j'ai besoins de faire suivre un signal.
    En gros de pouvoir connecter un signal sur un autre sans refaire l'émission dans un slot intermédiaire.
    Savez vous si cela est possible directement dans signal?

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    87
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Avril 2008
    Messages : 87
    Par défaut
    en tout cas, y'a pas ca dans le tutorial. j'y ai pensé un jour aussi parce que je voulais connecter un même slot sur plusieurs signaux, ce qui normalement est sensé fonctionner. mais pour moi ca n'a jamais marché, peut etre parce que je stockait le slot qui était 'setté' par un acteur exterieur (dans un scoped_ptr) en attendant de se faire connecter. finalement j'ai changé le concept en faisant comme toi, un solt intermediaire qui relance un signal a un autre slot.

    du coup bof bof. mais je ne crois pas que ca ait trop de sens ce qu'on veut en fait. pourquoi ne pas utiliser le multi slot ? on peut tres bien connecter avec connect(1, myslot) et connect(2, myslot2) pour avoir des appels qui respectent un ordre. (voir tutoriel pour syntaxe exacte)
    ca devrait etre suffisant en fait.

  3. #3
    Rédacteur
    Avatar de 3DArchi
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    7 634
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 7 634
    Par défaut
    Salut,
    Je me demande si j'ai bien compris la question
    Car sinon qu'est ce qui t'empêche de connecter comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    #include <iostream>
    #include <boost\signal.hpp>
    #include <boost\bind.hpp>
    #include <boost\lexical_cast.hpp>
    #include <string>
     
     
    void do_it(int i_)
    {
       std::cout<<"do_it - "<<i_<<"\n";
    }
     
    int main()
    {
     
       boost::signal<void (int)> sig1;
     
       sig1.connect(do_it);
       sig1(1);
     
     
       boost::signal<void ()> sig2;
       sig2.connect(boost::bind(boost::cref(sig1),2));
       sig2();
     
       boost::signal<void (std::string,int)> sig3;
       sig3.connect(boost::bind(boost::cref(sig1),_2));
       sig3("3",3);
     
       boost::signal<void (std::string)> sig4;
       sig4.connect(boost::bind(boost::cref(sig1),boost::bind(boost::lexical_cast<int,std::string>,_1)));
       sig4("4");
     
       return 0;
    }

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 8
    Par défaut [Resolu]
    Bonjour et merci pour vos réponses.

    3DArchi:
    Je pense que c'est ce que je cherchai je vais essayer ça.

    Merci.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Mail] faire suivre une url
    Par veulemans dans le forum Langage
    Réponses: 3
    Dernier message: 22/05/2006, 17h15
  2. Réponses: 1
    Dernier message: 06/04/2006, 15h35
  3. [VBA-W]Comment faire suivre les macros d'un modèle?
    Par gusrom86 dans le forum VBA Word
    Réponses: 7
    Dernier message: 23/02/2006, 10h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo