summaryrefslogtreecommitdiff
path: root/Bus/Ivy/Ivy.h
diff options
context:
space:
mode:
Diffstat (limited to 'Bus/Ivy/Ivy.h')
-rw-r--r--Bus/Ivy/Ivy.h52
1 files changed, 27 insertions, 25 deletions
diff --git a/Bus/Ivy/Ivy.h b/Bus/Ivy/Ivy.h
index fea2a93..7536f32 100644
--- a/Bus/Ivy/Ivy.h
+++ b/Bus/Ivy/Ivy.h
@@ -28,18 +28,41 @@ class _declspec(dllimport) CBufferedSocket;
#include "IvyCallback.h"
-class IvyWatcher;
-
-class IvyApplication;
class Ivy
{
+ friend class IvyWatcher;
+
+ friend class IvyApplication;
+
private:
int regexp_id;
unsigned int applicationPort;
void SendSubscriptions(IvyApplication *app);
+ bool synchronous; // use Window Shink to made CB mono thread like
+ IvyApplication * server;
+ IvyWatcher * watcher;
+ IvyDieCallback *die_callback;
+ IvyDirectMessageCallback *direct_callback;
+ IvyApplicationCallback *application_callback;
+ /* list des adresses de broadcast */
+ ivy::string domain;
+ /* nom de l'appliction */
+ ivy::string appname;
+ /* liste des clients connectes */
+ CRITICAL_SECTION m_application_cs;
+ typedef ivy::list<IvyApplication*> IvyApplicationList;
+ IvyApplicationList applications;
-public:
+ /* liste des souscriptions locale a emettre aux autres applications */
+ ivy::vector<ivy::string> regexp_out;
+ /* liste des callbacks a appeler */
+ ivy::vector< IvyMessageCallback* > callbacks;
+ /* classes de messages emis par l'application utilise pour le filtrage */
+ int messages_classes_count;
+ const char **messages_classes;
+
+protected:
void AddApplication( IvyApplication *app );
void RemoveApplication( IvyApplication *app);
@@ -75,27 +98,6 @@ public:
ivy::string ready_message;
protected:
- bool synchronous; // use Window Shink to made CB mono thread like
- IvyApplication * server;
- IvyWatcher * watcher;
- IvyDieCallback *die_callback;
- IvyDirectMessageCallback *direct_callback;
- IvyApplicationCallback *application_callback;
- /* list des adresses de broadcast */
- ivy::string domain;
- /* nom de l'appliction */
- ivy::string appname;
- /* liste des clients connectes */
- CRITICAL_SECTION m_application_cs;
- typedef ivy::list<IvyApplication*> IvyApplicationList;
- IvyApplicationList applications;
- /* liste des souscriptions locale a emettre aux autres applications */
- ivy::vector<ivy::string> regexp_out;
- /* liste des callbacks a appeler */
- ivy::vector< IvyMessageCallback* > callbacks;
- /* classes de messages emis par l'application utilise pour le filtrage */
- int messages_classes_count;
- const char **messages_classes;
};