Bonjour,
Je suis plutôt débutant en programmation objet et je retrouve confronter à un problème. Je vais tenter d'expliquer au mieux ce dernier.
En gros j'ai un programme qui contient une classe principale 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 class MainClient : public IClientListener ,public IServerListener{ // Variables de classe protected: Client * a_pobjClient; Serveur * ServeurSubscribe; Serveur * ServeurPublish; CLog * a_pobjTraceClient; CLog * a_pobjTraceServer; bool clientConnected; int nbClient; SOAPCommManager* m_commManager; // Methodes public: MainClient(); virtual ~MainClient(); public: (...) };
une deuxième classe permettant d'utiliser le GSOAP est déclarée (la classe SOAPCommManager)...
Mon problème arrive ici... Lors d'une communication GSOAP des messages m'arrivent sur une fonction de callback...
Je dois alors les traiter (ce qui est fait dans une fonction classique appelé "FormatMessageSOAP()") et les renvoyer après un formatage spécifique à l'aide du Serveur * ServeurPublish déclaré dans la classe MainClient et initialiser dans le constructeur de cette classe.
Mon problème est donc celui là: Comment est ce que je peux utiliser ce ServeurPublish dans ma fonction "FormatMessageSOAP()"
Normalement dans les fonctions membres de MainClient l'appel se fait simplement par un this->ServeurPublish->send(bufferMsgSend,bufferSize);
Mais là je vois pas du tout comment pouvoir utiliser cette fonction send de mon Serveur dans une fonction n'appartenant pas à ma classe MainClient...
J'espère que j'ai été assez clair.
Je m'excuse d'avance si cette question vous parait trivial ou récurrente, mais je n'ai pas réussi à trouver la réponse ou la solution permettant de résoudre mon problème.
Cdlt,
Partager