00001 #ifndef __CHM_TRANSPORT_H__ 00002 #define __CHM_TRANSPORT_H__ 00003 00004 //--------------------------------------------------------------------------- 00005 // Copyright (C) 1997-2007 iNTERFACEWARE Inc. All Rights Reserved 00006 // 00007 // Module: CHMtransport 00008 // 00009 // Author: Greg Norman 00010 // Revision: $Revision: 1.8 $ 00011 // 00012 // Last Edit Date: $Date: 2007-02-12 21:35:42 $ 00013 // Source: $Source: /home/cvs/cvsroot/CHM/CHMtransport.h,v $ 00014 //--------------------------------------------------------------------------- 00015 #include <CHM/CHMminimumInclude.h> 00016 class CHMstring; 00017 class CHMengine; 00018 class CHMwrapper; 00019 class CHMoutputLog; 00020 00029 class CHMtransport 00030 { 00031 public: 00033 CHMtransport(); 00034 00036 virtual ~CHMtransport(); 00037 00039 CHMengine* Engine() { return m_pEngine; } 00040 00042 CHMoutputLog* Log(); 00043 00047 virtual void OnError(size_t Code, const CHMchar* Description); 00048 00054 virtual void SendResponseMessage(const CHMstring& MessageData, 00055 size_t TransportIndex)=0; 00056 00060 void SetEngine(CHMengine* pEngine) { m_pEngine = pEngine; } 00061 00065 CHMwrapper* Wrapper(); 00066 00067 private: 00068 CHMengine* m_pEngine; 00069 // not allowed 00070 CHMtransport(const CHMtransport& Orig); 00071 CHMtransport& operator=(const CHMtransport& Orig); 00072 }; 00073 00074 #endif // end of defensive include