--- a/datacommsserver/esockserver/core_states/ss_coreprstates.h Fri Mar 12 15:49:41 2010 +0200
+++ b/datacommsserver/esockserver/core_states/ss_coreprstates.h Mon Mar 15 12:45:15 2010 +0200
@@ -797,6 +797,8 @@
//
//-=========================================================
const TInt KParamsPresent = 4000;
+const TInt KOrphans = 4001;
+const TInt KContinue = 4002;
//-=========================================================
//
@@ -817,6 +819,22 @@
//
//-=========================================================
+DECLARE_SMELEMENT_HEADER( TOrphansOrNoTag, MeshMachine::TStateFork<TContext>, NetStateMachine::MStateFork, TContext)
+ virtual TInt TransitionTag();
+DECLARE_SMELEMENT_FOOTER( TOrphansOrNoTag )
+
+DECLARE_SMELEMENT_HEADER( TOrphansBackwardsOrNoTag, MeshMachine::TStateFork<TContext>, NetStateMachine::MStateFork, TContext)
+ virtual TInt TransitionTag();
+DECLARE_SMELEMENT_FOOTER( TOrphansBackwardsOrNoTag )
+
+DECLARE_SMELEMENT_HEADER( TNoTagBackwardsOrNoClients, MeshMachine::TStateFork<TContext>, NetStateMachine::MStateFork, TContext)
+ virtual TInt TransitionTag();
+DECLARE_SMELEMENT_FOOTER( TNoTagBackwardsOrNoClients )
+
+DECLARE_SMELEMENT_HEADER( TNonLeavingNoTagOrNoClients, MeshMachine::TStateFork<TContext>, NetStateMachine::MStateFork, TContext)
+ virtual TInt TransitionTag();
+DECLARE_SMELEMENT_FOOTER( TNonLeavingNoTagOrNoClients )
+
//-=========================================================
//
//State Transitions
@@ -871,6 +889,13 @@
CoreNetStates::TSendDataClientIdleIfNoClients
)
+DECLARE_AGGREGATED_TRANSITION3(
+ TProcessClientLeft,
+ MeshMachine::TRemoveClient,
+ PRStates::TDestroyOrphanedDataClients,
+ CoreNetStates::TSendDataClientIdleIfNoClients
+ )
+
DECLARE_AGGREGATED_TRANSITION4(
TProcessDestroy,
CoreStates::TAbortAllActivitiesNodeDeletion,
@@ -960,6 +985,15 @@
CoreStates::TPostToOriginators
)
+void DestroyFirstClient(const Messages::TClientType& aIncClientType, const Messages::TClientType& aExcClientType = Messages::TClientType::NullType());
+
+DECLARE_SMELEMENT_HEADER( TDestroyFirstOrphan, MeshMachine::TStateTransition<TContext>, NetStateMachine::MStateTransition, TContext)
+ virtual void DoL();
+DECLARE_SMELEMENT_FOOTER( TDestroyFirstOrphan )
+
+DECLARE_SMELEMENT_HEADER( TDestroyFirstClient, MeshMachine::TStateTransition<TContext>, NetStateMachine::MStateTransition, TContext)
+ virtual void DoL();
+DECLARE_SMELEMENT_FOOTER( TDestroyFirstClient )
} //namespace PRStates
#endif //SYMBIAN_SS_COREPRSTATES_H