S60 3rd Edition SDK for Symbian OS
Example Applications Guide

SIPExSIPIdleState.h

00001 /*
00002 * ==============================================================================
00003 *  Name        : SIPExSIPIdleState.h
00004 *  Part of     : SIPExSIPEngine
00005 *  Interface   : 
00006 *  Description : 
00007 *  Version     : 
00008 *
00009 *  Copyright (c) 2004-2006 Nokia Corporation.
00010 *  This material, including documentation and any related 
00011 *  computer programs, is protected by copyright controlled by 
00012 *  Nokia Corporation.
00013 * ==============================================================================
00014 */
00015 
00016 #ifndef _SIPEXSIPIDLESTATE_H_
00017 #define _SIPEXSIPIDLESTATE_H_
00018 
00019 
00020 //  INCLUDES
00021 #include "SIPExSIPStateBase.h"
00022 
00023 // FORWARD DECLARATIONS
00024 class CSIPExSIPEngine;
00025 
00026 
00027 // CLASS DECLARATION
00028 /**
00029 * Reacts to events that are possible in 
00030 * "Idle" state.
00031 */
00032 class CSIPExSIPIdleState: public CSIPExSIPStateBase
00033         {
00034         public:// Constructors and destructor
00035         /**
00036         * Two-phased constructor.
00037         */
00038                 IMPORT_C static CSIPExSIPIdleState* NewL();
00039 
00040                 /**
00041                 * Destructor
00042                 */
00043                 IMPORT_C virtual ~CSIPExSIPIdleState();
00044 
00045         public://new functions
00046                 /**
00047                 * Links the states
00048                 * @param aClientEstablishingState Invitation with media parameters is sent to peer.
00049                 * @param aServerOfferingState Invitation with media parameters is received from peer.
00050                 */
00051                 void LinkStates(
00052                         CSIPExSIPStateBase& aClientEstablishingState,
00053                         CSIPExSIPStateBase& aServerOfferingState );
00054 
00055         public://functions from base class
00056         
00057                 /**
00058                 * SendInviteL
00059                 * Sends an INVITE to peer.
00060                 * @param aEngine Reference to SIP Engine.
00061                 * @param aSipUri uri of recipient.
00062                 */
00063                 void SendInviteL( CSIPExSIPEngine& aEngine,
00064                                                   const TDesC8& aSipUri );
00065                         
00066                 /**
00067                 * InviteReceivedL
00068                 * INVITE has been received.
00069                 * @param aEngine Reference to SIP Engine.
00070                 * @param aTransaction Contains response elements.
00071                 * The ownership is transferred.
00072                 */
00073                 void InviteReceivedL(
00074                         CSIPExSIPEngine& aEngine,
00075                         CSIPServerTransaction* aTransaction );
00076 
00077         private:
00078             /**
00079                 * C++ default constructor.
00080                 */
00081                 CSIPExSIPIdleState();
00082 
00083         private:        //data members
00084                 CSIPExSIPStateBase* iClientEstablishingState;
00085                 CSIPExSIPStateBase* iServerOfferingState;
00086         };
00087 
00088 #endif // _SIPEXSIPINITSTATE_H_
00089 

© Nokia 2006

Back to top