inc/CPEngNWSessionSlotEvent2.h
changeset 0 094583676ce7
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/inc/CPEngNWSessionSlotEvent2.h	Thu Dec 17 08:41:52 2009 +0200
@@ -0,0 +1,202 @@
+/*
+* 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 DECLARATIONS
+class 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
+
+