networkcontrol/ipnetworklayer/src/IPProtoCPR.cpp
changeset 60 d69860d28da4
parent 51 78fceed50f62
equal deleted inserted replaced
51:78fceed50f62 60:d69860d28da4
    54 using namespace MeshMachine;
    54 using namespace MeshMachine;
    55 using namespace IpProtoCpr;
    55 using namespace IpProtoCpr;
    56 using namespace ESock;
    56 using namespace ESock;
    57 using namespace NetStateMachine;
    57 using namespace NetStateMachine;
    58 using namespace PRActivities;
    58 using namespace PRActivities;
    59 
       
    60 
       
    61 
       
    62 //We reserve space for two preallocated activities that may start concurrently on the CPR
       
    63 //node: destroy and data client stop.
       
    64 static const TUint KDefaultMaxPreallocatedActivityCount = 2;
       
    65 static const TUint KMaxPreallocatedActivitySize = sizeof(MeshMachine::CNodeRetryParallelActivity) + sizeof(MeshMachine::APreallocatedOriginators<4>);
       
    66 static const TUint KIPProtoCPRPreallocatedActivityBufferSize = KDefaultMaxPreallocatedActivityCount * KMaxPreallocatedActivitySize;
       
    67 
    59 
    68 //-=========================================================
    60 //-=========================================================
    69 //
    61 //
    70 // Activities
    62 // Activities
    71 //
    63 //
   295 void CIPProtoConnectionProvider::ConstructL()
   287 void CIPProtoConnectionProvider::ConstructL()
   296     {
   288     {
   297     iTimer = COneShotTimer::NewL(ESocketTimerPriority, this);
   289     iTimer = COneShotTimer::NewL(ESocketTimerPriority, this);
   298 
   290 
   299     ADataMonitoringProvider::ConstructL();
   291     ADataMonitoringProvider::ConstructL();
   300     CCoreConnectionProvider::ConstructL(KIPProtoCPRPreallocatedActivityBufferSize);
   292     CCoreConnectionProvider::ConstructL();
   301     }
   293     }
   302 
   294 
   303 void CIPProtoConnectionProvider::ReturnInterfacePtrL(ADataMonitoringProtocolReq*& aInterface)
   295 void CIPProtoConnectionProvider::ReturnInterfacePtrL(ADataMonitoringProtocolReq*& aInterface)
   304 	{
   296 	{
   305 	aInterface = this;
   297 	aInterface = this;