--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/datacommsserver/esockserver/inc/ss_nodeinterfaces.h Thu Dec 17 09:22:25 2009 +0200
@@ -0,0 +1,152 @@
+// Copyright (c) 2005-2009 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:
+//
+
+/**
+ @file
+ @publishedPartner
+ @released
+*/
+
+#ifndef SS_NODEINTERFACES_H
+#define SS_NODEINTERFACES_H
+
+#include <elements/nm_interfaces.h>
+
+namespace ESock
+{
+
+class TCFClientType : public Messages::TClientType
+ {
+public:
+ enum TType
+ {
+ //-=============================================
+ //
+ // 1. Types 32bits (a client can only have one type)
+ //
+ // TClientType = BIT0..BIT7
+ //-=============================================
+
+ EData = 0x00000100, // data client (node to left, 0..*)
+ ECtrl = 0x00000200, // control client (node above, 0..*)
+ EServProvider = 0x00000400, // service provider (node below, 0..*)
+ ECtrlProvider = 0x00000800, // control provider (node to right, 0..1)
+ EAux = 0x00001000, // auxiliary client. The framework will consider the presence of
+ // these when determining the holder's state: auxialiary clients
+ // render the holder not idle. It is ok for auxiliary clients
+ // to be TNodeId::NullCommsId().
+ EFactoryContainer = 0x00002000, // a factory container as a client of central object broker
+ };
+
+ enum TFlags
+ {
+ //-=============================================
+ //
+ // 2. Flags 32bits (a client can have many flags)
+ // (two sub-sections)
+ //
+ // TClientType = BIT0..BIT7
+ //-=============================================
+
+ //-------------------
+ // 2.1. Type extensions (subtypes)
+ //-------------------
+ /**
+ @publishedPartner
+ @released since 9.5
+ */
+ EMonitor = 0x80000000,
+ EDefault = 0x40000000,//for default sub-connection
+ EAttach = 0x20000000,// used by NetUPS to check if a JoinRequest comes from an RConnection::Attach
+
+ /**
+ This flag is internal and not to be used by partner.
+ Indicates that a client is a configuration access point
+ i.e. it should be started after other access points on the layer
+ and should be stopped before other access points on the layer
+
+ @internalComponent
+ */
+ EConfigAccessPoint = 0x10000000,
+
+ //-------------------
+ // 2.2. State Information
+ //-------------------
+ /**
+ @publishedPartner
+ @released since 9.5
+ */
+ EJoining = 0x00000100,//The client has been prepared to be added and awaiting TApply to be formally joined.
+ EActivating = 0x00000200,//Given away at least one handle to this client and awaiting response(s).
+ EActive = 0x00000400,//Given away handle to this client and got a response, i.e.: assuming somebody bound to the client until
+ //the client reports idle. (cleared by TDataClientIdle).
+ EStarting = 0x00000800,//
+ EStarted = 0x00001000,//The client has sent TStarted (cleared by TStopped).
+
+ /**
+ Internal, not to be used by partners
+
+ @internalComponent
+ */
+ EAvailabilityProvider = 0x00004000,
+ };
+
+public:
+ TCFClientType()
+ : Messages::TClientType(EUnknown)
+ {
+ }
+
+ TCFClientType(TUint32 aClientType, TUint32 aClientFlags = 0)
+ : Messages::TClientType(aClientType, aClientFlags)
+ {
+ }
+
+ TUint IsMonitor() const
+ {
+ return iClientFlags & EMonitor;
+ }
+ };
+
+
+//
+//RNodeInterface
+class RCFNodePriorityInterface : public Messages::RNodeInterface
+ {
+public:
+ RCFNodePriorityInterface(TUint aPriority)
+ : iPriority(aPriority)
+ {
+ }
+
+ void SetPriority(TUint aPriority)
+ {
+ iPriority = aPriority;
+ }
+
+ TUint Priority() const
+ {
+ return iPriority;
+ }
+protected:
+ TUint iPriority;
+ };
+
+} //namespace ESock
+
+#endif
+// SS_NODEINTERFACES_H
+
+