📄 iapconnectdemoengine.h
字号:
/*
* ============================================================================
* Name : CIAPConnectDemoEngine from ConnMngrDemoEngine.h
* Part of : Internet Access Points Example v2.0
* Created : 01.09.2006 by Forum Nokia
* Version : 2.0
* Copyright: Forum Nokia
* ============================================================================
*/
#ifndef DEMOENGINE_H
#define DEMOENGINE_H
// INCLUDES
#include <in_sock.h>
#include "IAPConnectDemoSocketsObserver.h"
#include "IAPConnectDemoEngineObserver.h"
#include "IAPConnect.hrh"
// FORWARD DECLARATIONS
class CIAPConnectDemoSocketsReader;
class CIAPConnectDemoSocketsWriter;
class CIAPConnectDemoSettings;
class CIAPConnectDemoDataNotification;
// CLASS DECLARATION
class CIAPConnectDemoEngine : public CActive,
public MIAPConnectDemoSocketsObserver
{
public: // Constructors and destructors
/**
* Two-phased constructor
*/
static CIAPConnectDemoEngine* NewL(
MIAPConnectDemoEngineObserver* aObserver,
RConnection& aConnection, RSocketServ& aSocketServ );
/**
* Two-phased constructor
*/
static CIAPConnectDemoEngine* NewLC(
MIAPConnectDemoEngineObserver* aObserver,
RConnection& aConnection, RSocketServ& aSocketServ );
/**
* Destructor
*/
virtual ~CIAPConnectDemoEngine( );
public: // New functions
/**
* Initiates the demo
* @param aSettings the settings used in the demo.
*/
void StartDemoL( CIAPConnectDemoSettings* aSettings );
/**
* Stops the demo
*/
void StopDemoL();
/**
* Disconnects socket.
*/
void DisconnectL();
/**
* Writes data to socket.
* @param aData Data to be written.
*/
void WriteL( const TDesC8& aData );
/**
* Initiates read of data from socket.
*/
void ReadL();
/**
* Checks if socket is fully connected.
* @return ETrue if socket is connected.
*/
TBool Connected() const;
/**
* Handles a change in this object's status.
* @param aNewStatus New status.
*/
void ChangeStatusL( const TIAPConnectDemoEngineStates& aNewStatus );
public: // Functions from base classes
/**
* From MTimeOutNotifier
*/
void TimerExpiredL();
/**
* From MIAPConnectDemoSocketsObserver
*/
void ReportErrorL(
const MIAPConnectDemoSocketsObserver::TDemoErrorType& aErrorType,
const TInt& aErrorCode );
/**
* From MIAPConnectDemoSocketsObserver
*/
void ResponseReceivedL( const TDesC8& aBuffer );
private: // Functions from base classes
/**
* From CActive
*/
void DoCancel();
/**
* From CActive
*/
void RunL();
private:
/**
* Symbian OS default constructor
*/
CIAPConnectDemoEngine(
MIAPConnectDemoEngineObserver* aObserver,
RConnection& aConnection, RSocketServ& aSocketServ );
void ConstructL();
private: // New functions
/**
* Initiates a connect operation on a socket.
* @param aAddr The ip address to connect to.
*/
void ConnectL( TUint32 aAddr );
/**
* Resolves the IP address from a server address.
*/
void ResolveAddressL();
private: // Constants
private: // Data members
TIAPConnectDemoEngineStates iEngineStatus;
RSocket iSocket;
CIAPConnectDemoSocketsReader* iSocketsReader;
CIAPConnectDemoSocketsWriter* iSocketsWriter;
RSocketServ iSocketServ;
RHostResolver iResolver;
TNameEntry iNameEntry;
TNameRecord iNameRecord;
TInetAddr iAddress;
MIAPConnectDemoEngineObserver* iObserver; // Now owned by this class
CIAPConnectDemoSettings* iSettings;
RConnection iConnection;
CIAPConnectDemoDataNotification* iSentDataNotification;
CIAPConnectDemoDataNotification* iReceivedDataNotification;
};
#endif
// End of File
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -