00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef ECMTCLIENT_H
00022 #define ECMTCLIENT_H
00023
00024
00025 #include <e32base.h>
00026
00027
00028 class CEcmtServerListener;
00029 class MEcmtServerObserver;
00030
00031
00035 const TInt KFormatMaxSize = 256;
00036
00043 class REcmt : public RSessionBase
00044 {
00045 public:
00046
00050 IMPORT_C REcmt();
00051
00055 IMPORT_C ~REcmt();
00056
00062 IMPORT_C TInt Connect( );
00063
00067 IMPORT_C void Close( );
00068
00074 IMPORT_C void SetServerObserverL( MEcmtServerObserver* aObserver );
00075
00080 IMPORT_C void Write( const TDesC16& aText );
00081
00090 IMPORT_C void WriteFormat(TRefByValue<const TDesC16> aFmt,...);
00091
00097 IMPORT_C void Send( const TUint uid, const TDesC8& aText );
00098
00104 IMPORT_C void SetServerObserverL( TUid aUid, MEcmtServerObserver* aObserver );
00105
00111 IMPORT_C static void SWrite( const TDesC16& aText );
00112
00122 IMPORT_C static void SWriteFormat(TRefByValue<const TDesC16> aFmt,...);
00123
00129 IMPORT_C static void SClose();
00130
00131 private:
00132 static REcmt* GetServer();
00133
00137 void RequestServerNotification( TDes8& aDes, TRequestStatus& aStatus );
00138
00142 void CancelRequestServerNotification( );
00143
00144 private:
00145 MEcmtServerObserver* iObserver;
00146 CEcmtServerListener* iServerListener;
00147 friend class CEcmtServerListener;
00148 };
00149 #endif
00150