/** Copyright (c) 2004 Nokia Corporation and/or its subsidiary(-ies). * All rights reserved.* This component and the accompanying materials are made available* under the terms of "Eclipse Public License v1.0"* which accompanies this distribution, and is available* at the URL "http://www.eclipse.org/legal/epl-v10.html".** Initial Contributors:* Nokia Corporation - initial contribution.** Contributors:** Description: NWSessionSlotEvent**/#ifndef __CPENGNWSESSIONSLOTEVENT2_H#define __CPENGNWSESSIONSLOTEVENT2_H// INCLUDES#include <E32Base.h>#include <PEngPresenceEngineConsts2.h>// FORWARD DECLARATIONSclass CPEngNWSessionSlotEvent2Copy;class CPEngNWSessionSlotEventEntry;class CPEngNWSessionSlotID2;// CLASS DECLARATION/** * NWSessionSlotEvent. * * Presents the NWSessionSlotEvent. * * @lib PEngManager2.lib * @since 3.0 */class CPEngNWSessionSlotEvent2 : public CBase { //----------------------------------------------------------------------- protected: /* Construction */ CPEngNWSessionSlotEvent2(); ~CPEngNWSessionSlotEvent2(); public: // Cloning support /** * Creates a new deep copy from NWSessionSlotEvent object. * * Creates a deep copy from NWSessionSlotEvent object and * returns it ownership to client. Created object is placed * on the CleanupStack. * * Created copy is derived from CPEngNWSessionSlotEvent2Copy * interface to allow client to delete created object. * * @since 3.0 * @return New copy from CPEngNWSessionSlotEvent2. * Ownership of created object is returned to calling client. */ IMPORT_C CPEngNWSessionSlotEvent2Copy* CloneLC() const; //----------------------------------------------------------------------- public: /* NWSessionSlotEvent data */ /** * NWSessionSlotID. * ID of changed NWSessionSlot. * * @since 3.0 * @return NWSessionSlotID. */ IMPORT_C const CPEngNWSessionSlotID2& NWSessionSlotID() const; /** * The event. * * @since 3.0 * @return The event */ IMPORT_C TPEngNWSessionSlotEvent Event() const; /** * The NWSessionSlot state after event. * This is the AppID specific state. * (Compare to CSPSessionState() ) * * @since 3.0 * @return NWSessionSlot state after event. */ IMPORT_C TPEngNWSessionSlotState NWSessionSlotState() const; /** * The CSP session state after event. * This is global CSP session state. * * @since 3.0 * @return CSP session state after event. */ IMPORT_C TPEngNWSessionSlotState CSPSessionState() const; /** * Additional event integer. * Content depends from actual TPEngNWSessionSlotEvent. * * @since 3.0 * @return Additional event integer. */ IMPORT_C TInt EventInt() const; /** * Additional event descriptor. * Content meaning depends from actual TPEngNWSessionSlotEvent event * and EventInt. * * @since 3.0 * @return Additional event descriptor. */ IMPORT_C TPtrC EventDesc16() const; //----------------------------------------------------------------------- public: /* Non exported access to implementation */ /** * Presence Engine internal access * to CPEngNWSessionSlotEvent2 implementation. * * @return Implementation. */ CPEngNWSessionSlotEventEntry* Implementation(); const CPEngNWSessionSlotEventEntry* Implementation() const; //----------------------------------------------------------------------- protected: /* Data */ //OWN: Implementation CPEngNWSessionSlotEventEntry* iImp; };/** * This interface offers possibility to client to * control cloned CPEngNWSessionSlotEvent2 object * lifetime. * * @since 3.0 */class CPEngNWSessionSlotEvent2Copy : public CPEngNWSessionSlotEvent2 { public: /* Construction */ /** * Instantiates CPEngNWSessionSlotEvent2 object. * * @return New CPEngNWSessionSlotEvent2 instance. */ static CPEngNWSessionSlotEvent2Copy* NewL(); /** * Destructor. * Virtual by CBase. */ ~CPEngNWSessionSlotEvent2Copy(); protected: /* Construction */ CPEngNWSessionSlotEvent2Copy(); };#endif // __CPENGNWSESSIONSLOTEVENT2_H// End of File