harvester/common/src/harvestereventmanager.cpp
changeset 36 aa5a574040a4
parent 35 f727727520eb
child 40 910a23996aa0
equal deleted inserted replaced
35:f727727520eb 36:aa5a574040a4
    16 */
    16 */
    17 #include <e32svr.h>
    17 #include <e32svr.h>
    18 
    18 
    19 #include "harvestereventmanager.h"
    19 #include "harvestereventmanager.h"
    20 #include "harvesterlog.h"
    20 #include "harvesterlog.h"
       
    21 #include "OstTraceDefinitions.h"
       
    22 #ifdef OST_TRACE_COMPILER_IN_USE
       
    23 #include "harvestereventmanagerTraces.h"
       
    24 #endif
       
    25 
    21 
    26 
    22 const TInt KHarvesterEventManagerTLSKey = 0x200104D9;
    27 const TInt KHarvesterEventManagerTLSKey = 0x200104D9;
    23 
    28 
    24 CHarvesterEventManager::CHarvesterEventManager()
    29 CHarvesterEventManager::CHarvesterEventManager()
    25 	{
    30 	{
    45 	}
    50 	}
    46 
    51 
    47 EXPORT_C CHarvesterEventManager* CHarvesterEventManager::GetInstanceL()
    52 EXPORT_C CHarvesterEventManager* CHarvesterEventManager::GetInstanceL()
    48 	{
    53 	{
    49 	WRITELOG( "CHarvesterEventManager::GetInstanceL" );
    54 	WRITELOG( "CHarvesterEventManager::GetInstanceL" );
       
    55 	OstTrace0( TRACE_NORMAL, CHARVESTEREVENTMANAGER_GETINSTANCEL, "CHarvesterEventManager::GetInstanceL" );	
    50 
    56 
    51 	CHarvesterEventManagerStaticData* data = 
    57 	CHarvesterEventManagerStaticData* data = 
    52 		static_cast<CHarvesterEventManagerStaticData*>( 
    58 		static_cast<CHarvesterEventManagerStaticData*>( 
    53 				UserSvr::DllTls( KHarvesterEventManagerTLSKey ) );
    59 				UserSvr::DllTls( KHarvesterEventManagerTLSKey ) );
    54 
    60 
    73 	}
    79 	}
    74 
    80 
    75 EXPORT_C void CHarvesterEventManager::ReleaseInstance()
    81 EXPORT_C void CHarvesterEventManager::ReleaseInstance()
    76     {
    82     {
    77     WRITELOG( "CHarvesterEventManager::ReleaseInstance" );
    83     WRITELOG( "CHarvesterEventManager::ReleaseInstance" );
       
    84     OstTrace0( TRACE_NORMAL, CHARVESTEREVENTMANAGER_RELEASEINSTANCE, "CHarvesterEventManager::ReleaseInstance" );
       
    85     
    78     CHarvesterEventManagerStaticData* data =
    86     CHarvesterEventManagerStaticData* data =
    79         static_cast<CHarvesterEventManagerStaticData*>( 
    87         static_cast<CHarvesterEventManagerStaticData*>( 
    80         		UserSvr::DllTls( KHarvesterEventManagerTLSKey ) );
    88         		UserSvr::DllTls( KHarvesterEventManagerTLSKey ) );
    81     if ( data )
    89     if ( data )
    82         {
    90         {
    98 	
   106 	
    99 #ifdef _DEBUG
   107 #ifdef _DEBUG
   100 	switch(aHEObserverType)
   108 	switch(aHEObserverType)
   101 	    {
   109 	    {
   102 	    case EHEObserverTypePlaceholder:
   110 	    case EHEObserverTypePlaceholder:
       
   111 	        {
   103 	        WRITELOG( "CHarvesterEventManager::IncreaseItemCount() EHEObserverTypePlaceholder");
   112 	        WRITELOG( "CHarvesterEventManager::IncreaseItemCount() EHEObserverTypePlaceholder");
       
   113 	        OstTrace0( TRACE_NORMAL, CHARVESTEREVENTMANAGER_INCREASEITEMCOUNT, "CHarvesterEventManager::IncreaseItemCount EHEObserverTypePlaceholder" );	        
   104 	        break;
   114 	        break;
       
   115 	        }	        
   105 	    case EHEObserverTypeMMC:
   116 	    case EHEObserverTypeMMC:
       
   117 	        {
   106 	        WRITELOG( "CHarvesterEventManager::IncreaseItemCount() EHEObserverTypeMMC");
   118 	        WRITELOG( "CHarvesterEventManager::IncreaseItemCount() EHEObserverTypeMMC");
       
   119 	        OstTrace0( TRACE_NORMAL, DUP1_CHARVESTEREVENTMANAGER_INCREASEITEMCOUNT, "CHarvesterEventManager::IncreaseItemCount EHEObserverTypeMMC" );	        
   107 	        break;
   120 	        break;
       
   121 	        }
   108 	    case EHEObserverTypeOverall:
   122 	    case EHEObserverTypeOverall:
       
   123 	        {
   109 	        WRITELOG( "CHarvesterEventManager::IncreaseItemCount() EHEObserverTypeOverall");
   124 	        WRITELOG( "CHarvesterEventManager::IncreaseItemCount() EHEObserverTypeOverall");
       
   125 	        OstTrace0( TRACE_NORMAL, DUP2_CHARVESTEREVENTMANAGER_INCREASEITEMCOUNT, "CHarvesterEventManager::IncreaseItemCount EHEObserverTypeOverall" );	        
   110 	        break;
   126 	        break;
       
   127 	        }
   111 	    default:
   128 	    default:
       
   129 	        {
   112 	        WRITELOG( "CHarvesterEventManager::IncreaseItemCount() Unknown type!");
   130 	        WRITELOG( "CHarvesterEventManager::IncreaseItemCount() Unknown type!");
       
   131 	        OstTrace0( TRACE_NORMAL, DUP3_CHARVESTEREVENTMANAGER_INCREASEITEMCOUNT, "CHarvesterEventManager::IncreaseItemCount Unknown type!" );
       
   132 	        }
   113 	    };
   133 	    };
   114 #endif
   134 #endif
   115 	
   135 	
   116 	if( eventStatus )
   136 	if( eventStatus )
   117 		{
   137 		{
   118 		WRITELOG1( "CHarvesterEventManager::IncreaseItemCount() itemsleft = %d old ", eventStatus->iItemsLeft);
   138 		WRITELOG1( "CHarvesterEventManager::IncreaseItemCount() itemsleft = %d old ", eventStatus->iItemsLeft);
       
   139 		OstTrace1( TRACE_NORMAL, DUP4_CHARVESTEREVENTMANAGER_INCREASEITEMCOUNT, "CHarvesterEventManager::IncreaseItemCount) itemsleft = %d old", eventStatus->iItemsLeft );
       
   140 		
   119 		eventStatus->iItemsLeft += aCount;
   141 		eventStatus->iItemsLeft += aCount;
   120 		WRITELOG1( "CHarvesterEventManager::IncreaseItemCount() itemsleft = %d ", eventStatus->iItemsLeft);
   142 		WRITELOG1( "CHarvesterEventManager::IncreaseItemCount() itemsleft = %d ", eventStatus->iItemsLeft);
       
   143 		OstTrace1( TRACE_NORMAL, DUP5_CHARVESTEREVENTMANAGER_INCREASEITEMCOUNT, "CHarvesterEventManager::IncreaseItemCount itemsleft = %d", eventStatus->iItemsLeft );
       
   144 		
   121 		}
   145 		}
   122 	else
   146 	else
   123 		{
   147 		{
   124 		TEventStatus eventStatus;
   148 		TEventStatus eventStatus;
   125 		eventStatus.iCurrentState = EHEStateStarted;
   149 		eventStatus.iCurrentState = EHEStateStarted;
   126 		WRITELOG1( "CHarvesterEventManager::IncreaseItemCount() itemsleft = %d old", aCount);
   150 		WRITELOG1( "CHarvesterEventManager::IncreaseItemCount() itemsleft = %d old", aCount);
       
   151 		OstTrace1( TRACE_NORMAL, DUP6_CHARVESTEREVENTMANAGER_INCREASEITEMCOUNT, "CHarvesterEventManager::IncreaseItemCount itemsleft = %d old", aCount );
       
   152 		
   127 		eventStatus.iItemsLeft = aCount;
   153 		eventStatus.iItemsLeft = aCount;
   128 		WRITELOG1( "CHarvesterEventManager::IncreaseItemCount() itemsleft = %d ", aCount);
   154 		WRITELOG1( "CHarvesterEventManager::IncreaseItemCount() itemsleft = %d ", aCount);
       
   155 		OstTrace1( TRACE_NORMAL, DUP7_CHARVESTEREVENTMANAGER_INCREASEITEMCOUNT, "CHarvesterEventManager::IncreaseItemCount itemsleft = %d", aCount );
       
   156 		
   129 		eventStatus.iObserverType = aHEObserverType;
   157 		eventStatus.iObserverType = aHEObserverType;
   130 		iEventStatuses.Append( eventStatus );
   158 		iEventStatuses.Append( eventStatus );
   131 		}
   159 		}
   132 	}
   160 	}
   133 
   161 
   139 	
   167 	
   140 #ifdef _DEBUG
   168 #ifdef _DEBUG
   141     switch(aHEObserverType)
   169     switch(aHEObserverType)
   142         {
   170         {
   143         case EHEObserverTypePlaceholder:
   171         case EHEObserverTypePlaceholder:
       
   172             {
   144             WRITELOG( "CHarvesterEventManager::DecreaseItemCountL() EHEObserverTypePlaceholder");
   173             WRITELOG( "CHarvesterEventManager::DecreaseItemCountL() EHEObserverTypePlaceholder");
       
   174             OstTrace0( TRACE_NORMAL, CHARVESTEREVENTMANAGER_DECREASEITEMCOUNTL, "CHarvesterEventManager::DecreaseItemCountL EHEObserverTypePlaceholder" );            
   145             break;
   175             break;
       
   176             }
   146         case EHEObserverTypeMMC:
   177         case EHEObserverTypeMMC:
       
   178             {
   147             WRITELOG( "CHarvesterEventManager::DecreaseItemCountL() EHEObserverTypeMMC");
   179             WRITELOG( "CHarvesterEventManager::DecreaseItemCountL() EHEObserverTypeMMC");
       
   180             OstTrace0( TRACE_NORMAL, DUP1_CHARVESTEREVENTMANAGER_DECREASEITEMCOUNTL, "CHarvesterEventManager::DecreaseItemCountL EHEObserverTypeMMC" );            
   148             break;
   181             break;
       
   182             }
   149         case EHEObserverTypeOverall:
   183         case EHEObserverTypeOverall:
       
   184             {
   150             WRITELOG( "CHarvesterEventManager::DecreaseItemCountL() EHEObserverTypeOverall");
   185             WRITELOG( "CHarvesterEventManager::DecreaseItemCountL() EHEObserverTypeOverall");
       
   186             OstTrace0( TRACE_NORMAL, DUP2_CHARVESTEREVENTMANAGER_DECREASEITEMCOUNTL, "CHarvesterEventManager::DecreaseItemCountL EHEObserverTypeOverall" );            
   151             break;
   187             break;
       
   188             }
   152         default:
   189         default:
       
   190             {
   153             WRITELOG( "CHarvesterEventManager::DecreaseItemCountL() Unknown type!");
   191             WRITELOG( "CHarvesterEventManager::DecreaseItemCountL() Unknown type!");
       
   192             OstTrace0( TRACE_NORMAL, DUP3_CHARVESTEREVENTMANAGER_DECREASEITEMCOUNTL, "CHarvesterEventManager::DecreaseItemCountL Unknown type!" );
       
   193             }
   154         };
   194         };
   155 #endif
   195 #endif
   156 	
   196 	
   157 	if( eventStatus )
   197 	if( eventStatus )
   158 		{
   198 		{
   159 		WRITELOG1( "CHarvesterEventManager::DecreaseItemCountL() iItemsLeft = %d old", eventStatus->iItemsLeft);
   199 		WRITELOG1( "CHarvesterEventManager::DecreaseItemCountL() iItemsLeft = %d old", eventStatus->iItemsLeft);
       
   200 		OstTrace1( TRACE_NORMAL, DUP4_CHARVESTEREVENTMANAGER_DECREASEITEMCOUNTL, "CHarvesterEventManager::DecreaseItemCountL iItemsLeft = %d old", eventStatus->iItemsLeft );
       
   201 		
   160 		TUint newCount = eventStatus->iItemsLeft - aCount;
   202 		TUint newCount = eventStatus->iItemsLeft - aCount;
   161 
   203 
   162 		// check for wrap
   204 		// check for wrap
   163 		if( newCount > eventStatus->iItemsLeft )
   205 		if( newCount > eventStatus->iItemsLeft )
   164 			{
   206 			{
   177 		{
   219 		{
   178 		return EFalse;
   220 		return EFalse;
   179 		}
   221 		}
   180 
   222 
   181 	WRITELOG1( "CHarvesterEventManager::DecreaseItemCountL() iItemsLeft = %d", eventStatus->iItemsLeft );
   223 	WRITELOG1( "CHarvesterEventManager::DecreaseItemCountL() iItemsLeft = %d", eventStatus->iItemsLeft );
       
   224 	OstTrace1( TRACE_NORMAL, DUP5_CHARVESTEREVENTMANAGER_DECREASEITEMCOUNTL, "CHarvesterEventManager::DecreaseItemCountL iItemsLeft = %d", eventStatus->iItemsLeft );
   182 	
   225 	
   183 	// send finished event to all matching observers
   226 	// send finished event to all matching observers
   184 	if ( eventStatus->iItemsLeft <= 0 )
   227 	if ( eventStatus->iItemsLeft <= 0 )
   185 		{
   228 		{
   186 		eventStatus->iItemsLeft = 0;
   229 		eventStatus->iItemsLeft = 0;