00001 #ifndef __CHM_WRAPPER_H__ 00002 #define __CHM_WRAPPER_H__ 00003 //--------------------------------------------------------------------------- 00004 // Copyright (C) 1997-2007 iNTERFACEWARE Inc. All Rights Reserved 00005 // 00006 // Module: CHMwrapper 00007 // 00008 // Author: Greg Norman 00009 // Revision: $Revision: 1.11 $ 00010 // 00011 // Last Edit Date: $Date: 2010-03-01 14:23:08 $ 00012 // Source: $Source: /home/cvs/cvsroot/CHM/CHMwrapper.h,v $ 00013 //--------------------------------------------------------------------------- 00014 00015 #include <CHM/CHMminimumInclude.h> 00016 class CHMstring; 00017 class CHMtransport; 00018 class CHMengine; 00019 00020 class CHMwrapperPrivate; 00021 00043 class CHMwrapper 00044 { 00045 public: 00047 CHMwrapper(); 00048 00050 virtual ~CHMwrapper(); 00051 00053 virtual void AddWrapper(CHMstring& MessageData)=0; 00054 00056 void ClearData(size_t TransportIndex); 00057 00064 virtual CHMboolean DetectMessage(CHMstring& Buffer, 00065 CHMstring& Message)=0; 00066 00068 CHMengine* Engine(); 00069 00071 virtual void OnMessage(const CHMstring& MessageData, 00072 size_t TransportIndex); 00073 00077 virtual size_t ReceiveData(const CHMstring& Data, 00078 size_t TransportIndex); 00079 00083 void SendResponseMessage(const CHMstring& MessageData, 00084 size_t TransportIndex); 00085 00087 void SetEngine(CHMengine* pEngine); 00088 00090 CHMtransport* Transport(); 00091 00092 private: 00093 CHMwrapper(CHMwrapper& Orig); 00094 CHMwrapper& operator=(CHMwrapper& Orig); 00095 00096 CHMwrapperPrivate* pMember; 00097 }; 00098 00099 #endif // end of defensive include