datacommsserver/esockserver/core_states/ss_corepractivities.h
changeset 1 21d2ab05f085
parent 0 dfb7c4ff071f
child 14 8b5d60ce1e94
equal deleted inserted replaced
0:dfb7c4ff071f 1:21d2ab05f085
   172     IMPORT_C static MeshMachine::CNodeActivityBase* New(const MeshMachine::TNodeActivity& aActivitySig, MeshMachine::AMMNodeBase& aNode);
   172     IMPORT_C static MeshMachine::CNodeActivityBase* New(const MeshMachine::TNodeActivity& aActivitySig, MeshMachine::AMMNodeBase& aNode);
   173 
   173 
   174 protected:
   174 protected:
   175 	CDestroyActivity(const MeshMachine::TNodeActivity& aActivitySig, MeshMachine::AMMNodeBase& aNode);
   175 	CDestroyActivity(const MeshMachine::TNodeActivity& aActivitySig, MeshMachine::AMMNodeBase& aNode);
   176 	virtual void Destroy();
   176 	virtual void Destroy();
       
   177 	virtual TBool Next(MeshMachine::TNodeContextBase& aContext);
   177 
   178 
   178 //States, StateForks & StateTransitions
   179 //States, StateForks & StateTransitions
   179 protected:
   180 protected:
   180 	typedef CoreStates::TContext TContext;
   181 	typedef CoreStates::TContext TContext;
   181 
   182 
   433 
   434 
   434 protected:
   435 protected:
   435 	IMPORT_C CBindToActivity(const MeshMachine::TNodeActivity& aActivitySig,  MeshMachine::AMMNodeBase& aNode, TInt aNextActivityCount);
   436 	IMPORT_C CBindToActivity(const MeshMachine::TNodeActivity& aActivitySig,  MeshMachine::AMMNodeBase& aNode, TInt aNextActivityCount);
   436 
   437 
   437 protected:
   438 protected:
   438 	Messages::RNodeInterface* iNewServiceProvider;
   439 	// We cannot store iNewServiceProvider as an RNodeInterface* in case an activity (like GoneDown) executes simultaneously and removes
       
   440 	// the client we hold a reference to.  Hence use the NodeId and lookup the corresponding RNodeInterface* as and when required.
       
   441     Messages::TNodeId iNewServiceProvider;
   439 private:
   442 private:
   440 	Messages::RNodeInterface* iCurrentDataClient;
   443 	Messages::RNodeInterface* iCurrentDataClient;
   441 	RPointerArray<Messages::RNodeInterface> iSuccessfulDataClients;
   444 	RPointerArray<Messages::RNodeInterface> iSuccessfulDataClients;
   442 	TInt iFlags;
   445 	TInt iFlags;
   443 
   446