summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Ivy/IvyApplication.h80
1 files changed, 80 insertions, 0 deletions
diff --git a/Ivy/IvyApplication.h b/Ivy/IvyApplication.h
new file mode 100644
index 0000000..8884735
--- /dev/null
+++ b/Ivy/IvyApplication.h
@@ -0,0 +1,80 @@
+#if !defined(AFX_BUSAPPLICATION_H__F7F08FE8_E653_11D0_AE3E_080009F92591__INCLUDED_)
+#define AFX_BUSAPPLICATION_H__F7F08FE8_E653_11D0_AE3E_080009F92591__INCLUDED_
+
+#if _MSC_VER >= 1000
+#pragma once
+#endif // _MSC_VER >= 1000
+// IvyApplication.h : header file
+//
+#include "BufferedSocket.h"
+#include "Ivy.h"
+
+class Regexp;
+
+/////////////////////////////////////////////////////////////////////////////
+// IvyApplication command target
+
+class IvyApplication : public CBufferedSocket
+{
+// Attributes
+public:
+
+
+ typedef enum {
+
+ Bye, /* quit l'application ( non utilise ) */
+ AddRegexp, /* expression reguliere d'un client */
+ Msg, /* message reel */
+ Error, /* error message */
+ DelRegexp, /* Remove expression reguliere */
+ EndRegexp, /* end of the regexp list */
+ StartRegexp, /* debut des expressions */
+ DirectMsg, /* message direct a destination de l'appli */
+ Die /* demande de terminaison de l'appli */
+
+ }MsgType;
+
+
+// Operations
+public:
+ IvyApplication(Ivy *bus);
+ virtual ~IvyApplication();
+
+// Overrides
+public:
+ BOOL SameApplication( IvyApplication *app );
+ UINT remoteService;
+ const char *GetName(void);
+ int SendMsg( const char *message );
+ void SendMsg( MsgType msg, int id, const char * arg = NULL);
+ UINT Create();
+ void OnReceive( char *line );
+ void Create( const char * host, UINT &port );
+ // ClassWizard generated virtual function overrides
+ //{{AFX_VIRTUAL(IvyApplication)
+ public:
+ virtual void OnAccept(int nErrorCode);
+ virtual void OnClose(int nErrorCode);
+ //}}AFX_VIRTUAL
+
+ // Generated message map functions
+ //{{AFX_MSG(IvyApplication)
+ // NOTE - the ClassWizard will add and remove member functions here.
+ //}}AFX_MSG
+
+// Implementation
+protected:
+ string appname;
+ bool AppConnectedCallbackCalled;
+ Ivy *bus;
+ /* liste des souscriptions remote */
+ vector<Regexp*> regexp_in;
+
+};
+
+/////////////////////////////////////////////////////////////////////////////
+
+//{{AFX_INSERT_LOCATION}}
+// Microsoft Developer Studio will insert additional declarations immediately before the previous line.
+
+#endif // !defined(AFX_BUSAPPLICATION_H__F7F08FE8_E653_11D0_AE3E_080009F92591__INCLUDED_)