diff options
-rw-r--r-- | Ivy/IvyApplication.h | 80 |
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_)
|