diff -r 405674398db4 -r c34f57d8afa7 commsfwsupport/commselements/meshmachine/inc/mm_activities.h --- a/commsfwsupport/commselements/meshmachine/inc/mm_activities.h Fri Sep 24 15:38:33 2010 +0100 +++ b/commsfwsupport/commselements/meshmachine/inc/mm_activities.h Tue Oct 05 15:20:13 2010 +0100 @@ -39,6 +39,20 @@ //-========================================================= // +//Panics +// +//-========================================================= +_LIT (KMMActivityPanic,"MMActivityPanic"); +enum + { + EPanicCorruptedContext = 1, + EPanicNoPreallocatedSpace = 2, + EPanicOutOfActivities = 3, + EPanicOutOfBounds + }; + +//-========================================================= +// // MACROS // //-========================================================= @@ -1048,7 +1062,7 @@ @param aNode The node to which this activity will belong. @return Generated unique component of activity id */ - static TUint GetNextActivityCountL( const TNodeActivity& aActivitySig, const AMMNodeBase& aNode ); + IMPORT_C static TUint GetNextActivityCountL( const TNodeActivity& aActivitySig, const AMMNodeBase& aNode ); /** For use by custom activity News to generate the unique part of the activity id. @param aActivitySig Context information about how the activity is to be started @@ -1065,6 +1079,15 @@ */ IMPORT_C CNodeParallelActivityBase( const TNodeActivity& aActivitySig, AMMNodeBase& aNode, TUint aNextActivityCount ); +private: + /** + For use by custom activity NewLs to generate the unique part of the activity id. + @param aActivitySig Context information about how the activity is to be started + @param aNode The node to which this activity will belong. + @return Generated unique component of activity id + */ + static TUint DoGetNextActivityCountL( const TNodeActivity& aActivitySig, const AMMNodeBase& aNode ); + protected: /** The activity id. The id format is [8 bit unique id|8 bit activity sig]. @@ -1597,13 +1620,6 @@ static MeshMachine::CNodeActivityBase* NewL(const MeshMachine::TNodeActivity& aActivitySig, MeshMachine::AMMNodeBase& aNode); }; - -inline TUint CNodeParallelActivityBase::GetNextActivityCountL( const TNodeActivity& aActivitySig, const AMMNodeBase& aNode ) - { - //Historical. Method ceased to leave, but must keep the old, L-ending overload. - return GetNextActivityCount(aActivitySig, aNode); - } - //By default we reserve the space for preallocated activities generously, to fit even a synchronised activity preallocating space for up to 3 originators. //Any node, hosting specific activities that may need the preallocation mechanism can choose a more optimal amounts. //For efficiency reasons it is strongly recommended that any node (or family of nodes) is revisited and an optimal