# HG changeset patch # User hgs # Date 1288466420 -10800 # Node ID 11da52d4c847e96a6285e6ab0968c57360624542 # Parent 3f0699f2e14ce4a24d0e289c981d9a287c3fdb0a 201043 diff -r 3f0699f2e14c -r 11da52d4c847 accessoryservices/accessorymonitor/doc/S60_Accessory_Monitoring_API_Design_D.doc Binary file accessoryservices/accessorymonitor/doc/S60_Accessory_Monitoring_API_Design_D.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 accessoryservices/accessorymonitor/tsrc/public/basic/accmonitoringtestmodule/group/bld.inf --- a/accessoryservices/accessorymonitor/tsrc/public/basic/accmonitoringtestmodule/group/bld.inf Thu Oct 14 12:47:54 2010 +0300 +++ b/accessoryservices/accessorymonitor/tsrc/public/basic/accmonitoringtestmodule/group/bld.inf Sat Oct 30 22:20:20 2010 +0300 @@ -28,12 +28,12 @@ ../../AccMonTestTimer/inc/AccMonTestTimer.h OS_LAYER_PLATFORM_EXPORT_PATH( AccMonTestTimer.h ) // Following files are needed to get stif tests run without capabilities -../tests/conf/accMonitoringTestModule_exe.cfg /epoc32/data/Z/private/10205030/accMonitoringTestModule_exe.cfg -../tests/conf/accMonitoringTestModule_exe.cfg /epoc32/RELEASE/winscw/UDEB/Z/private/10205030/accMonitoringTestModule_exe.cfg -../tests/conf/accMonitoringTestModule_exe.cfg /epoc32/RELEASE/winscw/UREL/Z/private/10205030/accMonitoringTestModule_exe.cfg -../tests/init/accMonitoringTestModule_exe.ini /epoc32/data/Z/private/10205030/accMonitoringTestModule_exe.ini -../tests/init/accMonitoringTestModule_exe.ini /epoc32/RELEASE/winscw/UDEB/Z/private/10205030/accMonitoringTestModule_exe.ini -../tests/init/accMonitoringTestModule_exe.ini /epoc32/RELEASE/winscw/UREL/Z/private/10205030/accMonitoringTestModule_exe.ini +../tests/conf/accMonitoringTestModule_exe.cfg /epoc32/data/z/private/10205030/accMonitoringTestModule_exe.cfg +../tests/conf/accMonitoringTestModule_exe.cfg /epoc32/release/winscw/udeb/z/private/10205030/accMonitoringTestModule_exe.cfg +../tests/conf/accMonitoringTestModule_exe.cfg /epoc32/release/winscw/urel/z/private/10205030/accMonitoringTestModule_exe.cfg +../tests/init/accMonitoringTestModule_exe.ini /epoc32/data/z/private/10205030/accMonitoringTestModule_exe.ini +../tests/init/accMonitoringTestModule_exe.ini /epoc32/release/winscw/udeb/z/private/10205030/accMonitoringTestModule_exe.ini +../tests/init/accMonitoringTestModule_exe.ini /epoc32/release/winscw/urel/z/private/10205030/accMonitoringTestModule_exe.ini PRJ_TESTMMPFILES diff -r 3f0699f2e14c -r 11da52d4c847 accessoryservices/accessorymonitor/tsrc/public/basic/stubs/AsyStub/group/AsyStub.mmp --- a/accessoryservices/accessorymonitor/tsrc/public/basic/stubs/AsyStub/group/AsyStub.mmp Thu Oct 14 12:47:54 2010 +0300 +++ b/accessoryservices/accessorymonitor/tsrc/public/basic/stubs/AsyStub/group/AsyStub.mmp Sat Oct 30 22:20:20 2010 +0300 @@ -52,7 +52,7 @@ END LIBRARY euser.lib -LIBRARY ASYProxy.lib +LIBRARY asyproxy.lib LIBRARY accclient.lib LIBRARY acccontrol.lib LIBRARY accpolicy.lib diff -r 3f0699f2e14c -r 11da52d4c847 accessoryservices/accessoryremotecontrol/doc/S60_Remote_Control_Plugins_Design_C.doc Binary file accessoryservices/accessoryremotecontrol/doc/S60_Remote_Control_Plugins_Design_C.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/doc/S60_3_1_DSY_Test_Tool_Design_B.doc Binary file accessoryservices/accessoryremotecontrol/tsrc/remcontestcontrol/doc/S60_3_1_DSY_Test_Tool_Design_B.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 accessoryservices/accessoryserver/doc/S60_3_1_Accessory_Framework_Design_C.doc Binary file accessoryservices/accessoryserver/doc/S60_3_1_Accessory_Framework_Design_C.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 accessoryservices/accessoryserver/doc/S60_3_1_Accessory_Policy_Design_C.doc Binary file accessoryservices/accessoryserver/doc/S60_3_1_Accessory_Policy_Design_C.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 accessoryservices/accessoryserver/doc/S60_5_1_Accessory_Client_Server_Design_D.doc Binary file accessoryservices/accessoryserver/doc/S60_5_1_Accessory_Client_Server_Design_D.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 accessoryservices/accessoryserver/doc/S60_Accessory_Framework_Integration_Guideline_C.doc Binary file accessoryservices/accessoryserver/doc/S60_Accessory_Framework_Integration_Guideline_C.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 accessoryservices/accessoryserver/doc/S60_Accessory_Policy_Common_Generic_ID_Definitions_Specification_C.doc Binary file accessoryservices/accessoryserver/doc/S60_Accessory_Policy_Common_Generic_ID_Definitions_Specification_C.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 accessoryservices/accessoryserver/inc/Common/AccClientServerMessages.h --- a/accessoryservices/accessoryserver/inc/Common/AccClientServerMessages.h Thu Oct 14 12:47:54 2010 +0300 +++ b/accessoryservices/accessoryserver/inc/Common/AccClientServerMessages.h Sat Oct 30 22:20:20 2010 +0300 @@ -226,7 +226,8 @@ EAccServerErrorCreateServer = 1, EAccServerErrorCreateTrapCleanup = 2, EAccServerErrorBadDescriptor = 3, - EAccServerErrorNotSupported = 4 + EAccServerErrorLoadASY = 4, + EAccServerErrorNotSupported = 5 }; // For CAccPolAccessoryPolicy::IsValidConnection to tell connection type diff -r 3f0699f2e14c -r 11da52d4c847 accessoryservices/accessoryserver/src/ASYProxy/ASYMainServiceBase.cpp --- a/accessoryservices/accessoryserver/src/ASYProxy/ASYMainServiceBase.cpp Thu Oct 14 12:47:54 2010 +0300 +++ b/accessoryservices/accessoryserver/src/ASYProxy/ASYMainServiceBase.cpp Sat Oct 30 22:20:20 2010 +0300 @@ -91,6 +91,13 @@ TRAP( err, tmpEcom = REComSession::CreateImplementationL( aImplementationUidAsyService, _FOFF( CASYMainServiceBase, iDtor_ID_Key ) ) ); + + if( KErrNone != err ) + { + COM_TRACE_1( "[AccFW:AsyProxy] CASYMainServiceBase::NewL - AccServer Panic (0x%x)", EAccServerErrorLoadASY ); + COM_TRACE_1( "[AccFW:AsyProxy] CASYMainServiceBase::::NewL - Implementation UID 0x%x failed to load", aImplementationUidAsyService.iUid ); + User::Panic( KAccServerName, EAccServerErrorLoadASY ); + } COM_TRACE_1( "[AccFW:AsyProxy] CASYMainServiceBase::NewL - After REComSession::CreateImplementationL - err == %d", err ); @@ -99,6 +106,12 @@ tmpEcom ); COM_TRACE_1( "[AccFW:AsyProxy] CASYMainServiceBase::::NewL - theChosenOne == 0x%x", theChosenOne ); + + if( (theChosenOne == NULL) || (tmpEcom == NULL) ) + { + COM_TRACE_1( "[AccFW:AsyProxy] CASYMainServiceBase::::NewL - Implementation UID 0x%x failed to load", aImplementationUidAsyService.iUid ); + User::Panic( KAccServerName, EAccServerErrorLoadASY ); + } theChosenOne->ConstructL( aCommsService ); diff -r 3f0699f2e14c -r 11da52d4c847 accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/doc/S60_3_1_DSY_Test_Tool_Design_B.doc Binary file accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/doc/S60_3_1_DSY_Test_Tool_Design_B.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/EABI/dsytfstifadapterU.DEF --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/EABI/dsytfstifadapterU.DEF Thu Oct 14 12:47:54 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/EABI/dsytfstifadapterU.DEF Sat Oct 30 22:20:20 2010 +0300 @@ -1,3 +1,5 @@ -EXPORTS - _Z9LibEntryLv @ 1 NONAME - +EXPORTS + _Z9LibEntryLv @ 1 NONAME + _Z15SetRequirementsRP16CTestModuleParamRm @ 2 NONAME + + diff -r 3f0699f2e14c -r 11da52d4c847 accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/src/tfastifentrypoint.cpp --- a/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/src/tfastifentrypoint.cpp Thu Oct 14 12:47:54 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/AccessoryTestControl/dsytfstifadapter/src/tfastifentrypoint.cpp Sat Oct 30 22:20:20 2010 +0300 @@ -1,162 +1,181 @@ -/* -* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: Implementation of CTFAStifEntryPoint class -* -*/ - - -// INCLUDE FILES -#include -#include "dsytesttooltrace.h" -#include "tfastifentrypoint.h" -#include "tfastiftestsuiteadapter.h" -#include "tfastiftestsuiteadapterroot.h" -#include "tfastiftestcaseadapter.h" -#include "tfastiftestenvironment.h" -#include "tfastiftestlog.h" - - -// ================= TRACE FUNCTIONS ============== -#ifdef _DEBUG - -const TInt KTFAssertDateSize = 32; - - -// ----------------------------------------------------------------------------- -// TraceAssertFunc -// ----------------------------------------------------------------------------- -void TraceAssertFunc( const TDesC8& aFile, TInt aLine ) - { - HBufC* buffer = HBufC::New( aFile.Length() + 1 ); - HBufC* date = HBufC::New( KTFAssertDateSize ); - HBufC* time = HBufC::New( KTFAssertDateSize ); - if ( buffer != NULL && date != NULL && time != NULL ) - { - buffer->Des().Copy( aFile ); - date->Des().Copy( _L8( __DATE__ ) ); - time->Des().Copy( _L8( __TIME__ ) ); - RDebug::Print( _L( "Assertion failed: file=%s, line=%d, compiled=%s %s" ), buffer->Des().PtrZ(), aLine, date->Des().PtrZ(), time->Des().PtrZ() ); - } - else - { - RDebug::Print( _L( "Assertion and memory allocation failed" ) ); - } - delete buffer; - delete date; - delete time; - } -#endif - -// ----------------------------------------------------------------------------- -// LibEntryL -// ----------------------------------------------------------------------------- -EXPORT_C CTestModuleBase* LibEntryL( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::LibEntryL()" ) ) ); - CTFAStifEntryPoint* entry = CTFAStifEntryPoint::NewL(); - // Stif framework deletes the CTestModuleBase-derived object - // which deletes the entry point object. - CTestModuleBase* retval = STATIC_CAST( CTFAStifTestSuiteAdapterRoot*, entry->RootSuiteAdapter() ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::LibEntryL - return 0x%x" ), retval ) ); - return retval; - } - - -// ----------------------------------------------------------------------------- -// CTFAStifEntryPoint::NewL -// ----------------------------------------------------------------------------- -CTFAStifEntryPoint* CTFAStifEntryPoint::NewL( void ) - { - CTFAStifEntryPoint* entry = new ( ELeave ) CTFAStifEntryPoint(); - CleanupStack::PushL( entry ); - entry->ConstructL(); - CleanupStack::Pop( entry ); - return entry; - } - - -// ----------------------------------------------------------------------------- -// CTFAStifEntryPoint::CTFAStifEntryPoint -// ----------------------------------------------------------------------------- -CTFAStifEntryPoint::CTFAStifEntryPoint( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFAStifEntryPoint::~CTFAStifEntryPoint -// ----------------------------------------------------------------------------- -CTFAStifEntryPoint::~CTFAStifEntryPoint( void ) - { - } - - -// ----------------------------------------------------------------------------- -// CTFAStifEntryPoint::ConstructL -// ----------------------------------------------------------------------------- -void CTFAStifEntryPoint::ConstructL( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::ConstructL()" ) ) ); - CTFAEntryPoint::ConstructL(); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::ConstructL - return void" ) ) ); - } - - -// ----------------------------------------------------------------------------- -// CTFAStifEntryPoint::CreateSuiteAdapterLC -// ----------------------------------------------------------------------------- -MTFATestSuiteAdapter* CTFAStifEntryPoint::CreateSuiteAdapterLC( CTFATestSuite& aSuite, TBool aRoot ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::CreateSuiteAdapterLC(0x%x, %d )" ), &aSuite, aRoot ) ); - MTFATestSuiteAdapter* adapter; - if ( aRoot ) - { - adapter = CTFAStifTestSuiteAdapterRoot::NewLC( aSuite, this ); - } - else - { - adapter = CTFAStifTestSuiteAdapter::NewLC( aSuite, NULL ); - } - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::CreateSuiteAdapterLC - return 0x%x" ), adapter ) ); - return adapter; - } - - -// ----------------------------------------------------------------------------- -// CTFAStifEntryPoint::CreateTestAdapterLC -// ----------------------------------------------------------------------------- -MTFATestCaseAdapter* CTFAStifEntryPoint::CreateTestAdapterLC( CTFATestCase& aCase ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::CreateTestAdapterLC(0x%x)" ), &aCase ) ); - CTFAStifTestCaseAdapter* adapter = CTFAStifTestCaseAdapter::NewLC( aCase, - STATIC_CAST( CTFAStifTestSuiteAdapterRoot*, RootSuiteAdapter() ) ); - STATIC_CAST( CTFAStifTestSuiteAdapterRoot*, RootSuiteAdapter() )->AddTestL( *adapter ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::CreateTestAdapterLC - return 0x%x" ), adapter ) ); - return adapter; - } - - -// ----------------------------------------------------------------------------- -// CTFAStifEntryPoint::CreateEnvironmentL -// ----------------------------------------------------------------------------- -CTFATestEnvironment* CTFAStifEntryPoint::CreateEnvironmentL( void ) - { - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::CreateEnvironmentL()" ) ) ); - CTFAStifTestLog* log = CTFAStifTestLog::NewLC(); - CTFAStifTestEnvironment* env = new ( ELeave ) CTFAStifTestEnvironment( *log ); - CleanupStack::Pop( log ); - COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::CreateEnvironmentL - return 0x%x" ), env ) ); - return env; - } - +/* +* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: Implementation of CTFAStifEntryPoint class +* +*/ + + +// INCLUDE FILES +#include +#include "dsytesttooltrace.h" +#include "tfastifentrypoint.h" +#include "tfastiftestsuiteadapter.h" +#include "tfastiftestsuiteadapterroot.h" +#include "tfastiftestcaseadapter.h" +#include "tfastiftestenvironment.h" +#include "tfastiftestlog.h" + + +// ================= TRACE FUNCTIONS ============== +#ifdef _DEBUG + +const TInt KTFAssertDateSize = 32; + + +// ----------------------------------------------------------------------------- +// TraceAssertFunc +// ----------------------------------------------------------------------------- +void TraceAssertFunc( const TDesC8& aFile, TInt aLine ) + { + HBufC* buffer = HBufC::New( aFile.Length() + 1 ); + HBufC* date = HBufC::New( KTFAssertDateSize ); + HBufC* time = HBufC::New( KTFAssertDateSize ); + if ( buffer != NULL && date != NULL && time != NULL ) + { + buffer->Des().Copy( aFile ); + date->Des().Copy( _L8( __DATE__ ) ); + time->Des().Copy( _L8( __TIME__ ) ); + RDebug::Print( _L( "Assertion failed: file=%s, line=%d, compiled=%s %s" ), buffer->Des().PtrZ(), aLine, date->Des().PtrZ(), time->Des().PtrZ() ); + } + else + { + RDebug::Print( _L( "Assertion and memory allocation failed" ) ); + } + delete buffer; + delete date; + delete time; + } +#endif + +// ----------------------------------------------------------------------------- +// LibEntryL +// ----------------------------------------------------------------------------- +EXPORT_C CTestModuleBase* LibEntryL( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::LibEntryL()" ) ) ); + CTFAStifEntryPoint* entry = CTFAStifEntryPoint::NewL(); + // Stif framework deletes the CTestModuleBase-derived object + // which deletes the entry point object. + CTestModuleBase* retval = STATIC_CAST( CTFAStifTestSuiteAdapterRoot*, entry->RootSuiteAdapter() ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::LibEntryL - return 0x%x" ), retval ) ); + return retval; + } + + +EXPORT_C TInt SetRequirements( CTestModuleParam*& aTestModuleParam, + TUint32& aParameterValid ) +{ + aParameterValid = KStifTestModuleParameterChanged; + + CTestModuleParamVer01* param = CTestModuleParamVer01::NewL(); + + // Stack size + param->iTestThreadStackSize= 65536; // 64K stack + + // Heap sizes + param->iTestThreadMinHeap = 4096; // 4K heap min + param->iTestThreadMaxHeap = 1260480;// 1.2M heap max + + aTestModuleParam = param; + return KErrNone; +} + + +// ----------------------------------------------------------------------------- +// CTFAStifEntryPoint::NewL +// ----------------------------------------------------------------------------- +CTFAStifEntryPoint* CTFAStifEntryPoint::NewL( void ) + { + CTFAStifEntryPoint* entry = new ( ELeave ) CTFAStifEntryPoint(); + CleanupStack::PushL( entry ); + entry->ConstructL(); + CleanupStack::Pop( entry ); + return entry; + } + + +// ----------------------------------------------------------------------------- +// CTFAStifEntryPoint::CTFAStifEntryPoint +// ----------------------------------------------------------------------------- +CTFAStifEntryPoint::CTFAStifEntryPoint( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFAStifEntryPoint::~CTFAStifEntryPoint +// ----------------------------------------------------------------------------- +CTFAStifEntryPoint::~CTFAStifEntryPoint( void ) + { + } + + +// ----------------------------------------------------------------------------- +// CTFAStifEntryPoint::ConstructL +// ----------------------------------------------------------------------------- +void CTFAStifEntryPoint::ConstructL( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::ConstructL()" ) ) ); + CTFAEntryPoint::ConstructL(); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::ConstructL - return void" ) ) ); + } + + +// ----------------------------------------------------------------------------- +// CTFAStifEntryPoint::CreateSuiteAdapterLC +// ----------------------------------------------------------------------------- +MTFATestSuiteAdapter* CTFAStifEntryPoint::CreateSuiteAdapterLC( CTFATestSuite& aSuite, TBool aRoot ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::CreateSuiteAdapterLC(0x%x, %d )" ), &aSuite, aRoot ) ); + MTFATestSuiteAdapter* adapter; + if ( aRoot ) + { + adapter = CTFAStifTestSuiteAdapterRoot::NewLC( aSuite, this ); + } + else + { + adapter = CTFAStifTestSuiteAdapter::NewLC( aSuite, NULL ); + } + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::CreateSuiteAdapterLC - return 0x%x" ), adapter ) ); + return adapter; + } + + +// ----------------------------------------------------------------------------- +// CTFAStifEntryPoint::CreateTestAdapterLC +// ----------------------------------------------------------------------------- +MTFATestCaseAdapter* CTFAStifEntryPoint::CreateTestAdapterLC( CTFATestCase& aCase ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::CreateTestAdapterLC(0x%x)" ), &aCase ) ); + CTFAStifTestCaseAdapter* adapter = CTFAStifTestCaseAdapter::NewLC( aCase, + STATIC_CAST( CTFAStifTestSuiteAdapterRoot*, RootSuiteAdapter() ) ); + STATIC_CAST( CTFAStifTestSuiteAdapterRoot*, RootSuiteAdapter() )->AddTestL( *adapter ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::CreateTestAdapterLC - return 0x%x" ), adapter ) ); + return adapter; + } + + +// ----------------------------------------------------------------------------- +// CTFAStifEntryPoint::CreateEnvironmentL +// ----------------------------------------------------------------------------- +CTFATestEnvironment* CTFAStifEntryPoint::CreateEnvironmentL( void ) + { + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::CreateEnvironmentL()" ) ) ); + CTFAStifTestLog* log = CTFAStifTestLog::NewLC(); + CTFAStifTestEnvironment* env = new ( ELeave ) CTFAStifTestEnvironment( *log ); + CleanupStack::Pop( log ); + COMPONENT_TRACE( ( _L( " DSYTESTTOOL - CTFAStifEntryPoint::CreateEnvironmentL - return 0x%x" ), env ) ); + return env; + } + diff -r 3f0699f2e14c -r 11da52d4c847 accessoryservices/accessoryserver/tsrc/public/basic/Stubs/AsyStub/group/AsyStub.mmp --- a/accessoryservices/accessoryserver/tsrc/public/basic/Stubs/AsyStub/group/AsyStub.mmp Thu Oct 14 12:47:54 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/Stubs/AsyStub/group/AsyStub.mmp Sat Oct 30 22:20:20 2010 +0300 @@ -52,7 +52,7 @@ LIBRARY euser.lib LIBRARY estor.lib -LIBRARY ASYProxy.lib +LIBRARY asyproxy.lib LIBRARY accclient.lib LIBRARY acccontrol.lib LIBRARY accpolicy.lib diff -r 3f0699f2e14c -r 11da52d4c847 accessoryservices/accessoryserver/tsrc/public/basic/Stubs/BTAsyStub/group/BTAsyStub.mmp --- a/accessoryservices/accessoryserver/tsrc/public/basic/Stubs/BTAsyStub/group/BTAsyStub.mmp Thu Oct 14 12:47:54 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/Stubs/BTAsyStub/group/BTAsyStub.mmp Sat Oct 30 22:20:20 2010 +0300 @@ -50,7 +50,7 @@ END LIBRARY euser.lib -LIBRARY ASYProxy.lib +LIBRARY asyproxy.lib LIBRARY accclient.lib LIBRARY accbtcontrol.lib LIBRARY acccontrol.lib diff -r 3f0699f2e14c -r 11da52d4c847 accessoryservices/accessoryserver/tsrc/public/basic/Stubs/nokiaaccessorypolicy/group/bld.inf --- a/accessoryservices/accessoryserver/tsrc/public/basic/Stubs/nokiaaccessorypolicy/group/bld.inf Thu Oct 14 12:47:54 2010 +0300 +++ b/accessoryservices/accessoryserver/tsrc/public/basic/Stubs/nokiaaccessorypolicy/group/bld.inf Sat Oct 30 22:20:20 2010 +0300 @@ -26,8 +26,8 @@ ../data/AccPolCapRules.ini /epoc32/winscw/c/private/1020504A/AccPolCapRules.ini ../data/rules.dat /epoc32/winscw/c/private/1020504A/rules.dat -../data/DBS_10205030_accpolicydb.db /epoc32/RELEASE/winscw/UDEB/Z/private/100012a5/DBS_10205030_accpolicydb.db -../data/DBS_10205030_accpolicydb.db /epoc32/RELEASE/winscw/UREL/Z/private/100012a5/DBS_10205030_accpolicydb.db +../data/DBS_10205030_accpolicydb.db /epoc32/release/winscw/udeb/z/private/100012a5/DBS_10205030_accpolicydb.db +../data/DBS_10205030_accpolicydb.db /epoc32/release/winscw/urel/z/private/100012a5/DBS_10205030_accpolicydb.db ../data/DBS_10205030_accpolicydb.db /epoc32/data/z/private/100012a5/DBS_10205030_accpolicydb.db diff -r 3f0699f2e14c -r 11da52d4c847 accessoryservices/autoaudioasy/group/autoaudioasy.mmp --- a/accessoryservices/autoaudioasy/group/autoaudioasy.mmp Thu Oct 14 12:47:54 2010 +0300 +++ b/accessoryservices/autoaudioasy/group/autoaudioasy.mmp Sat Oct 30 22:20:20 2010 +0300 @@ -45,7 +45,7 @@ LIBRARY euser.lib LIBRARY estor.lib -LIBRARY ASYProxy.lib +LIBRARY asyproxy.lib LIBRARY accclient.lib LIBRARY acccontrol.lib LIBRARY accpolicy.lib diff -r 3f0699f2e14c -r 11da52d4c847 accessoryservices/gid_pc_tool/DOC/S60_GID_PC_Tool_Users_Guide_C.doc Binary file accessoryservices/gid_pc_tool/DOC/S60_GID_PC_Tool_Users_Guide_C.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 accessoryservices/pluggeddisplay/doc/S60_5_2_Plugged_Display_ASY_Design_D.doc Binary file accessoryservices/pluggeddisplay/doc/S60_5_2_Plugged_Display_ASY_Design_D.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 commonservices/Documentation/SGL.TS0017.201 BAFL Component Design Document.doc Binary file commonservices/Documentation/SGL.TS0017.201 BAFL Component Design Document.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 commonservices/Documentation/SGL.TS0017.202 BAFL Functional Specification.doc Binary file commonservices/Documentation/SGL.TS0017.202 BAFL Functional Specification.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 commonservices/Documentation/SGL.TS0017.321 BAFL System Sounds Migration Guide.doc Binary file commonservices/Documentation/SGL.TS0017.321 BAFL System Sounds Migration Guide.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 commonservices/Documentation/SGL.TS0017.324 BAFL How To FAQ.doc Binary file commonservices/Documentation/SGL.TS0017.324 BAFL How To FAQ.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 commonservices/PlatformEnv/disknotifyhandler/src/disknotifyhandlerimpl.cpp --- a/commonservices/PlatformEnv/disknotifyhandler/src/disknotifyhandlerimpl.cpp Thu Oct 14 12:47:54 2010 +0300 +++ b/commonservices/PlatformEnv/disknotifyhandler/src/disknotifyhandlerimpl.cpp Sat Oct 30 22:20:20 2010 +0300 @@ -1,5 +1,5 @@ /* -* Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +* Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies). * All rights reserved. * This component and the accompanying materials are made available * under the terms of "Eclipse Public License v1.0" @@ -29,6 +29,11 @@ #include "starteddismountwatcher.h" #include "disknotifyhandlerdebug.h" +#ifdef __WINS__ +#pragma warn_unusedarg off +#endif + + // ======== MEMBER FUNCTIONS ======== diff -r 3f0699f2e14c -r 11da52d4c847 commonservices/PlatformEnv/doc/S60_PlatformEnv_Design.doc Binary file commonservices/PlatformEnv/doc/S60_PlatformEnv_Design.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 commonservices/PlatformEnv/sysversioninfo/doc/S60_SysVersionInfo_Design.doc Binary file commonservices/PlatformEnv/sysversioninfo/doc/S60_SysVersionInfo_Design.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 commonservices/PlatformEnv/tsrc/platformenvtest/group/PlatformEnvTest.mmp --- a/commonservices/PlatformEnv/tsrc/platformenvtest/group/PlatformEnvTest.mmp Thu Oct 14 12:47:54 2010 +0300 +++ b/commonservices/PlatformEnv/tsrc/platformenvtest/group/PlatformEnvTest.mmp Sat Oct 30 22:20:20 2010 +0300 @@ -24,9 +24,6 @@ CAPABILITY ALL -TCB -//TARGETPATH ?target_path -DEFFILE PlatformEnvTest.def - SOURCEPATH ../src SOURCE PlatformEnvTest.cpp SOURCE PlatformEnvTestCases.cpp diff -r 3f0699f2e14c -r 11da52d4c847 devicesrv_plat/accessory_api/doc/S60_3_1_Accessory_API_Specification_C.DOC Binary file devicesrv_plat/accessory_api/doc/S60_3_1_Accessory_API_Specification_C.DOC has changed diff -r 3f0699f2e14c -r 11da52d4c847 devicesrv_plat/accessory_key_event_handling_api/doc/S60_Accessory_Key_Event_Handling_API_Specification_C.doc Binary file devicesrv_plat/accessory_key_event_handling_api/doc/S60_Accessory_Key_Event_Handling_API_Specification_C.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 devicesrv_plat/accessory_plugin_api/doc/S60_3_1_Accessory_Plugin_API_Specification_C.doc Binary file devicesrv_plat/accessory_plugin_api/doc/S60_3_1_Accessory_Plugin_API_Specification_C.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 devicesrv_plat/common_dsy_plugin_api/doc/S60_Common_DSY_Plug-in_API_Specification.doc Binary file devicesrv_plat/common_dsy_plugin_api/doc/S60_Common_DSY_Plug-in_API_Specification.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 devicesrv_plat/dos_extension_api/doc/S60_DOS_Server_Client_API_Specification.doc Binary file devicesrv_plat/dos_extension_api/doc/S60_DOS_Server_Client_API_Specification.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 devicesrv_plat/dos_extension_plugin_api/doc/S60_DOS_Server_Plugin_API_Specification.doc Binary file devicesrv_plat/dos_extension_plugin_api/doc/S60_DOS_Server_Plugin_API_Specification.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 devicesrv_plat/dos_extension_plugin_api/doc/S60_DOS_Server_Plugin_Event_API_Specification.doc Binary file devicesrv_plat/dos_extension_plugin_api/doc/S60_DOS_Server_Plugin_Event_API_Specification.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 devicesrv_plat/group/bld.inf --- a/devicesrv_plat/group/bld.inf Thu Oct 14 12:47:54 2010 +0300 +++ b/devicesrv_plat/group/bld.inf Sat Oct 30 22:20:20 2010 +0300 @@ -52,7 +52,6 @@ #include "../accessory_bluetooth_control_api/group/bld.inf" #include "../extended_version_info_api/group/bld.inf" #include "../mediator_event_provider_api/group/bld.inf" -#include "../tv_out_config_api/group/bld.inf" #include "../tspclientmapper_api/group/bld.inf" #include "../powersave_api/group/bld.inf" #include "../powersave_definitions_api/group/bld.inf" diff -r 3f0699f2e14c -r 11da52d4c847 devicesrv_plat/mediator_plugin_api/doc/S60_3_1_Mediator_API_Specification_C.doc Binary file devicesrv_plat/mediator_plugin_api/doc/S60_3_1_Mediator_API_Specification_C.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 devicesrv_plat/remote_control_extension_api/doc/S60_Remote_Control_Extension_API_Specification_C.doc Binary file devicesrv_plat/remote_control_extension_api/doc/S60_Remote_Control_Extension_API_Specification_C.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 devicesrv_plat/sensor_plugin_api/doc/S60_5_0_Sensor_Server_Plugin_API_Specification_D.doc Binary file devicesrv_plat/sensor_plugin_api/doc/S60_5_0_Sensor_Server_Plugin_API_Specification_D.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 devicesrv_plat/shared_data_api/doc/S60_Shared_Data_API_Specification.doc Binary file devicesrv_plat/shared_data_api/doc/S60_Shared_Data_API_Specification.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 devicesrv_plat/syslangutil_api/doc/S60_3_1_System_Language_Util_API_Specification_C.doc Binary file devicesrv_plat/syslangutil_api/doc/S60_3_1_System_Language_Util_API_Specification_C.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 devicesrv_plat/system_startup_extension_plugin_api/doc/S60_3_2_System_Startup_Extension_Plugin_API_Specification.zip Binary file devicesrv_plat/system_startup_extension_plugin_api/doc/S60_3_2_System_Startup_Extension_Plugin_API_Specification.zip has changed diff -r 3f0699f2e14c -r 11da52d4c847 devicesrv_plat/tv_out_config_api/group/bld.inf --- a/devicesrv_plat/tv_out_config_api/group/bld.inf Thu Oct 14 12:47:54 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ -/* -* Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: File that exports the files belonging to -* TVOutConfig API -* -*/ - - -#include - -PRJ_PLATFORMS -DEFAULT - -PRJ_EXPORTS - -../inc/tvoutconfig.h OS_LAYER_PLATFORM_EXPORT_PATH(tvoutconfig.h) -../inc/tvoutconfig.inl OS_LAYER_PLATFORM_EXPORT_PATH(tvoutconfig.inl) -../inc/tvoutconfigdef.h OS_LAYER_PLATFORM_EXPORT_PATH(tvoutconfigdef.h) diff -r 3f0699f2e14c -r 11da52d4c847 devicesrv_plat/tv_out_config_api/inc/tvoutconfig.h --- a/devicesrv_plat/tv_out_config_api/inc/tvoutconfig.h Thu Oct 14 12:47:54 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,272 +0,0 @@ -/* -* Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: This API provides access to the display driver. -* -*/ - -#ifndef __TVOUTCONFIG_H__ -#define __TVOUTCONFIG_H__ - -//- Include Files ---------------------------------------------------------- - -#include -#include - -//- Class and Enumeration Definitions --------------------------------------- - -/** API version number: - 2: Symbian PREQ2102 changes. SettingsChangedListener, SetAvailableTvConfigList and PAR for CVBS - 1: First version, which have ApiVersion method. @see ApiVersion. */ -const TUint KTvOutConfigVersion = 2; - -/** -Adaptation API for Tv-out settings -*/ -class CTvOutConfig : public CBase - { - public: - - /** Gets API version number. Compare this to KTvOutConfigVersion, must match. - @return KTvOutConfigVersion which is used for implementation */ - IMPORT_C static TUint ApiVersion(); - - ///Destructor - virtual ~CTvOutConfig(){}; - - /** Creates object. - Method requires ECapabilityReadDeviceData capability. - @return new CTvOutConfig, NULL if there is error, otherwise CTvOutConfig */ - IMPORT_C static CTvOutConfig* NewL(); - - //-- Capability and Settings ------------------------------------------ - - /** Reads number of supported modes what to be called with GetSupportedHdmiMode. - @see GetSupportedHdmiMode - @param aNumberOfModes Method fills these for caller - @return KErrNone if success, KErrNotSupported if not supported. */ - virtual TInt GetNumberOfHdmiModes(TUint& aNumberOfModes) = 0; - - /** Reads supported modes of HDMI hardware - @see GetNumberOfHdmiModes - @param aModeNumber Mode number, begins from 0, up to GetNumberOfHdmiModes. - @param aReadMode Method fills these for caller - @return KErrNone if success, KErrNotSupported if not supported. */ - virtual TInt GetSupportedHdmiMode(TUint aModeNumber, TSupportedHdmiDviMode& aReadMode) = 0; - - /** Reads capabilities of own HDMI hardware. - @param aConnector Capabilities to be fetched for this connector type - @param aReadCapabilities Method fills these for caller - @return KErrNone if success, KErrNotSupported if not supported. */ - virtual TInt GetTvHwCapabilities(TTvSettings::TOutput aConnector, THwCapabilities& aReadCapabilities) = 0; - - /** Before Tv-out using, SetConfig must be called (during boot and always - when settings or connector are changed). - Fill correct values to TTvSettings object and give it by parameter. - - Some settings can be changed on the fly (while tv-out enabled, some settings - will be in use only after Tv-out Disable()/Enable() sequency. For example, - if e.g. overscan is changed on the fly, client gives same early filled struct but only - overscan members are different. KErrNone will be returned if change was success, - if HW cannot change settings on the fly (without Disable()/Enable()) then - KErrNotReady is returned. When KErrNotReady is returned, settings are needed - to write with KErrNone after Disable() and before Enable() - - If this is called, THdmiDviTimings will not be used anymore and vice versa. - - @param aTvSettings Object which contains wanted setting (e.g. PAL/NTSC/...) - @return Symbian error code, KErrNotSupported if not supported, - KErrArgument if aTvSettings was ignored, - KErrNotFound when Tv-out driver not found. - KErrNotReady - Disable()/Enable() sequence is needed */ - virtual TInt SetConfig(const TTvSettings& aTvSettings) = 0; - - /** Sets HDMI settings to Hw - @see SetConfig(const TTvSettings& aTvSettings) */ - virtual TInt SetConfig(const THdmiDviTimings& aTvSettings) = 0; - - /** Use CTvOutConfig::OnOffListener method, when Tv is enabled, then new - settings can be read using this method. - - If this read fails, try also read overloaded version for THdmiDviTimings reading, and vice versa. - Latest set version of GetConfig can only return without error, that is the version - what is currently used in HW (TTvSettings/THdmiDviTimings) - - @pre SetConfig is called without errors - @param aTvSettings Object which contains wanted setting (e.g. PAL/NTSC/...) - @return Symbian error code, KErrNotSupported if not supported, - KErrArgument if aTvSettings was ignored, - KErrNotFound when Tv-out driver not found. */ - virtual TInt GetConfig(TTvSettings& aTvSettings) = 0; - - ///@see GetConfig(TTvSettings& aTvSettings) - virtual TInt GetConfig(THdmiDviTimings& aTvSettings) = 0; - - /** Adds listener for changed settings - Check always aListenerRequest.Int(), it is KErrNone when normal operation. - @param aListenerRequest Will be completed without errors when HDMI cable connected/disconnected - @return Symbian error code */ - virtual TInt SettingsChangedListener(TRequestStatus& aListenerRequest) = 0; - - /** Cancels listener, @see SettingsChangedListener - @return Symbian error code */ - virtual TInt SettingsChangedListenerCancel() = 0; - - //-- Standby Figure --------------------------------------------------- - - /** Returns maximum size of TStandByFigure.iTable in bytes. Deprecated since TB10.2. - @param aMaxFigureSize Max size of standByFigure in bytes - @return KErrNotSupported if not supported. */ - virtual TInt StandByFigureMaxSizeInBytes(TUint& aMaxFigureSize) = 0; - - /** Sets user defined figure to show on tv. Deprecated since TB10.2. - @pre SetConfig() is called without errors. - @param aStandByFigure TStandByFigure object. - @return KErrNone if all success */ - virtual TInt StandByFigure(const TStandByFigure& aStandByFigure) = 0; - - /** Gets user defined figure to show on tv. Deprecated since TB10.2. - @see CTvOutConfig::StandByFigureMaxSizeInBytes for getting size of TStandByFigure.iTable. - @pre StandByFigure() is called without errors. - @param aStandByFigure TStandByFigure object. - @return KErrNone if all success */ - virtual TInt GetStandByFigure(TStandByFigure& aStandByFigure) = 0; - - //-- Enable and Disable ----------------------------------------------- - - /** Enables Tv-out. Latest SetConfig() settings are used. - @pre SetConfig() is called without errors. - @return Symbian Error Code, KErrNotSupported if not supported, - KErrNotReady if SetConfig() failed, - KErrAlreadyExists if was enabled, - KErrServerBusy if previous task is going, - try again later, not immediately */ - virtual TInt Enable() = 0; - - /** Disables Tv-out. - @pre Enable() is called without errors. - @return Symbian Error Code, KErrNotSupported if not supported, - KErrNotReady if SetConfig() failed, - KErrAlreadyExists if was disabled, - KErrServerBusy if previous task is going, - try again later, not immediately */ - virtual TInt Disable() = 0; - - //-- Listeners and Status --------------------------------------------- - - /** Adds listener for tv-out enable/disable situations. - Check always aListenerRequest.Int(), it is KErrNone when normal operation. - @param aListenerRequest Will be completed without errors when tv-out - changing state to on or off. - @return Symbian error code */ - virtual TInt OnOffListener(TRequestStatus& aListenerRequest) = 0; - - /** Cancels listener, @see OnOffListener - @return Symbian error code */ - virtual TInt OnOffListenerCancel() = 0; - - /** Asks is TV-out enabled or not - @return State of TV-out, EFalse when TV-out is disabled or if not supported (or error occured), - ETrue when TV-out is enabled */ - virtual TBool Enabled() = 0; - - /** Adds listener for HDMI connected/disconnected situations. - Check always aListenerRequest.Int(), it is KErrNone when normal operation. - @param aListenerRequest Will be completed without errors when HDMI cable connected/disconnected - @return Symbian error code */ - virtual TInt HdmiCableListener(TRequestStatus& aListenerRequest) = 0; - - /** Cancels listener, @see HdmiCableListener - @return Symbian error code */ - virtual TInt HdmiCableListenerCancel() = 0; - - /** Asks is HDMI-cable connected or not - @return State of HDMI-cable, EFalse when HDMI cable is not connected or if not supported - ETrue when HDMI cable is connected */ - virtual TBool HdmiCableConnected() = 0; - - // Following functions are needed for discussion with Tv-Manager: - - /** Set list of available Tv-configurations - @param aAnalogConfigs Available Analog Tv configurations - @param aHdmiConfigs Available HDMI/DVI Tv configurations - @return Symbian error code */ - virtual TInt SetAvailableTvConfigList(const RArray& aAnalogConfigs, const RArray& aHdmiConfigs) = 0; - - /** Get list of available Tv-configurations - @param aAnalogConfigs Available Analog Tv configurations - @param aHdmiConfigs Available HDMI/DVI Tv configurations - @return Symbian error code */ - virtual TInt GetAvailableTvConfigList(RArray& aAnalogConfigs, RArray& aHdmiConfigs) = 0; - - /** Listener for SetAvailableTvConfigList() - Check always aListenerRequest.Int(), it is KErrNone when normal operation. - @param aListenerRequest Will be completed without errors when SetAvailableTvConfigList is called - @return Symbian error code */ - virtual TInt AvailableTvConfigListListener(TRequestStatus& aListenerRequest) = 0; - - /** Cancels listener, @see AvailableTvConfigListListener - @return Symbian error code */ - virtual TInt AvailableTvConfigListListenerCancel() = 0; - - //-- Protection ------------------------------------------------------- - - /** Listener for status of copy protection (e.g. HDCP). After this, check newest status with CopyProtectionStatus() - HDCP may drop off with CopyProtection(EFalse) or when authentication is failed. - @see CopyProtectionStatus() - @param aListenerRequest Will be completed without errors when HDCP status in output will change (ESS) - @return Symbian error code */ - virtual TInt CopyProtectionStatusListener(TRequestStatus& aListenerRequest) = 0; - - /** Cancels listener, @see CopyProtectionStatusListener - @return Symbian error code */ - virtual TInt CopyProtectionStatusCancel() = 0; - - /** Asks is HDCP/macrovision enabled or not at the moment in Tv-output. - @pre Tv-out is enabled (Enabled() returns ETrue) - @return ETrue when protection is enabled on Tv-output, EFalse otherwise */ - virtual TBool CopyProtectionStatus() = 0; - - /** Enables/disables HDCP/Macrovision on Tv-output. All clients of CTvOutConfig has to - disable protection, before protection on output can be disabled. - CopyProtectionStatus() will be completed when protection state is changed (not necessarily ever). - - ETrue = When client wants to enable protection. - Protection is enabled after CopyProtectionStatus() returns ETrue (after listener). - If sink does not support e.g. the HDCP, adaptation will try to enable that periodically - and will trigger the listener when success and state changes. - - EFalse = When client wants to disable protection. If any other CTvOutConfig's client is not - called this method with ETrue, output will be unprotected after CopyProtectionStatusListener(). - When HDCP is dropped out (CopyProtectionStatusListener()), this method should be called - with EFalse (before next try with ETrue), that tells for adaptation that buffer content - can be shown on Tv without protection. - - @param aCopyProtectEnabled ETrue when output is wanted to be protected - @return Symbian error code, KErrNotSupported if feature is missing. */ - virtual TInt CopyProtection(TBool aCopyProtectEnabled) = 0; - - protected: - ///Constructor - CTvOutConfig(){}; - ///Second phase constructor - virtual void ConstructL() = 0; - }; - -//- Inline Functions -------------------------------------------------------- - -#endif //__TVOUTCONFIG_H__ - -// End of File - - diff -r 3f0699f2e14c -r 11da52d4c847 devicesrv_plat/tv_out_config_api/inc/tvoutconfig.inl --- a/devicesrv_plat/tv_out_config_api/inc/tvoutconfig.inl Thu Oct 14 12:47:54 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,58 +0,0 @@ -/* -* Copyright (c) 2003-2005 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: This file provides inline functions required for -* TVOutConfig Dummy Implementation. -* -*/ - - -//- Member Functions -------------------------------------------------------- - -//--------------------------------------------------------------------------- -/** - Constructor of TTvSettings class -*/ -TTvSettings::TTvSettings(): - iTvSystem( EUndefSystem ), - iRatio( EUndefRatio ), - iScanMode( EUndefScan ), - iOutput( EUndefOutput ), - iFlickerFilter( EUndefFlicker ), - iAutoDetection( EUndefAutoDetect ), - iHorizontalOverScan( 0 ), - iVerticalOverScan( 0 ) - { - } - -//--------------------------------------------------------------------------- -/** - Constructor of TStandByFigure class -*/ -TStandByFigure::TStandByFigure(): - iTable( NULL ), - iFigureType( EStandByFigure ), - iColumns( 0 ), - iRows( 0 ), - iScaleNumeratorWidth( 1 ),//no scaling (1/1) - iScaleDenominatorWidth( 1 ), - iScaleNumeratorHeight( 1 ),//no scaling (1/1) - iScaleDenominatorHeight( 1 ), - iLeftTopColumn( 0 ), - iLeftTopRow( 0 ), - iBackGroundColor( 0 ) - { - } - -// End of File - diff -r 3f0699f2e14c -r 11da52d4c847 devicesrv_plat/tv_out_config_api/inc/tvoutconfigdef.h --- a/devicesrv_plat/tv_out_config_api/inc/tvoutconfigdef.h Thu Oct 14 12:47:54 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,681 +0,0 @@ -/* -* Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: API definition file for tv-out configuration. -* -*/ - -#ifndef __TVOUTCONFIGDEF_H__ -#define __TVOUTCONFIGDEF_H__ - -//- Include Files ---------------------------------------------------------- - -#include - -//- Class and Enumeration Definitions --------------------------------------- - -/** -CEA specified fixed modes. -ExHz -Enumeration value matching to specified mode number. -*/ -enum TFixedModeCea - { - ECeaFixedModeNone = 0, - - //CEA fixed modes (CEA-861-B.pdf) - E640x480p59_94d60Hz4d3 = 1, - E720x480p59_94d60Hz4d3 = 2, - E720x480p59_94d60Hz16d9 = 3, - E1280x720p59_94d60Hz16d9 = 4, - E1920x1080i59_94d60Hz16d9 = 5, - E720x480i59_94d60Hz4d3 = 6, - E720x480i59_94d60Hz16d9 = 7, - E720x240p59_94d60Hz4d3 = 8, - E720x240p59_94d60Hz16d9 = 9, - E2880x480i59_94d60Hz4d3 = 10, - E2880x480i59_94d60Hz16d9 = 11, - E2880x240p59_94d60Hz4d3 = 12, - E2880x240p59_94d60Hz16d9 = 13, - E1440x480p59_94d60Hz4d3 = 14, - E1440x480p59_94d60Hz16d9 = 15, - E1920x1080p59_94d60Hz16d9 = 16, - E720x576p50Hz4d3 = 17, - E720x576p50Hz16d9 = 18, - E1280x720p50Hz16d9 = 19, - E1920x1080i50Hz16d9_1125 = 20, // 1125 vertical lines - E720x1080i50Hz16d9 = 20, // Wrong value. Will be deprecated. - E720x576i50Hz4d3 = 21, - E720x576i50Hz16d9 = 22, - E720x288p50Hz4d3 = 23, - E720x288p50Hz16d9 = 24, - E2880x576i50Hz4d3 = 25, - E2880x576i50Hz16d9 = 26, - E2880x288p50Hz4d3 = 27, - E2880x288p50Hz16d9 = 28, - E1440x576p50Hz4d3 = 29, - E1440x576p50Hz16d9 = 30, - E1920x1080p50Hz16d9 = 31, - E1920x1080p23_97d24Hz16d9 = 32, - E1920x1080p25Hz16d9 = 33, - E1920x1080p29_97d30Hz16d9 = 34, - - //CEA fixed modes (CEA-861-D.pdf) - E2880x480p59_94d60Hz4d3 = 35, - E2880x480p59_94d60Hz16d9 = 36, - E2880x576p50Hz4d3 = 37, - E2880x576p50Hz16d9 = 38, - E1920x1080i50Hz16d9_1250 = 39, // 1250 vertical lines - E1920x1080i50Hz16d9 = 39, // Confusing name. Will be deprecated. - E1920x1080i100Hz16d9 = 40, - E1280x720p100Hz16d9 = 41, - E720x576p100Hz4d3 = 42, - E720x576p100Hz16d9 = 43, - E720x576i100Hz4d3 = 44, - E720x576i100Hz16d9 = 45, - E1920x1080i119_88d120Hz16d9 = 46, - E1280x720p119_88d120Hz16d9 = 47, - E720x480p119_88d120Hz4d3 = 48, - E720x480p119_88d120Hz16d9 = 49, - E720x480i119_88d120Hz4d3 = 50, - E720x480i119_88d120Hz16d9 = 51, - E720x576p200Hz4d3 = 52, - E720x576p200Hz16d9 = 53, - E720x576i200Hz4d3 = 54, - E720x576i200Hz16d9 = 55, - E720x480p239_76d240Hz4d3 = 56, - E720x480p239_76d240Hz16d9 = 57, - E720x480i239_76d240Hz4d3 = 58, - E720x480i239_76d240Hz16d9 = 59, - - //CEA fixed modes (CEA-861-E.pdf) - E1280x720p23_97d24Hz16d9 = 60, - E1280x720p25Hz16d9 = 61, - E1280x720p29_97d30Hz16d9 = 62, - E1920x1080p119_88d120Hz16d9 = 63, - E1920x1080p100Hz16d9 = 64, - - ELastCeaFixedModeValue, //this must be last. - }; - -/** -VESA specified fixed modes. -ExHz -Enumeration value matching to specified mode number. -*/ -enum TFixedModeDmt - { - EDmtFixedModeNone = 0, - - //VESA (DMTv1r11.pdf) - E640x350p85HzRB = 1, - E640x400p85HzRB = 2, - E720x400p85HzRB = 3, - E640x480p60HzRB = 4, - E640x480p72HzRB = 5, - E640x480p75HzRB = 6, - E640x480p85HzRB = 7, - E800x600p56HzRB = 8, - E800x600p60HzRB = 9, - E800x600p72HzRB = 10, - E800x600p75HzRB = 11, - E800x600p85HzRB = 12, - E800x600p120HzRB = 13, - E848x480p60HzRB = 14, - E1024x768i87HzRB = 15, - E1024x768p60HzRB = 16, - E1024x768p70HzRB = 17, - E1024x768p75HzRB = 18, - E1024x768p85HzRB = 19, - E1024x768p120HzRB = 20, - E1152x864p75HzRB = 21, - E1280x768p60HzRB = 22, - E1280x768p60Hz = 23, - E1280x768p75HzRB = 24, - E1280x768p85HzRB = 25, - E1280x768p120HzRB = 26, - E1280x800p60HzRB = 27, - E1280x800p60Hz = 28, - E1280x800p75HzRB = 29, - E1280x800p85HzRB = 30, - E1280x800p120HzRB = 31, - E1280x960p60HzRB = 32, - E1280x960p85HzRB = 33, - E1280x960p120HzRB = 34, - E1280x1024p60HzRB = 35, - E1280x1024p75HzRB = 36, - E1280x1024p85HzRB = 37, - E1280x1024p120HzRB = 38, - E1360x768p60HzRB = 39, - E1360x768p120HzRB = 40, - E1400x1050p60HzRB = 41, - E1400x1050p60Hz = 42, - E1400x1050p75HzRB = 43, - E1400x1050p85HzRB = 44, - E1400x1050p120HzRB = 45, - E1440x900p60HzRB = 46, - E1440x900p60Hz = 47, - E1440x900p75HzRB = 48, - E1440x900p85HzRB = 49, - E1440x900p120HzRB = 50, - E1600x1200p60HzRB = 51, - E1600x1200p65HzRB = 52, - E1600x1200p70HzRB = 53, - E1600x1200p75HzRB = 54, - E1600x1200p85HzRB = 55, - E1600x1200p120HzRB = 56, - E1680x1050p60HzRB = 57, - E1680x1050p60Hz = 58, - E1680x1050p75HzRB = 59, - E1680x1050p85HzRB = 60, - E1680x1050p120HzRB = 61, - E1792x1344p60HzRB = 62, - E1792x1344p75HzRB = 63, - E1792x1344p120HzRB = 64, - E1856x1392p60HzRB = 65, - E1856x1392p75HzRB = 66, - E1856x1392p120HzRB = 67, - E1920x1200p60HzRB = 68, - E1920x1200p60Hz = 69, - E1920x1200p75HzRB = 70, - E1920x1200p85HzRB = 71, - E1920x1200p120HzRB = 72, - E1920x1440p60HzRB = 73, - E1920x1440p75HzRB = 74, - E1920x1440p120HzRB = 75, - E2560x1600p60HzRB = 76, - E2560x1600p60Hz = 77, - E2560x1600p75HzRB = 78, - E2560x1600p85HzRB = 79, - E2560x1600p120HzRB = 80, - E1366x768p60HzRB = 81, - E1920x1080p60HzRB = 82, - - ELastDmtFixedModeValue, //this must be last. - }; - -/** -Color space coordinates. Fixed point is 10th bit. -Example: If iRed.iY=625, it should be divided by 1024 (2^10) for getting real value 0.61035... -*/ -class TTvColorCoordinates - { - public: - TTvColorCoordinates():iRed(), - iGreen(), - iBlue(), - iWhite() - {} - ///Red chromaticity coordinates (X,Y) - TPoint iRed; - ///Green chromaticity coordinates - TPoint iGreen; - ///Blue chromaticity coordinates - TPoint iBlue; - ///White chromaticity coordinates - TPoint iWhite; - }; - -//Pixel repetation bit masks for TSupportedHdmiDviMode::iPixelRepeatBitMask -const TUint KPixelSentOnce = 0; //No repetation, pixel sent once -const TUint KPixelSent2Times = ( 1 << 0 ); -const TUint KPixelSent3Times = ( 1 << 1 ); -const TUint KPixelSent4Times = ( 1 << 2 ); -const TUint KPixelSent5Times = ( 1 << 3 ); -const TUint KPixelSent6Times = ( 1 << 4 ); -const TUint KPixelSent7Times = ( 1 << 5 ); -const TUint KPixelSent8Times = ( 1 << 6 ); -const TUint KPixelSent9Times = ( 1 << 7 ); -const TUint KPixelSent10Times = ( 1 << 8 ); -/** -One mode struct for making capability query of own HW (phone capabilities). -*/ -class TSupportedHdmiDviMode - { - public: - enum TStandardModeType - { - ///CEA mode, TFixedModeCea - ECea = 0x00, - ///Dmt mode, TFixedModeDmt - EDmt = 0x01, - }; - public: - TSupportedHdmiDviMode():iStandardMode(ECeaFixedModeNone), - iStandardModeType(ECea), - iHigherRefreshRateSupported(0), - iLowerRefreshRateSupported(0), - iPixelRepeatBitMask(KPixelSentOnce) - {} - public: - ///Standard CEA (TFixedModeCea) or DMT (TFixedModeDmt) mode number. @see iStandardModeType - TUint8 iStandardMode; - ///Type of TStandardModeType. ECea if iStandardMode is CEA mode (TFixedModeCea), EDmt when DMT mode (TFixedModeDmt). - TUint8 iStandardModeType; - ///@see iLowerRefreshRateSupported. If this is True (1), then higher frequency is supported. - TUint8 iHigherRefreshRateSupported; - /** If mode has two refresh rates. If is True (1), then lower frequency is supported. - If mode has only one refresh rate, then this has to be True (1). - E.g. CEA mode 1: 640x480p @59.94/60Hz, so this defines is 59.94Hz supported (lower) or not. - Don't care if mode has only one refresh rate (e.g. CEA 17 720x576p @50Hz) - iLowerRefreshRateSupported=1=Lower refresrate supported (e.g. 59.94Hz). - iHigherRefreshRateSupported=1=Higher refreshrate supported (e.g. 60Hz) */ - TUint8 iLowerRefreshRateSupported; - ///Bit mask of supported pixel repetation. 0=no repetation=KPixelSentOnce. - TUint16 iPixelRepeatBitMask; - }; - -/** -Struct for own TV HW capabilities query. -@see GetTvHwCapabilities -*/ -class THwCapabilities - { - public: - THwCapabilities():iHdcpSupportedInSource(EFalse), - iSourceHdmiVersion(0), - iSourceHdmiRevision(0), - iOverscanToBeDrawn(0), - iScalingMinDenominator(1), - iScalingMaxNumerator(1), - iCentralizingOnly(EFalse) - {} - public: - ///ETrue if source (own HW, phone) supports HDCP - TBool iHdcpSupportedInSource; - - /** HDMI version what (own) HW supports. Version combination is iSourceHdmiVersion.iSourceHdmiRevision. - If wanted connector is not HDMI, then these can be zero */ - TUint8 iSourceHdmiVersion; - ///@see iSourceHdmiVersion - TUint8 iSourceHdmiRevision; - - ///ETrue when composition should draw overscan (inc. position) to destination buffer - TBool iOverscanToBeDrawn; - ///Minimum scaling factor. E.g. if 1/2x is min, then this is 200 (100 / iScalingMinDenominator). 1x = 100. 0xFFFF = infinity - TUint16 iScalingMinDenominator; - ///Maximum scaling factor. E.g. if 2.5x is max, then this is 250 (iScalingMaxNumerator / 100). 1x = 100. 0xFFFF = infinity - TUint16 iScalingMaxNumerator; - - ///ETrue when position of Tv-out cannot be change, image is always centralized. EFalse when position can be changed. @see iRightBottomCorner - TBool iCentralizingOnly; - }; - -/** -Config analogue TV-Out settings -*/ -class TTvSettings - { - public: - ///Television broadcast standard: - enum TSystem - { - EUndefSystem = 0x0, // Initial value - ENTSC = 0x1, // 59.94Hz 525 NTSC-M - others than Japan - // also 59.94Hz 480i/480p - - ENTSCJ = 0x2, // 59.94Hz 525 NTSC-J - Japan - // also 59.94Hz 480i/480p - - EPAL = 0x3, // 50Hz 625 PAL-B/G - others than Brazil and Argentina - // also 50Hz 576i/576p - - EPALM = 0x4, // 59.94Hz 525 PAL-M - Brazil (use not recommended) - // also 59.94Hz 480i/480p - - EPALNc = 0x5, // 50Hz 625 PAL-Nc - Argentina (use not recommended) - // also 50Hz 576i/576p - - ESECAM = 0x6, // 50 Hz 625 SECAM - // also 50Hz 576i/576p - - EHDTV720x50 = 0x7, // 50Hz 720p. @deprecated Do not use - EHDTV720x60 = 0x8, // 60Hz 720p. @deprecated Do not use - EHDTV1080x50 = 0x9, // 50Hz 1080i/1080p. @deprecated Do not use - EHDTV1080x60 = 0xA, // 60Hz 1080i/1080p. @deprecated do not use - }; - - ///Television's aspect ration: - enum TAspectRatio - { - EUndefRatio = 0x0, - E4d3 = 0x1, // 4:3 not valid for 720p/1080i/1080p - E16d9 = 0x2, // 16:9 - }; - - ///Progressive Sequence: - enum TScanMode - { - EUndefScan = 0x0, - EProgressiveScan = 0x1, // 480p/576p/720p/1080p - EInterlacedScan = 0x2, // 480i/576i/1080i - }; - - ///Connection type: - enum TOutput - { - EUndefOutput = 0x0, - ECompositeVideo = 0x1, // NTSCJ/NTSCM/PAL/PALM/PALNc/SECAM - ESVideo = 0x2, // NTSCJ/NTSCM/PAL/PALM/PALNc/SECAM - EYPbPr, // 480i/576i/480p/576p - EHDTVYPbPr, // 720p/1080i/1080p (+480i/576i/480p/576p) - EHDMI, - EDVI, - }; - - ///Flicker filter: - enum TFlickerFilterType - { - EUndefFlicker = 0x0, - EFilterEnabled = 0x1, // not valid for EProgressiveScan - EFilterDisabled = 0x2, - }; - - ///Cable detection: - enum TDetectionType - { - EUndefAutoDetect = 0x0, - EAutoDetectOn = 0x1, - EAutoDetectOff = 0x2, - }; - public: - //Inline constuctor - TTvSettings():iTvSystem(EUndefSystem), - iRatio(EUndefRatio), - iScanMode(EUndefScan), - iOutput(EUndefOutput), - iFlickerFilter(EUndefFlicker), - iAutoDetection(EUndefAutoDetect), - iPixelAspectRatioNumerator(1), - iPixelAspectRatioDenominator(1), - iHorizontalOverScan(000),//0.00% - iVerticalOverScan(000), //0.00% - iCornerPointsUsed(EFalse), - iLeftTopCorner(), - iRightBottomCorner() - {} - ///Class members, fill these: - public: - ///Set Tv-system here: - TSystem iTvSystem; - ///Set Tv aspect ratio here: - TAspectRatio iRatio; - ///Set scan mode: - TScanMode iScanMode; - ///Output type: - TOutput iOutput; - ///Set flicker filter on/off: - TFlickerFilterType iFlickerFilter; - ///Autodetection mode: - TDetectionType iAutoDetection; - - ///Pixel aspect ratio (PAR) numerator. PAR=iPixelAspectRatioNumerator/iPixelAspectRatioDenominator. - TUint8 iPixelAspectRatioNumerator; - ///@see iPixelAspectRatioNumerator - TUint8 iPixelAspectRatioDenominator; - - ///Overscan width, percentage (0 - +15%), 2 decimals. 1 means 0.01%. Deprecated (use iRightBottomCorner&iLeftTopCorner). - TUint16 iHorizontalOverScan; - ///Overscan high, see iHorizontalOverScan. Deprecated (use iRightBottomCorner&iLeftTopCorner). - TUint16 iVerticalOverScan; - - ///ETrue if iLeftTopCorner&iRightBottomCorner are used instead of iHorizontalOverScan&iVerticalOverScan - TBool iCornerPointsUsed; - /** Overscan in pixels. Set Left Top corner point. Zero when Tv supports underscan (0=underscan enabled) - This should be "point" to active image area. Cannot point out of active image area. - Cannot across with iRightBottomCorner. And this allows overscan and position tuning. */ - TPoint iLeftTopCorner; - /** Overscan in pixels. Set Right Bottom corner point (offset from Tv's left top corner). - @see iLeftTopCorner - Driver returns KErrExtensionNotSupported if driver does not support this settings. - If driver supports centralizing only, then this has to be same as iLeftTopCorner. */ - TPoint iRightBottomCorner; - }; - -///The maximum length for the product name on TMDS bus -const TUint KProductNameChars = 8; -///The maximum length for the product description on TMDS bus -const TUint KProductDescriptorsChars = 16; -/** -HDMI/DVI timings and settings. See detailed values of standard formats from OutputModes_X.xls -*/ -class THdmiDviTimings - { - public: - enum TSourceType - { - ESourceTypeUnknown = 0x00, - ESourceTypeDigitalSTB = 0x01, - ESourceTypeDVD = 0x02, - ESourceTypeDVHS = 0x03, - ESourceTypeHddVideo = 0x04, - ESourceTypeDVC = 0x05, - ESourceTypeDSC = 0x06, - ESourceTypeVideoCD = 0x07, - ESourceTypeGame = 0x08, - ESourceTypePCGeneral = 0x09, - }; - - public: - THdmiDviTimings():iCeaMode(ECeaFixedModeNone), - iDmtMode(EDmtFixedModeNone), - iTvPhysicalImageWidthMm(0), - iTvPhysicalImageHeightMm(0), - iTvPhysicalImageAspectRatioNumerator(0), - iTvPhysicalImageAspectRatioDenominator(0), - iPixelClockKHz(0), - iHorizontalActivePixels(0), - iHorizontalBlankingPixels(0), - iVerticalActiveLines(0), - iVerticalBlankingLines(0), - iHorizontalSyncOffsetPixels(0), - iHorizontalSyncPulseWidthPixels(0), - iHorizontalBorderPixels(0), - iVerticalSyncOffsetLinesField1(00),//0.0 - iVerticalSyncPulseWidthLinesField1(0), - iVerticalBorderLinesField1(0), - iVerticalSyncOffsetLinesField2(00),//0.0 - iVerticalSyncPulseWidthLinesField2(0), - iVerticalBorderLinesField2(0), - iLeftBorderPixels(0), - iRightBorderPixels(0), - iInterlaced(EFalse), - iHorizontalSyncPolarity(EFalse), - iVerticalSyncPolarity(EFalse), - iPixelRepeat(0),//No repeat - iUnderscanEnabled(EFalse), - iLeftTopCorner(), - iRightBottomCorner(), - iImageAspectRatio(TTvSettings::EUndefRatio), - iPixelAspectRatioNumerator(1), - iPixelAspectRatioDenominator(1), - iConnector(TTvSettings::EUndefOutput), - iTvColorCoordinates(), - iTvHdmiVersion(0), - iTvHdmiRevision(0), - iProductName(), - iProductDescription(), - iSourceType(ESourceTypeUnknown) - {} - public: - /** Set CEA-mode. If none or DMT-mode is selected this should be ECeaFixedModeNone. - Even modes are given to driver, all other datamembers must be valid. - With CEA mode 1 this is E640x480p59_94d60Hz4d3 */ - TFixedModeCea iCeaMode; - ///Set DMT-mode. If none or CEA-mode is selected this should be EDmtFixedModeNone. With CEA mode 1 this is EDmtFixedModeNone - TFixedModeDmt iDmtMode; - - ///Tv physical size in millimetres. Can be 0 if iTvPhysicalImageAspectRatioNumerator is used. - TUint iTvPhysicalImageWidthMm; - ///@see iTvPhysicalImageWidthMm - TUint iTvPhysicalImageHeightMm; - /** Tv physical aspect ratio. Can be NULL if iTvPhysicalImageWidthMm is defined. Read from EDID. - AR=iTvPhysicalImageAspectRatioNumerator/iTvPhysicalImageAspectRatioDenominator */ - TUint16 iTvPhysicalImageAspectRatioNumerator; - ///@see iTvPhysicalImageAspectRatioNumerator - TUint16 iTvPhysicalImageAspectRatioDenominator; - - ///Dot clock. With CEA mode 1 and 59.94Hz this is 25175KHz - TUint iPixelClockKHz; - - ///Horizontal image width (resolution, columns). With CEA mode 1 this is 640 - TUint16 iHorizontalActivePixels; - /** Horizontal blanking time in pixels. Total HTime=iHorizontalActivePixels+iHorizontalBlankingPixels. With CEA mode 1 this is 160 - Presented always as in CEA-model. */ - TUint16 iHorizontalBlankingPixels; - ///Vertical image height (resolution, lines). With CEA mode 1 this is 480 - TUint16 iVerticalActiveLines; - ///Vertical blanking time in lines. Total VTime=iVerticalActiveLines+iVerticalBlankingLines. With CEA mode 1 this is 45 - TUint16 iVerticalBlankingLines; - - ///Horizontal pulse frontporch in pixels. With CEA mode 1 this is 16 - TUint16 iHorizontalSyncOffsetPixels; - ///Horizontal pulse duration in pixels. With CEA mode 1 this is 96 - TUint16 iHorizontalSyncPulseWidthPixels; - ///Horizontal border (decreases addressable area). With CEA mode 1 this is 0. - TUint16 iHorizontalBorderPixels; - /** Vertical pulse frontporch in lines. Fixed point with 10x, 1=10. 1.5=15. - With CEA mode 1 this is 100 (actual value = 10). - Presented always as CEA-model handle porches. For example E1024x768i87HzRB this is 00 */ - TUint16 iVerticalSyncOffsetLinesField1; - ///Vertical pulse duration in lines. With CEA mode 1 this is 2. With E1024x768i87HzRB this is 4. - TUint16 iVerticalSyncPulseWidthLinesField1; - ///Vertical border (decreases addressable area). With CEA mode 1 this is 0. - TUint16 iVerticalBorderLinesField1; - ///@see iVerticalSyncOffsetLinesField1. With progressive mode, this is unused. With E1024x768i87HzRB this is 10 (value 1). - TUint16 iVerticalSyncOffsetLinesField2; - ///@see iVerticalSyncPulseWidthLinesField1. With progressive mode, this is unused. With E1024x768i87HzRB this is 4. - TUint16 iVerticalSyncPulseWidthLinesField2; - ///@see iVerticalBorderLinesField1. With progressive mode, this is unused. - TUint16 iVerticalBorderLinesField2; - - ///Left border (decreases addressable area). With CEA mode 1 this is 0. - TUint16 iLeftBorderPixels; - ///Right border (decreases addressable area). With CEA mode 1 this is 0. - TUint16 iRightBorderPixels; - - ///ETrue=Interlaced scanning, EFalse=Progressive scanning. With CEA mode 1 this is EFalse. - TBool iInterlaced; - ///Horizontal sync polarity, EFalse=Negative, ETrue=Positive. With CEA mode 1 this is EFalse. - TBool iHorizontalSyncPolarity; - ///Vertical sync polarity, EFalse=Negative, ETrue=Positive. With CEA mode 1 this is EFalse. - TBool iVerticalSyncPolarity; - /** Wanted pixel repeat, can be used if mode supports. Otherwise horisontal resolution can be increased also. - Value minus one. 0 -> sent once. 9 -> pixel sent 10 times. - 0 when repeat is disabled. With CEA mode 1 this is 0. */ - TUint8 iPixelRepeat; - - /** ETrue if Tv supports underscan, and it is enabled (to be always enabled when supported/possible), - EFalse otherwise */ - TBool iUnderscanEnabled; - /** Overscan in pixels. Set Left Top corner point. Zero when Tv supports underscan (0=underscan enabled) - This should be "point" to active image area. Cannot point out of active image area. - Cannot across with iRightBottomCorner. And this allows overscan and position tuning. */ - TPoint iLeftTopCorner; - /** Overscan in pixels. Set Right Bottom corner point (offset from Tv's left top corner). - @see iLeftTopCorner. Has not affect if iCentralizingOnly==ETrue. */ - TPoint iRightBottomCorner; - - ///Image aspect ratio (IAR). With CEA mode 1 this is E4d3. - TTvSettings::TAspectRatio iImageAspectRatio; - ///Pixel aspect ratio (PAR) numerator. PAR=iPixelAspectRatioNumerator/iPixelAspectRatioDenominator. With CEA mode 1 PAR=1/1. - TUint8 iPixelAspectRatioNumerator; - ///@see iPixelAspectRatioNumerator - TUint8 iPixelAspectRatioDenominator; - - ///Tv connector type. E.g. if connected to Tv's HDMI connector, this is EHDMI. - TTvSettings::TOutput iConnector; - - ///Tv color coordinates (read from EDID) - TTvColorCoordinates iTvColorCoordinates; - - ///HDMI version what Tv supports. Version combination is iTvHdmiVersion.iTvHdmiRevision. Zeroes if DVI. - TUint8 iTvHdmiVersion; - ///@see iTvHdmiVersion - TUint8 iTvHdmiRevision; - - /** Product name which to be sent to Tv in "Source Product Infoframe". - Cell 0 contains first letter. All unused characters should be Null. */ - TChar iProductName[ KProductNameChars ]; - /** Product Description which to be sent to Tv in "Source Product Infoframe". - Cell 0 contains first letter. All unused characters should be Null. */ - TChar iProductDescription[ KProductDescriptorsChars ]; - ///Source type which to be sent to Tv in "Source Product Infoframe". All unused characters should be Null. - TSourceType iSourceType; - }; - -/** -Standby Figure Format. Fully deprecated since TB10.2. -Note for TB9.2 and TB10.1: -- iLeftTopColumn & iLeftTopRow are deprecated and those can be ignored. -- the icon of iColumns x iRows is scaled by (iScaleNumeratorWidth/iScaleDenominatorWidth) and (iScaleNumeratorHeight/iScaleDenominatorHeight) -- the resulting icon is centered to the layer's extent which contained the protected surface -- the scaled and centered icon is clipped against layer extent and screen size. -- pixels inside the layer's extent not covered by the scaled and centered icon are filled with iBackGroundColor. -*/ -class TStandByFigure - { - public: - enum TFigureType - { - ///Figure instead of UI - EStandByFigure, - ///Figure when copy protected material - EProtectedContentFigure,//Keep latest - }; - - public: - TStandByFigure():iTable(NULL), - iFigureType(EStandByFigure), - iColumns(0), - iRows(0), - iScaleNumeratorWidth(1),//1x - iScaleDenominatorWidth(1), - iScaleNumeratorHeight(1),//1x - iScaleDenominatorHeight(1), - iLeftTopColumn(0), - iLeftTopRow(0), - iBackGroundColor(0x0000)//Black - {} - public: - /** Input RGB565 RRRR RGGG GGGB BBBB LE. - Set pointer to zero when TFigureType-figure is wanted to disable. - Table's max size is StandByFigureMaxSizeInBytes() */ - TUint16* iTable; - ///StandBy figure type - TFigureType iFigureType; - ///Describes how many columns figure has. - TUint16 iColumns; - ///Describes how many rows figure has. - TUint16 iRows; - ///Width scaler numerator (iScaleNumeratorWidth/iScaleDenominatorWidth) - TUint16 iScaleNumeratorWidth; - ///Width scaler denominator - TUint16 iScaleDenominatorWidth; - ///Height scaler numerator (iScaleNumeratorHeight/iScaleDenominatorHeight) - TUint16 iScaleNumeratorHeight; - ///Height scaler denominator - TUint16 iScaleDenominatorHeight; - ///Start column. Deprecated! - TUint16 iLeftTopColumn; - ///Start row. Deprecated! - TUint16 iLeftTopRow; - ///Back ground color. Input RGB565 RRRR RGGG GGGB BBBB. - TUint16 iBackGroundColor; - }; - -#endif //__TVOUTCONFIGDEF_H__ - -// End of File - - diff -r 3f0699f2e14c -r 11da52d4c847 devicesrv_plat/tv_out_config_api/tv_out_config_api.metaxml --- a/devicesrv_plat/tv_out_config_api/tv_out_config_api.metaxml Thu Oct 14 12:47:54 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,14 +0,0 @@ - - -tv_out_config_api -API for configuration tv out settings -c++ -accessoryservices - - - - -no -yes - - diff -r 3f0699f2e14c -r 11da52d4c847 devicesrv_pub/accessory_monitoring_api/doc/S60_5_0_Accessory_Monitoring_API_D.zip Binary file devicesrv_pub/accessory_monitoring_api/doc/S60_5_0_Accessory_Monitoring_API_D.zip has changed diff -r 3f0699f2e14c -r 11da52d4c847 devicesrv_pub/haptics_api/doc/S60_5_1_Haptics_API_Specification_D.zip Binary file devicesrv_pub/haptics_api/doc/S60_5_1_Haptics_API_Specification_D.zip has changed diff -r 3f0699f2e14c -r 11da52d4c847 devicesrv_pub/sensor_channel_api/doc/S60_5_0_Sensor_API_Specification_D.zip Binary file devicesrv_pub/sensor_channel_api/doc/S60_5_0_Sensor_API_Specification_D.zip has changed diff -r 3f0699f2e14c -r 11da52d4c847 dosservices/commondsy/doc/S60_Common_DSY_Design.doc Binary file dosservices/commondsy/doc/S60_Common_DSY_Design.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 dosservices/commondsy/doc/S60_Licensee_DSY_Implementation_Guide.doc Binary file dosservices/commondsy/doc/S60_Licensee_DSY_Implementation_Guide.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 dosservices/dosserver/doc/S60_3_2_DOS_Server_System_Agent_Extension_Design_C.doc Binary file dosservices/dosserver/doc/S60_3_2_DOS_Server_System_Agent_Extension_Design_C.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 dosservices/tsrc/dsytesttool/doc/S60_3_1_DSY_Test_Tool_Design_C.doc Binary file dosservices/tsrc/dsytesttool/doc/S60_3_1_DSY_Test_Tool_Design_C.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 hwrmhaptics/examples/hapticstestapp/doc/How_to_execute_hapticstestapp.txt --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/hwrmhaptics/examples/hapticstestapp/doc/How_to_execute_hapticstestapp.txt Sat Oct 30 22:20:20 2010 +0300 @@ -0,0 +1,40 @@ +Scope: +This application allows to test functionality of Haptics available in the Symbian OS as part of the HWRMHaptics component within DeviceServices Package. + + +Features: +1) A complete UI based app which allows to test public API available with "hatpics_api" +2) For every public API there is an UI interface. +3) Can be used by developers to test any functionality change in the S/W components. +4) An immediate tool to check the route-cause when an error is raised. +5) IVT (Immersion VibeTonz) files composed using TouchSense Studio can be loaded and tested with this app. (More Info, refer to section How to Load IVT Files) + + +Build: +It was quite simple to build this app, as it makes use of complete product code components and functionality(Ofcourse it has to do this way!!) +You can find this appln. source code @ sf\os\devicesrv\hwrmhaptics\examples\hapticstestapp\ +Just build at the group. +V:sf\os\devicesrv\hwrmhaptics\examples\hapticstestapp\group>sbs -c armv5 + + +Deploy: +This appln. has support to be included in rom build as well as package installataion. Either of the method can be adopted to delpoy it. +1) Package Installation Method:- + Run "createandsign.cmd" @ hapticstestapp\sis + Install hapticstest.sisx on the phone +2) Alernate Method:- use the default rom build command, for e.g. imaker default + + +Test: +Installed hapticstest appln can be launched from Application folder under the phone Main Menu. +Make use of "init" from options menu, which will make the device ready to play haptics effects. + +How to Load IVT Files: +Using Touchsense studio IVT files can be created and exported to a file whose extension will be .ivt +These IVT files can be played on Nokia Hardware using Haptics test application. +Load the .ivt files to E:\others folder. During application launch, searches the respective drive and loads them to play with the player. +If no files were found, it warns the app user with a message telling couldnt find any IVT files to load. + + +Open Issues: +1) Currently this app is developed on Symbian Avkon Framework. So it may not work with MCL release based on Direct UI i.e. Qt. \ No newline at end of file diff -r 3f0699f2e14c -r 11da52d4c847 hwrmhaptics/tsrc/haptics_eunit/group/bld.inf --- a/hwrmhaptics/tsrc/haptics_eunit/group/bld.inf Thu Oct 14 12:47:54 2010 +0300 +++ b/hwrmhaptics/tsrc/haptics_eunit/group/bld.inf Sat Oct 30 22:20:20 2010 +0300 @@ -18,10 +18,10 @@ PRJ_PLATFORMS ARMV5 WINSCW -PRJ_EXPORTS +PRJ_TESTEXPORTS ../data/hwrmhapticsuid.ini /epoc32/release/winscw/udeb/z/private/200184b9/hwrmhapticsuid.ini -PRJ_MMPFILES +PRJ_TESTMMPFILES MT_HapticsClient.mmp // End of file diff -r 3f0699f2e14c -r 11da52d4c847 hwrmhaptics/tsrc/haptics_stif/group/bld.inf --- a/hwrmhaptics/tsrc/haptics_stif/group/bld.inf Thu Oct 14 12:47:54 2010 +0300 +++ b/hwrmhaptics/tsrc/haptics_stif/group/bld.inf Sat Oct 30 22:20:20 2010 +0300 @@ -18,14 +18,14 @@ PRJ_PLATFORMS DEFAULT -PRJ_EXPORTS +PRJ_TESTEXPORTS ../init/hwrmhapticsuid.ini /epoc32/release/winscw/udeb/z/private/200184b9/hwrmhapticsuid.ini ../init/hwrmhapticsuid.ini /epoc32/data/z/private/200184b9/hwrmhapticsuid.ini ../init/hapticsclienttest.ini /epoc32/winscw/c/TestFramework/hapticsclienttest.ini ../conf/hapticsclienttest.cfg /epoc32/winscw/c/TestFramework/hapticsclienttest.cfg -PRJ_MMPFILES +PRJ_TESTMMPFILES hapticsclienttest.mmp // End of file diff -r 3f0699f2e14c -r 11da52d4c847 mediator/doc/S60_3_1_Mediator_Design_C.doc Binary file mediator/doc/S60_3_1_Mediator_Design_C.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 mediator/tsrc/public/basic/group/envrecall.cmd --- a/mediator/tsrc/public/basic/group/envrecall.cmd Thu Oct 14 12:47:54 2010 +0300 +++ b/mediator/tsrc/public/basic/group/envrecall.cmd Sat Oct 30 22:20:20 2010 +0300 @@ -19,7 +19,9 @@ echo Cleaning up mediatorstub... pushd ..\stub\group -call bldmake bldfiles -call abld test reallyclean +REM call bldmake bldfiles +REM call abld test reallyclean +call sbs -c armv5.test REALLYCLEAN +call sbs -c winscw.test REALLYCLEAN popd @echo Cleaning up mediatorstub... Finished diff -r 3f0699f2e14c -r 11da52d4c847 mediator/tsrc/public/basic/group/envsetup.cmd --- a/mediator/tsrc/public/basic/group/envsetup.cmd Thu Oct 14 12:47:54 2010 +0300 +++ b/mediator/tsrc/public/basic/group/envsetup.cmd Sat Oct 30 22:20:20 2010 +0300 @@ -19,9 +19,13 @@ echo Setting up mediatorstub... pushd ..\stub\group -call bldmake bldfiles -call abld test reallyclean -call abld test build +REM call bldmake bldfiles +REM call abld test reallyclean +call sbs -c armv5.test REALLYCLEAN +call sbs -c winscw.test REALLYCLEAN +REM call abld test build +call sbs -c armv5.test +call sbs -c winscw.test popd @echo Setting up mediatorstub... Finished diff -r 3f0699f2e14c -r 11da52d4c847 package_definition.xml --- a/package_definition.xml Thu Oct 14 12:47:54 2010 +0300 +++ b/package_definition.xml Sat Oct 30 22:20:20 2010 +0300 @@ -188,10 +188,6 @@ - - - - diff -r 3f0699f2e14c -r 11da52d4c847 psmservices/psmserver/doc/S60_3_2_Power_Save_Mode_Server_Design_C.doc Binary file psmservices/psmserver/doc/S60_3_2_Power_Save_Mode_Server_Design_C.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 psmservices/psmserver/tsrc/PsmTestModule/group/bld.inf --- a/psmservices/psmserver/tsrc/PsmTestModule/group/bld.inf Thu Oct 14 12:47:54 2010 +0300 +++ b/psmservices/psmserver/tsrc/PsmTestModule/group/bld.inf Sat Oct 30 22:20:20 2010 +0300 @@ -52,9 +52,9 @@ // CenRep files -../cenrep/10200EE3.txt /epoc32/RELEASE/winscw/UDEB/Z/private/10202BE9/10200EE3.txt -../cenrep/10200EE3.txt /epoc32/RELEASE/winscw/UREL/Z/private/10202BE9/10200EE3.txt -../cenrep/10200EE3.txt /epoc32/data/Z/private/10202BE9/10200EE3.txt +../cenrep/10200EE3.txt /epoc32/release/winscw/udeb/z/private/10202BE9/10200EE3.txt +../cenrep/10200EE3.txt /epoc32/release/winscw/urel/z/private/10202BE9/10200EE3.txt +../cenrep/10200EE3.txt /epoc32/data/z/private/10202BE9/10200EE3.txt // CenRep config files 10200EE3.xml /epoc32/release/winscw/urel/z/private/2000B187/cenrep/10200EE3.xml diff -r 3f0699f2e14c -r 11da52d4c847 resourceinterfaces/fmtransmittercontrol/group/FmTx_HWRM.iby --- a/resourceinterfaces/fmtransmittercontrol/group/FmTx_HWRM.iby Thu Oct 14 12:47:54 2010 +0300 +++ b/resourceinterfaces/fmtransmittercontrol/group/FmTx_HWRM.iby Sat Oct 30 22:20:20 2010 +0300 @@ -21,9 +21,7 @@ #include // Feature Registry (featreg.dll) -#ifdef FF_FMTX file=ABI_DIR\DEBUG_DIR\HWRMFmTxClient.dll SYSTEM_BINDIR\HWRMFmTxClient.dll -#endif #endif // __FMTX_HWRESOURCEMANAGER_IBY__ diff -r 3f0699f2e14c -r 11da52d4c847 resourcemgmt/hwresourcesmgr/documentation/HWRM Central Repository keys.xls Binary file resourcemgmt/hwresourcesmgr/documentation/HWRM Central Repository keys.xls has changed diff -r 3f0699f2e14c -r 11da52d4c847 resourcemgmt/hwresourcesmgr/documentation/HWRM Design.doc Binary file resourcemgmt/hwresourcesmgr/documentation/HWRM Design.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 resourcemgmt/hwresourcesmgr/documentation/HWRM Policy Configuration.doc Binary file resourcemgmt/hwresourcesmgr/documentation/HWRM Policy Configuration.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 resourcemgmt/hwresourcesmgr/documentation/How-To Write HWRM Power State Plugin.doc Binary file resourcemgmt/hwresourcesmgr/documentation/How-To Write HWRM Power State Plugin.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 resourcemgmt/hwresourcesmgr/documentation/How-To Write HWRM Target Modifier Plugin.doc Binary file resourcemgmt/hwresourcesmgr/documentation/How-To Write HWRM Target Modifier Plugin.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 resourcemgmt/hwresourcesmgr/documentation/How-to Write Light, Vibra, Power and FmTx HWRM Plugin.doc Binary file resourcemgmt/hwresourcesmgr/documentation/How-to Write Light, Vibra, Power and FmTx HWRM Plugin.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 resourcemgmt/hwresourcesmgr/server/src/HWRMLightService.cpp --- a/resourcemgmt/hwresourcesmgr/server/src/HWRMLightService.cpp Thu Oct 14 12:47:54 2010 +0300 +++ b/resourcemgmt/hwresourcesmgr/server/src/HWRMLightService.cpp Sat Oct 30 22:20:20 2010 +0300 @@ -1773,6 +1773,7 @@ COMPONENT_TRACE1(_L( "HWRM Server - CHWRMLightService::SetColorL Deleting allocated aSplitCommandData")); //Release the data that is allocated, as there will not be ProcessResponseL //coverity[freed_arg] + //coverity[delete_void] delete aSplitCommandData; } } diff -r 3f0699f2e14c -r 11da52d4c847 resourcemgmt/hwresourcesmgr/server/src/HWRMPowerCommonData.cpp --- a/resourcemgmt/hwresourcesmgr/server/src/HWRMPowerCommonData.cpp Thu Oct 14 12:47:54 2010 +0300 +++ b/resourcemgmt/hwresourcesmgr/server/src/HWRMPowerCommonData.cpp Sat Oct 30 22:20:20 2010 +0300 @@ -1007,13 +1007,18 @@ iClientsQueIter.SetToFirst(); clientData = iClientsQueIter++; - TUint newGCD = clientData->iPowerMeasurementsClientData.iRequestedIntervalMultiple; + + aIntervalMultiple = 0; + if( clientData ) + { + TUint newGCD = clientData->iPowerMeasurementsClientData.iRequestedIntervalMultiple; - while((clientData = iClientsQueIter++) != NULL) - { - newGCD = CalculateGCD(clientData->iPowerMeasurementsClientData.iRequestedIntervalMultiple,newGCD); - } - aIntervalMultiple = newGCD; + while((clientData = iClientsQueIter++) != NULL) + { + newGCD = CalculateGCD(clientData->iPowerMeasurementsClientData.iRequestedIntervalMultiple,newGCD); + } + aIntervalMultiple = newGCD; + } COMPONENT_TRACE1(_L( "HWRM Server - CClientsData::RecalculatePluginInterval - return" ) ); } diff -r 3f0699f2e14c -r 11da52d4c847 resourcemgmt/hwresourcesmgr/server/src/HWRMService.cpp --- a/resourcemgmt/hwresourcesmgr/server/src/HWRMService.cpp Thu Oct 14 12:47:54 2010 +0300 +++ b/resourcemgmt/hwresourcesmgr/server/src/HWRMService.cpp Sat Oct 30 22:20:20 2010 +0300 @@ -179,6 +179,7 @@ if(data->iSplitCommandData) { COMPONENT_TRACE3( ( _L( "HWRM Server - CHWRMService::CompleteRequest Deleting iSplitCommandData(0x%x) for Id(0x%x)" ) ), data->iSplitCommandData, data->iSplitCommandId ); + //coverity[delete_void] delete data->iSplitCommandData; } delete data; diff -r 3f0699f2e14c -r 11da52d4c847 resourcemgmt/powerandmemorynotificationservice/engineering/features/SGL.GT0304.113 Shutdown Manager Incremental Design Document - PREQ 1089 v1-0.doc Binary file resourcemgmt/powerandmemorynotificationservice/engineering/features/SGL.GT0304.113 Shutdown Manager Incremental Design Document - PREQ 1089 v1-0.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 resourcemgmt/powerandmemorynotificationservice/engineering/features/SGL.GT0329.113 DEF111025 Design Document v1-0.doc Binary file resourcemgmt/powerandmemorynotificationservice/engineering/features/SGL.GT0329.113 DEF111025 Design Document v1-0.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 resourcemgmt/powerandmemorynotificationservice/engineering/features/SGL.GT0329.221 Development Test Spec DEF111025 v1-0.doc Binary file resourcemgmt/powerandmemorynotificationservice/engineering/features/SGL.GT0329.221 Development Test Spec DEF111025 v1-0.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 resourcemgmt/vibractrl/doc/S60_3_0_Vibra_Control_Design_C.doc Binary file resourcemgmt/vibractrl/doc/S60_3_0_Vibra_Control_Design_C.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 sensorservices/orientationssy/doc/S60_Orientation_SSY_Configuration_D.doc Binary file sensorservices/orientationssy/doc/S60_Orientation_SSY_Configuration_D.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 sensorservices/sensordatacompensator/doc/S60_5_1_Sensor_Data_Compensator_Design_D.doc Binary file sensorservices/sensordatacompensator/doc/S60_5_1_Sensor_Data_Compensator_Design_D.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 sensorservices/sensorserver/doc/S60_5_0_Sensor_Server_Design_D.doc Binary file sensorservices/sensorserver/doc/S60_5_0_Sensor_Server_Design_D.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 sensorservices/sensorserver/src/util/sensrvchannelinfo.cpp --- a/sensorservices/sensorserver/src/util/sensrvchannelinfo.cpp Thu Oct 14 12:47:54 2010 +0300 +++ b/sensorservices/sensorserver/src/util/sensrvchannelinfo.cpp Sat Oct 30 22:20:20 2010 +0300 @@ -27,7 +27,7 @@ location.Copy(iLocation);\ TBuf vendor;\ vendor.Copy(iVendorId);\ -API_TRACE(( _L("Sensor Util - TSensrvChannelInfo::TSensrvChannelInfo - iChannelId=%d, iContextType=%d, iQuantity=%d, iChannelType=%d, iLocation=%S, iVendorId=%S, iDataItemSize=%d, iChannelDataTypeId=%d, iReserved=%d"),iChannelId,iContextType,iQuantity,iChannelType,&location,&vendor,iDataItemSize,iChannelDataTypeId,iReserved)); +//API_TRACE(( _L("Sensor Util - TSensrvChannelInfo::TSensrvChannelInfo - iChannelId=%d, iContextType=%d, iQuantity=%d, iChannelType=%d, iLocation=%S, iVendorId=%S, iDataItemSize=%d, iChannelDataTypeId=%d, iReserved=%d"),iChannelId,iContextType,iQuantity,iChannelType,&location,&vendor,iDataItemSize,iChannelDataTypeId,iReserved)); #else #define _TRACE_CHANNEL_INFO_ #endif diff -r 3f0699f2e14c -r 11da52d4c847 sensorservices/tiltcompensationssy/doc/S60_Tilt_Compensation_SSY_Design_D.doc Binary file sensorservices/tiltcompensationssy/doc/S60_Tilt_Compensation_SSY_Design_D.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 sysstatemgmt/systemstateplugins/group/bld.inf --- a/sysstatemgmt/systemstateplugins/group/bld.inf Thu Oct 14 12:47:54 2010 +0300 +++ b/sysstatemgmt/systemstateplugins/group/bld.inf Sat Oct 30 22:20:20 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2008-2010 Nokia Corporation and/or its subsidiary(-ies). // All rights reserved. // This component and the accompanying materials are made available // under the terms of "Eclipse Public License v1.0" @@ -19,9 +19,6 @@ #include "../gsapolicy/group/bld.inf" #include "../adptplugin/group/bld.inf" #include "../cmncustomcmd/group/bld.inf" -#if defined(SYMBIAN_SSM_GRACEFUL_SHUTDOWN) -#include "../utilityplugins/group/bld.inf" -#endif #include "../conditionevaluator/group/bld.inf" // include test code @@ -30,9 +27,6 @@ #include "../test/tintadptplugin/group/bld.inf" #include "../test/tcmncustomcmd/group/bld.inf" #include "../test/tintgsapolicy/group/bld.inf" -#if defined(SYMBIAN_SSM_GRACEFUL_SHUTDOWN) -#include "../test/tunitutilityplugin/group/bld.inf" -#endif #include "../test/tunitconditionevaluator/group/bld.inf" #include "../test/tintconditionevaluator/group/bld.inf" #if defined(SYMBIAN_SSM_FLEXIBLE_MERGE) diff -r 3f0699f2e14c -r 11da52d4c847 sysstatemgmt/systemstateplugins/group/ssplugins.iby --- a/sysstatemgmt/systemstateplugins/group/ssplugins.iby Thu Oct 14 12:47:54 2010 +0300 +++ b/sysstatemgmt/systemstateplugins/group/ssplugins.iby Sat Oct 30 22:20:20 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2008-2010 Nokia Corporation and/or its subsidiary(-ies). // All rights reserved. // This component and the accompanying materials are made available // under the terms of "Eclipse Public License v1.0" @@ -21,10 +21,4 @@ #include #include -#if defined(SYMBIAN_SSM_GRACEFUL_SHUTDOWN) - #if (_SSMSTARTUPMODE != 1) && (_SSMSTARTUPMODE != 8) - #include - #endif -#endif //SYMBIAN_SSM_GRACEFUL_SHUTDOWN - #endif // __SSPLUGINS_IBY__ diff -r 3f0699f2e14c -r 11da52d4c847 sysstatemgmt/systemstateplugins/group/sspluginstest.iby --- a/sysstatemgmt/systemstateplugins/group/sspluginstest.iby Thu Oct 14 12:47:54 2010 +0300 +++ b/sysstatemgmt/systemstateplugins/group/sspluginstest.iby Sat Oct 30 22:20:20 2010 +0300 @@ -1,4 +1,4 @@ -// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). +// Copyright (c) 2008-2010 Nokia Corporation and/or its subsidiary(-ies). // All rights reserved. // This component and the accompanying materials are made available // under the terms of "Eclipse Public License v1.0" @@ -23,8 +23,4 @@ #include #include -#if defined(SYMBIAN_SSM_GRACEFUL_SHUTDOWN) - #include -#endif //SYMBIAN_SSM_GRACEFUL_SHUTDOWN - #endif // __SSPLUGINSTEST_IBY__ diff -r 3f0699f2e14c -r 11da52d4c847 sysstatemgmt/systemstateplugins/test/tappgsapolicy/group/How_to_execute_tappgsapolicy.doc Binary file sysstatemgmt/systemstateplugins/test/tappgsapolicy/group/How_to_execute_tappgsapolicy.doc has changed diff -r 3f0699f2e14c -r 11da52d4c847 sysstatemgmt/systemstateplugins/test/tunitutilityplugin/group/bld.inf --- a/sysstatemgmt/systemstateplugins/test/tunitutilityplugin/group/bld.inf Thu Oct 14 12:47:54 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,50 +0,0 @@ -// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). -// All rights reserved. -// This component and the accompanying materials are made available -// under the terms of "Eclipse Public License v1.0" -// which accompanies this distribution, and is available -// at the URL "http://www.eclipse.org/legal/epl-v10.html". -// -// Initial Contributors: -// Nokia Corporation - initial contribution. -// -// Contributors: -// -// Description: -// - -/** - @file - @test - @internalComponent - Internal Symbian test code -*/ - -PRJ_PLATFORMS -DEFAULT - - -PRJ_EXPORTS -// test code only - - -PRJ_MMPFILES -// test code only - - -PRJ_TESTMMPFILES -t_utilityplugin.mmp - - -PRJ_TESTEXPORTS -sspluginstest_utility.iby /epoc32/rom/include/sspluginstest_utility.iby - -../scripts/sspluginstest_utility_run.bat /epoc32/data/z/sspluginstest/sspluginstest_utility_run.bat -../scripts/sspluginstest_utility_run.bat /epoc32/release/winscw/udeb/sspluginstest_utility_run.bat -../scripts/sspluginstest_utility_run.bat /epoc32/release/winscw/urel/sspluginstest_utility_run.bat -../scripts/sspluginstest_utility_run.bat /epoc32/release/armv5/udeb/sspluginstest_utility_run.bat -../scripts/sspluginstest_utility_run.bat /epoc32/release/armv5/urel/sspluginstest_utility_run.bat - -../scripts/sspluginstest_utility.script z:/sspluginstest/sspluginstest_utility.script -../scripts/sspluginstest_unit_utility.script z:/sspluginstest/sspluginstest_unit_utility.script - - diff -r 3f0699f2e14c -r 11da52d4c847 sysstatemgmt/systemstateplugins/test/tunitutilityplugin/group/sspluginstest_tutility.pkg --- a/sysstatemgmt/systemstateplugins/test/tunitutilityplugin/group/sspluginstest_tutility.pkg Thu Oct 14 12:47:54 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ -; -; Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). -; All rights reserved. -; This component and the accompanying materials are made available -; under the terms of "Eclipse Public License v1.0" -; which accompanies this distribution, and is available -; at the URL "http://www.eclipse.org/legal/epl-v10.html". -; -; Initial Contributors: -; Nokia Corporation - initial contribution. -; -; Contributors: -; -; Description: -; - -;Languages -&EN - - -;Localised Vendor name -%{"Ssplugins_TUtility EN"} - -; Vendor name -: "Ssplugins_TUtility" - -"\sf\os\devicesrv\sysstatemgmt\systemstateplugins\test\tunitutilityplugin\scripts\sspluginstest_utility.script"-"c:\devicesrv\sspluginstest\sspluginstest_utility.script" -"\sf\os\devicesrv\sysstatemgmt\systemstateplugins\test\tunitutilityplugin\scripts\sspluginstest_unit_utility.script"-"c:\devicesrv\sspluginstest\sspluginstest_unit_utility.script" - diff -r 3f0699f2e14c -r 11da52d4c847 sysstatemgmt/systemstateplugins/test/tunitutilityplugin/group/sspluginstest_utility.iby --- a/sysstatemgmt/systemstateplugins/test/tunitutilityplugin/group/sspluginstest_utility.iby Thu Oct 14 12:47:54 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,30 +0,0 @@ -/* -* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -*/ - -#ifndef __SSPLUGINSTEST_UTILITY_IBY__ -#define __SSPLUGINSTEST_UTILITY_IBY__ - -#include -#include - -// test server -data=ABI_DIR\DEBUG_DIR\tutilityplugin_server.exe sys\bin\tutilityplugin_server.exe - -// script files -data=DATAZ_\sspluginstest\sspluginstest_utility.script \sspluginstest\sspluginstest_utility.script -data=DATAZ_\sspluginstest\sspluginstest_unit_utility.script \sspluginstest\sspluginstest_unit_utility.script -#endif //__SSPLUGINSTEST_UTILITY_IBY__ diff -r 3f0699f2e14c -r 11da52d4c847 sysstatemgmt/systemstateplugins/test/tunitutilityplugin/group/t_utilityplugin.mmp --- a/sysstatemgmt/systemstateplugins/test/tunitutilityplugin/group/t_utilityplugin.mmp Thu Oct 14 12:47:54 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,59 +0,0 @@ -// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). -// All rights reserved. -// This component and the accompanying materials are made available -// under the terms of "Eclipse Public License v1.0" -// which accompanies this distribution, and is available -// at the URL "http://www.eclipse.org/legal/epl-v10.html". -// -// Initial Contributors: -// Nokia Corporation - initial contribution. -// -// Contributors: -// -// Description: -// - -/** - @file - @test - @internalComponent - Internal Symbian test code -*/ - -TARGET tutilityplugin_server.exe -TARGETTYPE exe -TARGETPATH /sys/bin -UID 0x1000007A 0x1028359C -VENDORID 0x70000001 - -CAPABILITY PowerMgmt ReadDeviceData WriteDeviceData ProtServ DiskAdmin SwEvent - -OS_LAYER_SYSTEMINCLUDE_SYMBIAN -MW_LAYER_SYSTEMINCLUDE_SYMBIAN - -USERINCLUDE ../inc -USERINCLUDE ../../../localinc -USERINCLUDE ../../../utilityplugins/inc - -SOURCEPATH ../src -SOURCE tutilityplugin_server.cpp -SOURCE tutilityplugin_step.cpp -SOURCE tunitutilityplugin_step.cpp - -// production code -USERINCLUDE ../../../utilityplugins/inc - -SOURCEPATH ../../../utilityplugins/src -SOURCE lafshutdowneventobserveradaptor.cpp - -LIBRARY euser.lib -LIBRARY efsrv.lib -LIBRARY estor.lib -LIBRARY bafl.lib - -LIBRARY testexecuteutils.lib -LIBRARY testexecutelogclient.lib -LIBRARY uiklaf.lib -LIBRARY ssmcmn.lib -LIBRARY ws32.lib -LIBRARY hal.lib -SMPSAFE diff -r 3f0699f2e14c -r 11da52d4c847 sysstatemgmt/systemstateplugins/test/tunitutilityplugin/inc/tunitutilityplugin_step.h --- a/sysstatemgmt/systemstateplugins/test/tunitutilityplugin/inc/tunitutilityplugin_step.h Thu Oct 14 12:47:54 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,49 +0,0 @@ -// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). -// All rights reserved. -// This component and the accompanying materials are made available -// under the terms of "Eclipse Public License v1.0" -// which accompanies this distribution, and is available -// at the URL "http://www.eclipse.org/legal/epl-v10.html". -// -// Initial Contributors: -// Nokia Corporation - initial contribution. -// -// Contributors: -// -// Description: -// - -/** - @file - @test - @internalComponent - Internal Symbian test code -*/ -#ifndef __TUNITUTILITYPLUGIN_TEST_H__ -#define __TUNITUTILITYPLUGIN_TEST_H__ - -#include -#include -#include -#include -_LIT(KTUnitUtilityPluginStep,"UnitUtilityPluginStep"); - -class CUnitUtilityPluginTest : public CTestStep - { -public: - typedef void (CUnitUtilityPluginTest::*ClassFuncPtrL) (); - CUnitUtilityPluginTest(const TDesC& aStepName); - ~ CUnitUtilityPluginTest(); -public: - //from CTestStep - TVerdict doTestStepPreambleL(); - TVerdict doTestStepL(); - TVerdict doTestStepPostambleL(); - - void TestClientArrayL(); - void TestGetShutdownStateL(); - void TestIsClientHungL(); -private: - CActiveScheduler* iScheduler; - }; - -#endif / /__TUNITUTILITYPLUGIN_TEST_H__ diff -r 3f0699f2e14c -r 11da52d4c847 sysstatemgmt/systemstateplugins/test/tunitutilityplugin/inc/tutilityplugin_server.h --- a/sysstatemgmt/systemstateplugins/test/tunitutilityplugin/inc/tutilityplugin_server.h Thu Oct 14 12:47:54 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,38 +0,0 @@ -// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). -// All rights reserved. -// This component and the accompanying materials are made available -// under the terms of "Eclipse Public License v1.0" -// which accompanies this distribution, and is available -// at the URL "http://www.eclipse.org/legal/epl-v10.html". -// -// Initial Contributors: -// Nokia Corporation - initial contribution. -// -// Contributors: -// -// Description: -// tutilityplugin_srver.h -// -// - -/** - @file - @test - @internalComponent - Internal Symbian test code -*/ - -#ifndef __TUTILITY_PLUGIN_TEST_SERVER_H__ -#define __TUTILITY_PLUGIN_TEST_SERVER_H__ - -#include - -class CUtilityPluginTestServer : public CTestServer - { -public: - static CUtilityPluginTestServer * NewLC(); - - //from CTestServer - CTestStep* CreateTestStep(const TDesC& aStepName); - }; - -#endif //__TUTILITY_PLUGIN_TEST_SERVER_H__ diff -r 3f0699f2e14c -r 11da52d4c847 sysstatemgmt/systemstateplugins/test/tunitutilityplugin/inc/tutilityplugin_step.h --- a/sysstatemgmt/systemstateplugins/test/tunitutilityplugin/inc/tutilityplugin_step.h Thu Oct 14 12:47:54 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,88 +0,0 @@ -// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). -// All rights reserved. -// This component and the accompanying materials are made available -// under the terms of "Eclipse Public License v1.0" -// which accompanies this distribution, and is available -// at the URL "http://www.eclipse.org/legal/epl-v10.html". -// -// Initial Contributors: -// Nokia Corporation - initial contribution. -// -// Contributors: -// -// Description: -// tutilityplugin_step.cpp -// -// - -/** - @file - @test - @internalComponent - Internal Symbian test code -*/ -#ifndef __TUTILITY_PLUGIN_TEST_H__ -#define __TUTILITY_PLUGIN_TEST_H__ - -#include -#include -#include - -_LIT(KTUtilityPluginStep,"UtilityPluginStep"); - -class CUtilityPluginTest : public CTestStep - { -public: - typedef void (CUtilityPluginTest::*ClassFuncPtrL) (); -public: - CUtilityPluginTest(const TDesC& aStepName); - ~ CUtilityPluginTest(); - - //from CTestStep - TVerdict doTestStepPreambleL(); - TVerdict doTestStepL(); - TVerdict doTestStepPostambleL(); - - void doOOMTestL(ClassFuncPtrL testFuncL); - -private: - void doTest1L(); - void doTest2L(); - void doTest3L(); - void doTest4L(); - void doTest5L(); - void doTest6L(); - void doTest7L(); //Manual test - void TestNotificationAndPowerModeL(TRawEvent::TType aRawEvent, TBool aIsNotificationExpected, TPowerState aExpectedPowerState, - TBool aDelayAcknowledgement = EFalse, TBool aCancelTransition = EFalse); - void SetDefaultTestKey(); - void SwitchOn(); - void TestStateChangeNotificationNotReceivedL(); - void TestSystemShutdownWithoutAcknowledgementL(); - void LogDelayAcknowledgement(); - TInt GetStartUpModeL(); - }; - -/** -Class which will run the timer and expire after stipulated timeout. -*/ -class CShutdownNotifObserverTimer : public CTimer - { - public: - static CShutdownNotifObserverTimer* NewL(); - ~CShutdownNotifObserverTimer(); - void StartTimer(TInt32 aTimeout); - - protected: - // from CActive - void RunL(); - TInt RunError(TInt aError); - - private: - void ConstructL(); - CShutdownNotifObserverTimer(); - private: - CActiveScheduler* iScheduler; - }; - -#endif //__TUTILITY_PLUGIN_TEST_H__ - diff -r 3f0699f2e14c -r 11da52d4c847 sysstatemgmt/systemstateplugins/test/tunitutilityplugin/scripts/sspluginstest_unit_utility.script --- a/sysstatemgmt/systemstateplugins/test/tunitutilityplugin/scripts/sspluginstest_unit_utility.script Thu Oct 14 12:47:54 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,52 +0,0 @@ -// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). -// All rights reserved. -// This component and the accompanying materials are made available -// under the terms of "Eclipse Public License v1.0" -// which accompanies this distribution, and is available -// at the URL "http://www.eclipse.org/legal/epl-v10.html". -// -// Initial Contributors: -// Nokia Corporation - initial contribution. -// -// Contributors: -// -// Description: -// - -PRINT Run UtilityPluginFailStep tests - -LOAD_SUITE tutilityplugin_server - -START_TESTCASE DEVSRVS-SSPLUGINS-UTILITYPLUGINS-0002 -//! @SYMTestCaseID DEVSRVS-SSPLUGINS-UTILITYPLUGINS-0002 -//! @SYMPREQ PREQ2326 -//! @SYMREQ REQ10976 REQ9110 REQ9120 REQ9155 REQ9158 -//! @SYMTestType UT -//! @SYMTestPriority Critical -//! @SYMTestStatus Implemented -//! @SYMTestCaseDesc Unit test code for CLafShutdownEventObserverAdaptor. -//! @SYMTestActions TestGetShutdownState() Performs following actions, -//! - Create an instance of CLafShutdownEventObserverAdaptor -//! - Initialize and start -//! - Call On GetShutdownState to get the shutdown state(powerOff and -//! allSessionsHavePendingRequest). - -//! TestClientArray() Performs following actions, -//! - Create an instance of CLafShutdownEventObserverAdaptor -//! - Initialize and start -//! - Call On ClientArrayLC - -//! TestIsClientHung() Performs following actions, -//! - Create an instance of CLafShutdownEventObserverAdaptor -//! - Initialize and start -//! - Get all registered client thread IDs -//! - Call On IsClientHung - -//! @SYMTestExpectedResults -//! -AllSessionsHavePendingRequest and powerOff state should be EFalse -//! _Test that return a array of registered client thread IDs -//! _Test that all registered client thread id are not hung. - -RUN_TEST_STEP 100 tutilityplugin_server UnitUtilityPluginStep -END_TESTCASE DEVSRVS-SSPLUGINS-UTILITYPLUGINS-0002 - diff -r 3f0699f2e14c -r 11da52d4c847 sysstatemgmt/systemstateplugins/test/tunitutilityplugin/scripts/sspluginstest_utility.script --- a/sysstatemgmt/systemstateplugins/test/tunitutilityplugin/scripts/sspluginstest_utility.script Thu Oct 14 12:47:54 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,74 +0,0 @@ -// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). -// All rights reserved. -// This component and the accompanying materials are made available -// under the terms of "Eclipse Public License v1.0" -// which accompanies this distribution, and is available -// at the URL "http://www.eclipse.org/legal/epl-v10.html". -// -// Initial Contributors: -// Nokia Corporation - initial contribution. -// -// Contributors: -// -// Description: -// - -PRINT Run UtilityPluginFailStep tests - -LOAD_SUITE tutilityplugin_server - -START_TESTCASE DEVSRVS-SSPLUGINS-UTILITYPLUGINS-0001 -//! @SYMTestCaseID DEVSRVS-SSPLUGINS-UTILITYPLUGINS-0001 -//! @SYMPREQ PREQ2326 -//! @SYMREQ REQ10976 REQ9110 REQ9120 REQ9155 REQ9158 -//! @SYMTestType IT -//! @SYMTestPriority Critical -//! @SYMTestStatus Implemented -//! @SYMTestCaseDesc Integration test for ESwitchOff event. -//! Integration test for ERestartSystem event. -//! Integration test for Standby event. -//! Integration test for an event which does not shutdown the system. -//! Integration test for delaying a shutdown transition. -//! Integration test to cancel a shutdown transition. -//! Integration test which doesn't acknowledge a shutdown notification. -//! This is not an automated test. Should be run manually to understand the behaviour. -//! @SYMTestActions doTest1L() Performs following actions, -//! - Create state aware session and register for state change notification -//! - Generate a KeySwitchOff event -//! - Check for notification -//! doTest2L() Performs following actions, -//! - Create state aware session and register for state change notification -//! - Generate a ERestartSystem event -//! - Check for notification -//! doTest3L() Performs following actions, -//! - Create state aware session and register for state change notification -//! - Generate a ESwitchOff event -//! - Check for notification -//! doTest4L() Performs following actions, -//! - Create state aware session and register for state change notification -//! - Generate a ECaseClose event which is not a shutdown event -//! - Start a timer and wait for 10 seconds, can be any number in future -//! - Check if notification is received -//! doTest5L() Performs following actions, -//! - Create state aware session and register for state change notification -//! - Generate a ESwitchOff event -//! - Check for notification -//! - On notification delay acknowledgement by adding INFO_PRINTS. Now acknowledge. -//! doTest6L() Performs following actions, -//! - Create state aware session and register for state change notification -//! - Generate a ESwitchOff event -//! - Cancel state transition -//! doTest7L() Performs following actions, -//! - Create state aware session and register for state change notification -//! - Generate a ESwitchOff event -//! - On shutdown notification don't acknowledge -//! @SYMTestExpectedResults Test should get notifications for shutdown substate transition and power state should be changed to EPwStandby -//! Test should get notifications for shutdown substate transition and power state should be changed to EPwRestart -//! Test should get notifications for shutdown substate transition and power state should be changed to EPwStandby -//! Test should not receive any notification and power state should remain the same. -//! Power state should be changed to EPwStandby -//! State transition should not be cancelled. Notification should be received and Power state should be changed to EPwStandby. -//! A timeout will occur and system will move to Fail state and poweroff the device. -RUN_TEST_STEP 100 tutilityplugin_server UtilityPluginStep -END_TESTCASE DEVSRVS-SSPLUGINS-UTILITYPLUGINS-0001 - diff -r 3f0699f2e14c -r 11da52d4c847 sysstatemgmt/systemstateplugins/test/tunitutilityplugin/scripts/sspluginstest_utility_run.bat --- a/sysstatemgmt/systemstateplugins/test/tunitutilityplugin/scripts/sspluginstest_utility_run.bat Thu Oct 14 12:47:54 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,26 +0,0 @@ -@rem -@rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -@rem All rights reserved. -@rem This component and the accompanying materials are made available -@rem under the terms of "Eclipse Public License v1.0" -@rem which accompanies this distribution, and is available -@rem at the URL "http://www.eclipse.org/legal/epl-v10.html". -@rem -@rem Initial Contributors: -@rem Nokia Corporation - initial contribution. -@rem -@rem Contributors: -@rem -@rem Description: -@rem - -testexecute.exe z:\sspluginstest\sspluginstest_utility.script - -:: Ignore the following if using this script for emulator testing. -:: Logs are automatically copied on hardware to MMC -:: which is assumed to be drive E: -@echo off -if not exist c:\logs\testexecute\ goto :EOF -md e:\logs -md e:\logs\testexecute -copy c:\logs\testexecute\sspluginstest_utility*.htm e:\logs\testexecute\ \ No newline at end of file diff -r 3f0699f2e14c -r 11da52d4c847 sysstatemgmt/systemstateplugins/test/tunitutilityplugin/src/tunitutilityplugin_step.cpp --- a/sysstatemgmt/systemstateplugins/test/tunitutilityplugin/src/tunitutilityplugin_step.cpp Thu Oct 14 12:47:54 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,177 +0,0 @@ -// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). -// All rights reserved. -// This component and the accompanying materials are made available -// under the terms of "Eclipse Public License v1.0" -// which accompanies this distribution, and is available -// at the URL "http://www.eclipse.org/legal/epl-v10.html". -// -// Initial Contributors: -// Nokia Corporation - initial contribution. -// -// Contributors: -// -// Description: -// - -/** - @file - @test - @internalComponent - Internal Symbian test code -*/ -#include -#include -#include -#include -#include -#include -#include -#include -#include "lafshutdowneventobserveradaptor.h" -#include "tunitutilityplugin_step.h" -#include //CServShutdownServer - -CUnitUtilityPluginTest::CUnitUtilityPluginTest(const TDesC& aStepName) - { - SetTestStepName(aStepName); - } - -CUnitUtilityPluginTest::~CUnitUtilityPluginTest() - { - delete iScheduler; - } - -TVerdict CUnitUtilityPluginTest::doTestStepPreambleL() - { - iScheduler = new CActiveScheduler; - CActiveScheduler::Install(iScheduler); - return CTestStep::doTestStepPreambleL(); - } - -TVerdict CUnitUtilityPluginTest::doTestStepPostambleL() - { - return CTestStep::doTestStepPostambleL(); - } - -TVerdict CUnitUtilityPluginTest::doTestStepL() - { - if (IsSsmGracefulShutdown()) - { - __UHEAP_MARK; - TRAPD(err, TestGetShutdownStateL();); - TEST(err == KErrNone); - __UHEAP_MARKEND; - - __UHEAP_MARK; - TRAP(err, TestClientArrayL();); - TEST(err == KErrNone); - __UHEAP_MARKEND; - - __UHEAP_MARK; - TRAP(err, TestIsClientHungL();); - TEST(err == KErrNone); - __UHEAP_MARKEND; - } - else - { - INFO_PRINTF2(_L("SSM is not used for shutdown, IsSsmGracefulShutdown() returned : [%d]"), IsSsmGracefulShutdown()); - } - - return TestStepResult(); - } - -/* -@SYMTestCaseID DS-UTILITYPLUGINS-0011 -@SYMPREQ PREQ2326 -@SYMREQ REQ10976 REQ9110 REQ9120 REQ9155 REQ9158 -@SYMTestType UT -@SYMTestPriority Critical -@SYMTestStatus Implemented -@SYMTestCaseDesc Tests behaviour of CLafShutdownEventObserverAdaptor -@SYMTestActions Performs following actions, - - Create an instance of CLafShutdownEventObserverAdaptor - - Initialize and start - - Call On GetShutdownState to get the shutdown state(powerOff and allSessionsHavePendingRequest). -@SYMTestExpectedResults allSessionsHavePendingRequest and powerOff state should be EFalse -*/ -void CUnitUtilityPluginTest::TestGetShutdownStateL() - { - INFO_PRINTF1(_L("*** Starting TestGetShutdownStateL test")); - CLafShutdownEventObserverAdaptor* observer = reinterpret_cast(CLafShutdownEventObserverAdaptor::NewL()); - CleanupStack::PushL(observer); - TRAPD(err,observer->InitializeL()); - TEST(err == KErrNone || err == KErrAlreadyExists); - observer->StartL(); - TBool powerOff = ETrue; - TBool allSessionsHavePendingRequest = ETrue; - observer->GetShutdownState(powerOff, allSessionsHavePendingRequest); - TEST(!powerOff); - TEST(!allSessionsHavePendingRequest); - observer->Release(); - CleanupStack::PopAndDestroy(observer); - INFO_PRINTF1(_L("*** TestGetShutdownStateL test completed")); - } - -/* -@SYMTestCaseID DS-UTILITYPLUGINS-0012 -@SYMPREQ PREQ2326 -@SYMREQ REQ10976 REQ9110 REQ9120 REQ9155 REQ9158 -@SYMTestType UT -@SYMTestPriority Critical -@SYMTestStatus Implemented -@SYMTestCaseDesc Tests behaviour of CLafShutdownEventObserverAdaptor -@SYMTestActions Performs following actions, - - Create an instance of CLafShutdownEventObserverAdaptor - - Initialize and start - - Call On ClientArrayLC -@SYMTestExpectedResults Test that return a array of registered client thread IDs -*/ -void CUnitUtilityPluginTest::TestClientArrayL() - { - INFO_PRINTF1(_L("*** Starting TestClientArrayL test")); - CLafShutdownEventObserverAdaptor* observer = reinterpret_cast(CLafShutdownEventObserverAdaptor::NewL()); - CleanupStack::PushL(observer); - TRAPD(err,observer->InitializeL()); - TEST(err == KErrNone || err == KErrAlreadyExists); - observer->StartL(); - CArrayFix* array = observer->ClientArrayLC(); - INFO_PRINTF2(_L("*** TestClientArrayL : Array count %d"),array->Count()); - TEST(array->Count()); - CleanupStack::PopAndDestroy(array); - observer->Release(); - CleanupStack::PopAndDestroy(observer); - INFO_PRINTF1(_L("*** TestClientArrayL test completed")); - } - -/* -@SYMTestCaseID DS-UTILITYPLUGINS-0013 -@SYMPREQ PREQ2326 -@SYMREQ REQ10976 REQ9110 REQ9120 REQ9155 REQ9158 -@SYMTestType UT -@SYMTestPriority Critical -@SYMTestStatus Implemented -@SYMTestCaseDesc Tests behaviour of CLafShutdownEventObserverAdaptor -@SYMTestActions Performs following actions, - - Create an instance of CLafShutdownEventObserverAdaptor - - Initialize and start - - Get all registered client thread IDs - - Call On IsClientHung -@SYMTestExpectedResults Test that all registered client thread id are not hung. -*/ -void CUnitUtilityPluginTest::TestIsClientHungL() - { - INFO_PRINTF1(_L("*** Starting TestIsClientHungL test")); - CLafShutdownEventObserverAdaptor* observer = reinterpret_cast(CLafShutdownEventObserverAdaptor::NewL()); - CleanupStack::PushL(observer); - TRAPD(err,observer->InitializeL()); - TEST(err == KErrNone || err == KErrAlreadyExists); - observer->StartL(); - CArrayFix* array = observer->ClientArrayLC(); - for(TInt i=0; iCount(); i++) - { - TEST(!observer->IsClientHung(array->At(i))); - } - CleanupStack::PopAndDestroy(array); - observer->Release(); - CleanupStack::PopAndDestroy(observer); - INFO_PRINTF1(_L("*** TestIsClientHungL test completed")); - } diff -r 3f0699f2e14c -r 11da52d4c847 sysstatemgmt/systemstateplugins/test/tunitutilityplugin/src/tutilityplugin_server.cpp --- a/sysstatemgmt/systemstateplugins/test/tunitutilityplugin/src/tutilityplugin_server.cpp Thu Oct 14 12:47:54 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,95 +0,0 @@ -// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). -// All rights reserved. -// This component and the accompanying materials are made available -// under the terms of "Eclipse Public License v1.0" -// which accompanies this distribution, and is available -// at the URL "http://www.eclipse.org/legal/epl-v10.html". -// -// Initial Contributors: -// Nokia Corporation - initial contribution. -// -// Contributors: -// -// Description: -// - -/** - @file - @test - @internalComponent - Internal Symbian test code -*/ -#include "tutilityplugin_server.h" -#include "tutilityplugin_step.h" -#include "tunitutilityplugin_step.h" - -_LIT(KUtilityPluginTestServerName, "UtilityPluginTestServer"); - -CUtilityPluginTestServer* CUtilityPluginTestServer::NewLC( ) - { - CUtilityPluginTestServer * server = new (ELeave) CUtilityPluginTestServer(); - CleanupStack::PushL(server); - TParsePtrC serverName(RProcess().FileName()); - server->StartL(serverName.Name()); - return server; - } - -static void MainL() - { - CActiveScheduler* sched = new(ELeave) CActiveScheduler; - CleanupStack::PushL (sched); - CActiveScheduler::Install (sched); - - CUtilityPluginTestServer* server = CUtilityPluginTestServer::NewLC( ); - RProcess::Rendezvous (KErrNone ); - sched->Start( ); - - CleanupStack::PopAndDestroy (server ); - CleanupStack::PopAndDestroy (sched ); - } - -/** - Process entry point. Called by client using RProcess API - @return - Standard Epoc error code on process exit - */ -TInt E32Main(void) //lint -e765 -e714 Suppress 'not referenced' and 'could be static' - { - __UHEAP_MARK; - CTrapCleanup* cleanup = CTrapCleanup::New(); - if(cleanup == NULL) - { - return KErrNoMemory; - } - TRAPD(err,MainL()); - if (err) - { - _LIT(KMainErrorStatement, "UtilityPluginTestServer::MainL - Error: %d"); - RDebug::Print(KMainErrorStatement, err); - User::Panic(KUtilityPluginTestServerName, err); - } - delete cleanup; - - __UHEAP_MARKEND; - return KErrNone; - } - -/** - @return - A CTestStep derived instance - */ -CTestStep* CUtilityPluginTestServer::CreateTestStep(const TDesC& aStepName ) - { - CTestStep* testStep = NULL; - if (aStepName == KTUtilityPluginStep) - { - testStep = new CUtilityPluginTest(KTUtilityPluginStep); - } - else if (aStepName == KTUnitUtilityPluginStep) - { - testStep = new CUnitUtilityPluginTest(KTUnitUtilityPluginStep); - } - else - { - RDebug::Printf ("Unknown UtilityPluginTest step %S", &aStepName ); - } - - return testStep; - } diff -r 3f0699f2e14c -r 11da52d4c847 sysstatemgmt/systemstateplugins/test/tunitutilityplugin/src/tutilityplugin_step.cpp --- a/sysstatemgmt/systemstateplugins/test/tunitutilityplugin/src/tutilityplugin_step.cpp Thu Oct 14 12:47:54 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,540 +0,0 @@ -// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). -// All rights reserved. -// This component and the accompanying materials are made available -// under the terms of "Eclipse Public License v1.0" -// which accompanies this distribution, and is available -// at the URL "http://www.eclipse.org/legal/epl-v10.html". -// -// Initial Contributors: -// Nokia Corporation - initial contribution. -// -// Contributors: -// -// Description: -// - -/** - @file - @test - @internalComponent - Internal Symbian test code -*/ -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include "tutilityplugin_step.h" - -TUid TestCategory = {0x456}; -TUint TestKey = 123; -TInt TestDefaultValue = EPwActive; -const TUint KWaitTimer = 10000000; // 10 seconds - -CShutdownNotifObserverTimer* CShutdownNotifObserverTimer::NewL() - { - CShutdownNotifObserverTimer* self = new (ELeave) CShutdownNotifObserverTimer(); - CleanupStack::PushL(self); - self->ConstructL(); - CleanupStack::Pop(self); - return self; - } - -CShutdownNotifObserverTimer::~CShutdownNotifObserverTimer() - { - Cancel(); - delete iScheduler; - } - -void CShutdownNotifObserverTimer::StartTimer(TInt32 aTimeout) - { - After(aTimeout); - CActiveScheduler::Start(); - } - -void CShutdownNotifObserverTimer::RunL() - { - User::LeaveIfError(RProperty::Set(TestCategory, TestKey, 0xBAD)); - RDebug::Print(_L("CShutdownNotifObserverTimer::RunL")); - - CActiveScheduler::Stop(); - } - -TInt CShutdownNotifObserverTimer::RunError(TInt aError) - { - RDebug::Print(_L("RProperty::Set for TestCategory: 0x%x, TestKey: %d failed with an error: %d"), TestCategory, TestKey, aError); - return KErrNone; - } - -void CShutdownNotifObserverTimer::ConstructL() - { - iScheduler = new (ELeave) CActiveScheduler(); - CActiveScheduler::Install(iScheduler); - CActiveScheduler::Add(this); - CTimer::ConstructL(); - } - -CShutdownNotifObserverTimer::CShutdownNotifObserverTimer() : CTimer(EPriorityStandard) - { - } - -CUtilityPluginTest::CUtilityPluginTest(const TDesC& aStepName) - { - SetTestStepName(aStepName); - } - -CUtilityPluginTest::~CUtilityPluginTest() - { - } - -TVerdict CUtilityPluginTest::doTestStepPreambleL() - { - TInt startupMode = GetStartUpModeL(); - if (IsSsmGracefulShutdown()&& (startupMode!=1)) - { - INFO_PRINTF1(_L("Wait for lafshutdowneventobserveradaptor.dll to load")); - User::After(5000000); - //define the test property to check the power mode, this will be set through product code. - _LIT_SECURITY_POLICY_PASS(KReadPolicy); - _LIT_SECURITY_POLICY_PASS(KWritePolicy); - TInt err = RProperty::Define(TestCategory, TestKey, RProperty::EInt, KReadPolicy, KWritePolicy); - INFO_PRINTF2(_L("Test key defined to store the power state with err : [%d]"), err); - SetDefaultTestKey(); - } - return CTestStep::doTestStepPreambleL(); - } - -TVerdict CUtilityPluginTest::doTestStepPostambleL() - { - TInt startupMode = GetStartUpModeL(); - if (IsSsmGracefulShutdown()&& (startupMode!=1)) - { - TInt err = RProperty::Delete(TestCategory, TestKey); - INFO_PRINTF2(_L("Test key deleted to store the power state with err : [%d]"), err); - } - return CTestStep::doTestStepPostambleL(); - } - -TVerdict CUtilityPluginTest::doTestStepL() - { - TInt startupMode = GetStartUpModeL(); - if ((IsSsmGracefulShutdown()) && (startupMode!=1)) - { - __UHEAP_MARK; - TRAPD(err, doTest1L()); - TEST(err == KErrNone); - __UHEAP_MARKEND; - - __UHEAP_MARK; - TRAP(err, doTest2L()); - TEST(err == KErrNone); - __UHEAP_MARKEND; - - __UHEAP_MARK; - TRAP(err, doTest3L()); - TEST(err == KErrNone); - __UHEAP_MARKEND; - - __UHEAP_MARK; - TRAP(err, doTest4L()); - TEST(err == KErrNone); - __UHEAP_MARKEND; - - __UHEAP_MARK; - TRAP(err, doTest5L()); - TEST(err == KErrNone); - __UHEAP_MARKEND; - - __UHEAP_MARK; - TRAP(err, doTest6L()); - TEST(err == KErrNone); - __UHEAP_MARKEND; - -// OOM tests start here - - __UHEAP_MARK; - TRAP(err, doOOMTestL(&CUtilityPluginTest::doTest1L)); - TEST(err == KErrNone); - __UHEAP_MARKEND; - - __UHEAP_MARK; - TRAP(err, doOOMTestL(&CUtilityPluginTest::doTest2L)); - TEST(err == KErrNone); - __UHEAP_MARKEND; - - __UHEAP_MARK; - TRAP(err, doOOMTestL(&CUtilityPluginTest::doTest3L)); - TEST(err == KErrNone); - __UHEAP_MARKEND; - - __UHEAP_MARK; - TRAP(err, doOOMTestL(&CUtilityPluginTest::doTest5L)); - TEST(err == KErrNone); - __UHEAP_MARKEND; - - __UHEAP_MARK; - TRAP(err, doOOMTestL(&CUtilityPluginTest::doTest6L)); - TEST(err == KErrNone); - __UHEAP_MARKEND; - -/** - Manual test: should be uncommented to test manually. -*/ -/* - __UHEAP_MARK; - TRAP(err, doTest7L()); - TEST(err == KErrNone); - __UHEAP_MARKEND; -*/ } - else - { - INFO_PRINTF2(_L("SSM is not used for shutdown, IsSsmGracefulShutdown() returned: [%d] "), IsSsmGracefulShutdown()); - INFO_PRINTF2(_L("SSM is not used for shutdown, startupMode is [%d] i.e textshellmode"), startupMode); - } - - return TestStepResult(); - } - -/** -Old Test CaseID DS-UTILITYPLUGINS-0001 -Old Test CaseID DS-UTILITYPLUGINS-0008 -Old Test CaseID DS-UTILITYPLUGINS-0009 -New Test CaseID DEVSRVS-SSPLUGINS-UTILITYPLUGINS-0001 - */ - -void CUtilityPluginTest::doTest1L() - { - INFO_PRINTF1(_L("**** Test for ESwitchOff event **** ")); - TestNotificationAndPowerModeL(TRawEvent::ESwitchOff, ETrue, EPwStandby); - SwitchOn(); - SetDefaultTestKey(); - } - -/** -Old Test CaseID DS-UTILITYPLUGINS-0002 -Old Test CaseID DS-UTILITYPLUGINS-0008 -Old Test CaseID DS-UTILITYPLUGINS-0009 -New Test CaseID DEVSRVS-SSPLUGINS-UTILITYPLUGINS-0001 - */ - -void CUtilityPluginTest::doTest2L() - { - INFO_PRINTF1(_L("**** Test for ERestartSystem event **** ")); - TestNotificationAndPowerModeL(TRawEvent::ERestartSystem, ETrue, EPwRestart); - SwitchOn(); - SetDefaultTestKey(); - } - -/** -Old Test CaseID DS-UTILITYPLUGINS-0003 -Old Test CaseID DS-UTILITYPLUGINS-0008 -Old Test CaseID DS-UTILITYPLUGINS-0009 -New Test CaseID DEVSRVS-SSPLUGINS-UTILITYPLUGINS-0001 - */ - -void CUtilityPluginTest::doTest3L() - { - INFO_PRINTF1(_L("**** Test for ESwitchOff event **** ")); - TestNotificationAndPowerModeL(TRawEvent::ESwitchOff, ETrue, EPwStandby); - SwitchOn(); - SetDefaultTestKey(); - } - -/** -Old Test CaseID DS-UTILITYPLUGINS-0004 -Old Test CaseID DS-UTILITYPLUGINS-0005 -New Test CaseID DEVSRVS-SSPLUGINS-UTILITYPLUGINS-0001 - */ - -void CUtilityPluginTest::doTest4L() - { - INFO_PRINTF1(_L("**** Test for ECaseClose event **** ")); - TestNotificationAndPowerModeL(TRawEvent::ECaseClose, EFalse, EPwActive); - SwitchOn(); - SetDefaultTestKey(); - } - -/** -Old Test CaseID DS-UTILITYPLUGINS-0007 -New Test CaseID DEVSRVS-SSPLUGINS-UTILITYPLUGINS-0001 - */ - -void CUtilityPluginTest::doTest5L() - { - INFO_PRINTF1(_L("**** Test delaying system shutdown **** ")); - TestNotificationAndPowerModeL(TRawEvent::ESwitchOff, ETrue, EPwStandby, ETrue); - SwitchOn(); - SetDefaultTestKey(); - } - -/** -Old Test CaseID DS-UTILITYPLUGINS-0006 -New Test CaseID DEVSRVS-SSPLUGINS-UTILITYPLUGINS-0001 - */ - -void CUtilityPluginTest::doTest6L() - { - INFO_PRINTF1(_L("**** Test Cancel system shutdown transition **** ")); - TestNotificationAndPowerModeL(TRawEvent::ESwitchOff, ETrue, EPwStandby, EFalse, ETrue); - SwitchOn(); - SetDefaultTestKey(); - } - -/** -Old Test CaseID DS-UTILITYPLUGINS-0010 -New Test CaseID DEVSRVS-SSPLUGINS-UTILITYPLUGINS-0001 - */ - -void CUtilityPluginTest::doTest7L() - { - INFO_PRINTF1(_L("**** Test system shutdown transition without acknowledgement **** ")); - TestSystemShutdownWithoutAcknowledgementL(); - SwitchOn(); - SetDefaultTestKey(); - } - -/** -Used for Manual test alongwith doTest7L(). -Helper function which doesn't acknowledge a shutdown event notification. -*/ -void CUtilityPluginTest::TestSystemShutdownWithoutAcknowledgementL() - { - //Step1: create state aware session - RSsmStateAwareSession stateAwareSession; - CleanupClosePushL(stateAwareSession); // This R-Class might leak memory in event of a leave - User::LeaveIfError(stateAwareSession.Connect(KUIFrameworkDomain3)); - TRequestStatus status; - stateAwareSession.RequestStateNotification(status); - - //Step2: connect to wserv - RWsSession wsSession; - User::LeaveIfError(wsSession.Connect()); - //and generate the event - TRawEvent wsEvent; - wsEvent.Set(TRawEvent::ESwitchOff); - wsSession.SimulateRawEvent(wsEvent); - wsSession.Flush(); - wsSession.Close(); - INFO_PRINTF2(_L("Generated Raw event : [%d]"), TRawEvent::ESwitchOff); - - //Step3: don't acknowledge when state change notification is received - TSsmState state = stateAwareSession.State(); - for (;;) - { - // Wait for next notification of state change - User::WaitForRequest(status); - TEST(status.Int() == KErrNone); - state = stateAwareSession.State(); - TSsmStateName name = state.Name(); - //stateAwareSession.AcknowledgeStateNotification(KErrNone); - INFO_PRINTF2(_L("Transtition undergoing for the state.substate : [%S]"), &name); - INFO_PRINTF1(_L("Will remain here till timeout occurs and system moves to Fail State")); - } - - //Avoid "Warning: #111-D: statement is unreachable" - //This statement though required will not be executed as the above for loop will wait forever and a timeout will lead the system to move to Fail state. - //stateAwareSession.Close(); - //CleanupStack::PopAndDestroy(); //stateAwareSession - } - -/** -Helper function which prints a delay 10 times. -*/ -void CUtilityPluginTest::LogDelayAcknowledgement() - { - for (TInt i=0; i<10;) - { - INFO_PRINTF2(_L("***** Delaying Acknowledgement [%d] time(s)"), ++i); - } - } - -/** -Helper function which performs following actions -1. Create a CTimer. Set timer to 10 seconds. -2. When timer expires RunL should publish test RProperty to '0xBAD' -3. Get the value and check if its set as expected. -4. Reset the key to default. -5. Cleanup timer. -*/ -void CUtilityPluginTest::TestStateChangeNotificationNotReceivedL() - { - CShutdownNotifObserverTimer* timer = CShutdownNotifObserverTimer::NewL(); - CleanupStack::PushL(timer); - timer->StartTimer(KWaitTimer); - - TInt value = 0; - User::LeaveIfError(RProperty::Get(TestCategory, TestKey, value)); - if (0xBAD == value) - { - INFO_PRINTF1(_L("No Notification received as no state change occurred")); - } - else - { - INFO_PRINTF1(_L(">>>>>>>>>>>>>> Should not be here.")); - TEST(EFalse); - } - SetDefaultTestKey(); - CleanupStack::PopAndDestroy(timer); - } - -/** -Helper function which performs following actions -1. Create a state aware session -2. Generate an event i.e. aRawEvent -3. Check for notification depending on the aIsNotificationExpected -4. Check for the power mode set by power off command. -*/ -void CUtilityPluginTest::TestNotificationAndPowerModeL(TRawEvent::TType aRawEvent, TBool aIsNotificationExpected, - TPowerState aExpectedPowerState, - TBool aDelayAcknowledgement, TBool aCancelTransition) - { - //Step1: create state aware session - RSsmStateAwareSession stateAwareSession; - CleanupClosePushL(stateAwareSession); // This R-Class might leak memory in event of a leave - User::LeaveIfError(stateAwareSession.Connect(KUIFrameworkDomain3)); - TRequestStatus status; - stateAwareSession.RequestStateNotification(status); - - //Step2: connect to wserv - RWsSession wsSession; - User::LeaveIfError(wsSession.Connect()); - //and generate the event - TRawEvent wsEvent; - wsEvent.Set(aRawEvent); - wsSession.SimulateRawEvent(wsEvent); - wsSession.Flush(); - wsSession.Close(); - INFO_PRINTF2(_L("Generated Raw event : [%d]"), aRawEvent); - - //Step3: check for notification depending on the aIsNotificationExpected - TSsmState state = stateAwareSession.State(); - while (aIsNotificationExpected) - { - if (aCancelTransition) - { - RSsmStateManager stateMgr; - User::LeaveIfError(stateMgr.Connect()); - INFO_PRINTF1(_L("Cancelling Shutdown State Transtition")); - stateMgr.RequestStateTransitionCancel(); - stateMgr.Close(); - } - - // Wait for next notification of state change - User::WaitForRequest(status); - TEST(status.Int() == KErrNone); - state = stateAwareSession.State(); - TSsmStateName name; - if ((state.MainState() == ESsmShutdown) && ((state.SubState() == ESsmShutdownSubStatePowerOff) || (state.SubState() == ESsmShutdownSubStateReStart))) - { - if (aDelayAcknowledgement) - { - LogDelayAcknowledgement(); - } - stateAwareSession.AcknowledgeStateNotification(KErrNone); - TEST((state.SubState() == ESsmShutdownSubStatePowerOff) || (state.SubState() == ESsmShutdownSubStateReStart)); - name = state.Name(); - INFO_PRINTF2(_L("Transtition undergoing for the state.substate : [%S]"), &name); - break; - } - else - { - if (aDelayAcknowledgement) - { - LogDelayAcknowledgement(); - } - stateAwareSession.AcknowledgeAndRequestStateNotification(KErrNone, status); - TEST((state.SubState() == ESsmShutdownSubStateCritical) || (state.SubState() == ESsmShutdownSubStateNonCritical)); - name = state.Name(); - INFO_PRINTF2(_L("Transtition undergoing for the state.substate : [%S]"), &name); - } - } - - INFO_PRINTF3(_L("Shutdown event received [%d] and expected is [%d]"), state.MainState() == ESsmShutdown, aIsNotificationExpected); - - if (aIsNotificationExpected) - { - TEST(state.MainState() == ESsmShutdown); - TInt value = 0; - RProperty prop; - TRequestStatus propertyStatus; - User::LeaveIfError(prop.Get(TestCategory, TestKey, value)); - if (aExpectedPowerState != (TPowerState)value) - { - User::LeaveIfError(prop.Attach(TestCategory, TestKey)); - prop.Subscribe(propertyStatus); - User::WaitForRequest(propertyStatus); - User::LeaveIfError(prop.Get(TestCategory, TestKey, value)); - } - //Step4: Test the power mode - TEST(aExpectedPowerState = (TPowerState)value); - INFO_PRINTF3(_L("Power state received is [%d] and expected was [%d]"), value, aExpectedPowerState); - } - else - { - // run timer and wait for 10 seconds to see if any notification is received - TestStateChangeNotificationNotReceivedL(); - stateAwareSession.RequestStateNotificationCancel(); - } - - CleanupStack::PopAndDestroy(); //stateAwareSession - } - -/** -Helper function to switch on the Display, Keyboard and PenState. This will be switched off in case of stand-by -*/ -void CUtilityPluginTest::SwitchOn() - { - HAL::Set(HAL::EDisplayState, 1); - HAL::Set(HAL::EKeyboardState, 1); - HAL::Set(HAL::EPenState, 1); - } - -/** -Helper function to do the OOM testing -*/ -void CUtilityPluginTest::doOOMTestL(ClassFuncPtrL aTestFuncL/*, const TDesC& aTestDesc*/) - { - INFO_PRINTF1(_L("*** Starting OOM test")); - TInt failRate = 1; - - for (; ;failRate++) - { - __UHEAP_RESET; - __UHEAP_SETFAIL(RHeap::EDeterministic,failRate); - __UHEAP_MARK; - - TRAPD(ret, (this->*aTestFuncL)()); - - TEST((ret==KErrNone || ret==KErrNoMemory)); - __UHEAP_MARKEND; - - if (ret==KErrNone) - { - break; - } - } - __UHEAP_RESET; - INFO_PRINTF2(_L("*** OOM Test finished with #allocs : %d."), failRate-1); - } - -/** -Helper function to set the default test key to TestDefaultValue -*/ -void CUtilityPluginTest::SetDefaultTestKey() - { - TInt err = RProperty::Set(TestCategory, TestKey, TestDefaultValue); - INFO_PRINTF3(_L("Default power state set to TPowerState::EPwActive(%d), Published with error(%d)"), TestDefaultValue, err); - } - - TInt CUtilityPluginTest::GetStartUpModeL() - { - TInt startUpMode; - TInt err; - TRAP(err,RProperty::Get(KUidSystemCategory, KSystemStartupModeKey, startUpMode)); - TEST(err == KErrNone); - return startUpMode; - } diff -r 3f0699f2e14c -r 11da52d4c847 sysstatemgmt/systemstateplugins/utilityplugins/bwins/lafshutdowneventobserveradaptoru.def --- a/sysstatemgmt/systemstateplugins/utilityplugins/bwins/lafshutdowneventobserveradaptoru.def Thu Oct 14 12:47:54 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,3 +0,0 @@ -EXPORTS - ?NewL@CLafShutdownEventObserverAdaptor@@SAPAVMSsmUtility@@XZ @ 1 NONAME ; class MSsmUtility * CLafShutdownEventObserverAdaptor::NewL(void) - diff -r 3f0699f2e14c -r 11da52d4c847 sysstatemgmt/systemstateplugins/utilityplugins/eabi/lafshutdowneventobserveradaptoru.def --- a/sysstatemgmt/systemstateplugins/utilityplugins/eabi/lafshutdowneventobserveradaptoru.def Thu Oct 14 12:47:54 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,3 +0,0 @@ -EXPORTS - _ZN32CLafShutdownEventObserverAdaptor4NewLEv @ 1 NONAME - diff -r 3f0699f2e14c -r 11da52d4c847 sysstatemgmt/systemstateplugins/utilityplugins/group/bld.inf --- a/sysstatemgmt/systemstateplugins/utilityplugins/group/bld.inf Thu Oct 14 12:47:54 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,27 +0,0 @@ -// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). -// All rights reserved. -// This component and the accompanying materials are made available -// under the terms of "Eclipse Public License v1.0" -// which accompanies this distribution, and is available -// at the URL "http://www.eclipse.org/legal/epl-v10.html". -// -// Initial Contributors: -// Nokia Corporation - initial contribution. -// -// Contributors: -// -// Description: -// - - -PRJ_PLATFORMS -DEFAULT - - -PRJ_EXPORTS -./lafshutdowneventobserveradaptor.iby /epoc32/rom/include/lafshutdowneventobserveradaptor.iby - - -PRJ_MMPFILES -./lafshutdowneventobserveradaptor.mmp - diff -r 3f0699f2e14c -r 11da52d4c847 sysstatemgmt/systemstateplugins/utilityplugins/group/lafshutdowneventobserveradaptor.iby --- a/sysstatemgmt/systemstateplugins/utilityplugins/group/lafshutdowneventobserveradaptor.iby Thu Oct 14 12:47:54 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,23 +0,0 @@ -/* -* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -*/ - -#ifndef __LAFSHUTDOWNEVENTOBSERVERADAPTOR_IBY__ -#define __LAFSHUTDOWNEVENTOBSERVERADAPTOR_IBY__ - -file=ABI_DIR\BUILD_DIR\lafshutdowneventobserveradaptor.dll sys\bin\lafshutdowneventobserveradaptor.dll - -#endif //__LAFSHUTDOWNEVENTOBSERVERADAPTOR_IBY__ \ No newline at end of file diff -r 3f0699f2e14c -r 11da52d4c847 sysstatemgmt/systemstateplugins/utilityplugins/group/lafshutdowneventobserveradaptor.mmp --- a/sysstatemgmt/systemstateplugins/utilityplugins/group/lafshutdowneventobserveradaptor.mmp Thu Oct 14 12:47:54 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,46 +0,0 @@ -// Copyright (c) 2008-2010 Nokia Corporation and/or its subsidiary(-ies). -// All rights reserved. -// This component and the accompanying materials are made available -// under the terms of "Eclipse Public License v1.0" -// which accompanies this distribution, and is available -// at the URL "http://www.eclipse.org/legal/epl-v10.html". -// -// Initial Contributors: -// Nokia Corporation - initial contribution. -// -// Contributors: -// -// Description: -// - -target lafshutdowneventobserveradaptor.dll -targettype dll -targetpath /sys/bin - -uid 0x2000D767 0x2000D759 -vendorid 0x70000001 - -capability PowerMgmt ReadDeviceData WriteDeviceData ProtServ SwEvent ReadUserData WriteUserData - -// If SYMBIAN_INCLUDE_APP_CENTRIC macro is defined then CommDD capability is required along with the capability -// list described in the above line. -#ifdef SYMBIAN_INCLUDE_APP_CENTRIC -capability CommDD -#endif //SYMBIAN_INCLUDE_APP_CENTRIC - -NOEXPORTLIBRARY /* Has a fixed interface lafshutdowneventobserveradaptor.def */ - -userinclude ../inc -userinclude ../../localinc - -OS_LAYER_SYSTEMINCLUDE_SYMBIAN - - -sourcepath ../src - -source lafshutdowneventobserveradaptor.cpp -deffile lafshutdowneventobserveradaptor.def - -library euser.lib ssmcmn.lib estor.lib - -SMPSAFE diff -r 3f0699f2e14c -r 11da52d4c847 sysstatemgmt/systemstateplugins/utilityplugins/inc/lafshutdowneventobserveradaptor.h --- a/sysstatemgmt/systemstateplugins/utilityplugins/inc/lafshutdowneventobserveradaptor.h Thu Oct 14 12:47:54 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,76 +0,0 @@ -// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). -// All rights reserved. -// This component and the accompanying materials are made available -// under the terms of "Eclipse Public License v1.0" -// which accompanies this distribution, and is available -// at the URL "http://www.eclipse.org/legal/epl-v10.html". -// -// Initial Contributors: -// Nokia Corporation - initial contribution. -// -// Contributors: -// -// Description: -// - -#ifndef __LAFSHUTDOWNEVENTOBSERVERADAPTOR_H__ -#define __LAFSHUTDOWNEVENTOBSERVERADAPTOR_H__ - -#include -#include -#include -#include - -_LIT(KPanicShutdownEventObserverAdaptor, "ShutdownEventObserverAdaptor"); - -enum TShutdownObserverAdaptorPanicCodes - { - EInvalidSession = 1 - }; - -/** -Shutdown event observer adaptor class. -@internalComponent -*/ -NONSHARABLE_CLASS(CLafShutdownEventObserverAdaptor) : public MSsmUtility, public MShutdownEventObserver - { -public: - static IMPORT_C MSsmUtility* NewL(); - - // from MSsmUtility - void InitializeL(); - void StartL(); - void Release(); - - // from MShutdownEventObserver - void HandleShutdownEventL(MSaveObserver::TSaveType aAction,TBool aPowerOff, TPowerState aEvent = EPwStandby); - CArrayFix* ClientArrayLC(); - TBool IsClientHung(TThreadId aId) const; - void GetShutdownState(TBool& aPowerOff, TBool& aAllSessionsHavePendingRequest) const; - -private: - CLafShutdownEventObserverAdaptor(); - ~CLafShutdownEventObserverAdaptor(); - -private: - class RShutdownSrvSession: public RSessionBase - { - public: - void HandleShutdownEventL(MSaveObserver::TSaveType aAction,TBool aPowerOff, TPowerState aEvent = EPwStandby); - CArrayFix* ClientArrayLC(); - TBool IsClientHung(TThreadId aId) const; - void GetShutdownState(TBool& aPowerOff, TBool& aAllSessionsHavePendingRequest) const; - - TInt ConnectL(); - private: - TInt StartServerL(); - }; - -private: - MSsmLoadLafShut* iLafShutdown; - RLibrary iLafShutLib; - RShutdownSrvSession iShutdownSrvSession; - }; - -#endif //__LAFSHUTDOWNEVENTOBSERVERADAPTOR_H__ - diff -r 3f0699f2e14c -r 11da52d4c847 sysstatemgmt/systemstateplugins/utilityplugins/src/lafshutdowneventobserveradaptor.cpp --- a/sysstatemgmt/systemstateplugins/utilityplugins/src/lafshutdowneventobserveradaptor.cpp Thu Oct 14 12:47:54 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,309 +0,0 @@ -// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). -// All rights reserved. -// This component and the accompanying materials are made available -// under the terms of "Eclipse Public License v1.0" -// which accompanies this distribution, and is available -// at the URL "http://www.eclipse.org/legal/epl-v10.html". -// -// Initial Contributors: -// Nokia Corporation - initial contribution. -// -// Contributors: -// -// Description: -// - -#include -#include -#include -#include -#include "lafshutdowneventobserveradaptor.h" - -_LIT( KLafShutDLL, "loadlafshutdown.dll" ); -typedef MSsmLoadLafShut* (*TFuncLoadLafShutL)(void); - -const TInt KNumConnectRetries =10; -//number of times re request the shutdown server for registered client array when -//server side client array count is not equal to client side array count -const TInt KMaxNumOfRetries = 2; - -const TUid KServerUid3={0x10004902}; -_LIT(KShutdownSrvName,"shutdownsrvs"); - -/** -Used to create an instance of CLafShutdownEventObserverAdaptor. - -@return A pointer to an object of type CLafShutdownEventObserverAdaptor. -*/ -EXPORT_C MSsmUtility* CLafShutdownEventObserverAdaptor::NewL() - { - CLafShutdownEventObserverAdaptor* self = new (ELeave) CLafShutdownEventObserverAdaptor(); - return static_cast(self); - } - -/** -Used to Initialize the utlity plugin. -@see MSsmUtility::InitializeL() -*/ -void CLafShutdownEventObserverAdaptor::InitializeL() - { - User::LeaveIfError(iLafShutLib.Load(KLafShutDLL)); - TFuncLoadLafShutL lafShut = reinterpret_cast(iLafShutLib.Lookup(1)); - iLafShutdown = lafShut(); - User::LeaveIfNull(iLafShutdown); - iLafShutdown->CreateShutdownManager(*this); - } - -/** -Starts the utility plugin. -@see MSsmUtility::StartL() -*/ -void CLafShutdownEventObserverAdaptor::StartL() - { - User::LeaveIfError(iShutdownSrvSession.ConnectL()); - } - -/** -Release memory associated with this SUP. -@see MSsmUtility::Release() -*/ -void CLafShutdownEventObserverAdaptor::Release() - { - iLafShutdown->DeleteShutdownManager(); - iLafShutdown = NULL; - iLafShutLib.Close(); - } - -/** -This function notifies all client registered for shutdown notification, and issues a state change to shutdown. -@panic EInvalidSession If shutdown server's session is invalid -*/ -void CLafShutdownEventObserverAdaptor::HandleShutdownEventL(MSaveObserver::TSaveType aAction, TBool aPowerOff, TPowerState aEvent) - { - __ASSERT_ALWAYS(iShutdownSrvSession.Handle(), User::Panic(KPanicShutdownEventObserverAdaptor, EInvalidSession)); - //HandleShutdownEventL() will call NotifySave() - iShutdownSrvSession.HandleShutdownEventL(aAction, aPowerOff, aEvent); - - //Connect to System State Manager - //Create a shutdown state for transition - //Request for shutdown transition passing the shutdown event - RSsmStateManager stateManager; - User::LeaveIfError(stateManager.Connect()); - TSsmStateTransition state(ESsmShutdown, KSsmAnySubState, aEvent); - stateManager.RequestStateTransition(state); - stateManager.Close(); - } - -/** -@panic EInvalidSession If shutdown server's session is invalid -*/ -CArrayFix* CLafShutdownEventObserverAdaptor::ClientArrayLC() - { - __ASSERT_ALWAYS(iShutdownSrvSession.Handle(), User::Panic(KPanicShutdownEventObserverAdaptor, EInvalidSession)); - return iShutdownSrvSession.ClientArrayLC(); - } - -/** -@panic EInvalidSession If shutdown server's session is invalid -*/ -TBool CLafShutdownEventObserverAdaptor::IsClientHung(TThreadId aId) const - { - __ASSERT_ALWAYS(iShutdownSrvSession.Handle(), User::Panic(KPanicShutdownEventObserverAdaptor, EInvalidSession)); - return iShutdownSrvSession.IsClientHung(aId); - } - -/** -@panic EInvalidSession If shutdown server's session is invalid -*/ -void CLafShutdownEventObserverAdaptor::GetShutdownState(TBool& aPowerOff, TBool& aAllSessionsHavePendingRequest) const - { - __ASSERT_ALWAYS(iShutdownSrvSession.Handle(), User::Panic(KPanicShutdownEventObserverAdaptor, EInvalidSession)); - iShutdownSrvSession.GetShutdownState(aPowerOff, aAllSessionsHavePendingRequest); - } - -CLafShutdownEventObserverAdaptor::CLafShutdownEventObserverAdaptor() - { - } - -CLafShutdownEventObserverAdaptor::~CLafShutdownEventObserverAdaptor() - { - } - -/** -This method will establish the connection with the shutdown server. If the shutdown server -is not started yet, it will be started. -@return KErrNone The connection was established successfully. -@return Some other system-wide error codes -*/ -TInt CLafShutdownEventObserverAdaptor::RShutdownSrvSession::ConnectL() - { - TInt err=KErrNone; - TInt retry=KNumConnectRetries; - FOREVER - { - err = CreateSession(__SHUTDOWN_SERVER_NAME, TVersion(KShutdownMajorVN,KShutdownMinorVN,KShutdownBuildVN), KShutdownMessageSlots); - if ((--retry>0) && ((err==KErrNotFound) || (err==KErrServerTerminated))) - { - err = StartServerL(); - if ((err!=KErrNone) && (err!=KErrAlreadyExists)) - { - break; - } - } - else - { - break; - } - } - return err; - } - -/** -This method starts the shutdown server. -@return KErrNone The server was started successfully. -@return KErrAlreadyExists The server is started already. -@return Some other system-wide error codes -*/ -TInt CLafShutdownEventObserverAdaptor::RShutdownSrvSession::StartServerL() - { - TInt error=KErrNone; - const TUidType serverUid(KNullUid,KNullUid,KServerUid3); - - RProcess server; - error = server.Create(KShutdownSrvName,KNullDesC,serverUid); - if(error!=KErrNone) - return error; - TRequestStatus stat; - server.Rendezvous(stat); - if (stat!=KRequestPending) - server.Kill(0); // abort startup - else - server.Resume(); // logon OK - start the server - User::WaitForRequest(stat); // wait for start or death - // we can't use the 'exit reason' if the server panicked as this - // is the panic 'reason' and may be '0' which cannot be distinguished - // from KErrNone - error=(server.ExitType()==EExitPanic) ? KErrGeneral : stat.Int(); - server.Close(); - return error; - } - -/** -This method has to be called, when the registered clients have to be notified that a -particular action has to be done, such as MSaveObserver::ESaveData, MSaveObserver::ESaveAll, -MSaveObserver::EReleaseRAM,... -If the requested action is not MSaveObserver::ESaveNone, the method will call -CServShutdownServer::NotifySave(). -@param aAction The type of the requested action -@param aPowerOff If it is non-zero, this is the beginning of a powerdown sequence. -@param aEvent The type of the powerdown event (power off or restart) -@leave KErrNotSupported Leaves if aEvent is invalid -@see CServShutdownServer::NotifySave() -@see TPowerState -*/ -void CLafShutdownEventObserverAdaptor::RShutdownSrvSession::HandleShutdownEventL(MSaveObserver::TSaveType aAction, TBool aPowerOff, TPowerState aEvent) - { - SendReceive(EEventObsAdaptHandleShutdown, TIpcArgs(aAction, aPowerOff, aEvent)); - } - -/** -This method creates an array of CArrayFix type and appends to it the -thread id-s of the all registered clients. -The created CArrayFix instance will be pushed on the cleanup stack. -Logic for this function is as follows -step1: Request the shutdown server to get the count of registered clients. -step2: Create buffer of size arrayCount * sizeof(TThreadId). -step3: Request the shutdown server to get the array of registered clients. If some client - is registered after step 2 then server will return new count and empty buffer. -step4: If buffer is emptey and server side client array is not equal to client side array - count then repeat the step 3 for 2 times. -step5: if client side array count is equal to server side client array count then append thread ids - to array and return the array else return empty array. -@return A pointer to a CArrayFix array with the client thread id-s.if client side array count - is equal to server side client array count then append thread ids to array and return the array else return empty array. -*/ -CArrayFix* CLafShutdownEventObserverAdaptor::RShutdownSrvSession::ClientArrayLC() - { - CArrayFix* clientArray = new (ELeave) CArrayFixFlat(2); - CleanupStack::PushL(clientArray); - - //arrayCount refers to the array count at server side - TInt arrayCount = 0; - TPckg pckg(arrayCount); - User::LeaveIfError(SendReceive(EEventObsAdaptClientArrayCount, TIpcArgs(&pckg))); - //return an empty array because arrayCount is 0 - if (arrayCount > 0) - { - CBufFlat* buffer = CBufFlat::NewL(arrayCount * sizeof(TThreadId)); - CleanupStack::PushL(buffer); - - TPtr8 bufPtr = buffer->Ptr(0); - TInt clientSideArrayCount = 0; //clientSideArrayCount refers to the array count at client side - //Request the server to get the registered clients. If server side array count is not equal to client - //side array count then retry to request the server for KMaxNumOfRetries times - for (TInt numOfRetries = 0; clientSideArrayCount != arrayCount && numOfRetries <= KMaxNumOfRetries; ++numOfRetries ) - { - clientSideArrayCount = arrayCount; - buffer->ResizeL(clientSideArrayCount * sizeof(TThreadId)); - bufPtr.Set(buffer->Ptr(0)); - User::LeaveIfError(SendReceive(EEventObsAdaptClientArray, TIpcArgs(&bufPtr,clientSideArrayCount,&pckg))); - } - - if (clientSideArrayCount != arrayCount) //retries exhausted and count doesn't match - { - CleanupStack::PopAndDestroy(buffer); - User::Leave(KErrGeneral); - } - - RBufReadStream readStream(*buffer); - readStream.PushL(); - TKeyArrayFix key(0,ECmpTInt); - - for (TInt i = 0; i < arrayCount; ++i) - { - const TInt32 threadHighBit = readStream.ReadUint32L(); - const TInt32 threadLowBit = readStream.ReadUint32L(); - TThreadId threadId(MAKE_TINT64(threadHighBit, threadLowBit)); - TInt pos; - if (0 != clientArray->Find(threadId,key,pos)) - { - clientArray->AppendL(threadId); - } - } - readStream.Pop(); - readStream.Close(); - CleanupStack::PopAndDestroy(buffer); - } - return clientArray; - } -/** -This method checks for pending request of a client's thread, which is passed through aId. -@param aId Client's thread id. -@return ETrue if the client with this thread id has no pending request otherwise EFalse. -*/ -TBool CLafShutdownEventObserverAdaptor::RShutdownSrvSession::IsClientHung(TThreadId aId) const - { - TBool retVal = EFalse; - TPckg pkg1(aId); - TPckg pkg2(retVal); - TIpcArgs args(&pkg1, &pkg2); - - SendReceive(EEventObsAdaptIsClientHung, args); - - return retVal; - } - -/** -This method returns an information about the shutdown status. -@param aPowerOff An output parameter. It will be non-zero, if a powerdown sequence - has been initiated. -@param aAllSessionsHavePendingRequest It will be non-zero, if all clients has pending requests. -*/ -void CLafShutdownEventObserverAdaptor::RShutdownSrvSession::GetShutdownState(TBool& aPowerOff, TBool& aAllSessionsHavePendingRequest) const - { - TPckg powerOff(aPowerOff); - TPckg allSessionsHavePendingRequest(aAllSessionsHavePendingRequest); - TIpcArgs args(&powerOff, &allSessionsHavePendingRequest); - SendReceive(EEventObsAdaptGetShutdownState, args); - } - diff -r 3f0699f2e14c -r 11da52d4c847 sysstatemgmt/systemstatereferenceplugins/custcmd/src/cmddevicesecuritycheck.cpp --- a/sysstatemgmt/systemstatereferenceplugins/custcmd/src/cmddevicesecuritycheck.cpp Thu Oct 14 12:47:54 2010 +0300 +++ b/sysstatemgmt/systemstatereferenceplugins/custcmd/src/cmddevicesecuritycheck.cpp Sat Oct 30 22:20:20 2010 +0300 @@ -152,7 +152,7 @@ errorCode = RProperty::Get(CSsmUiSpecific::StartupPSUid(), KPSStartupReason, startupReason); DEBUGPRINT3A("Getting KPSStartupReason : %d completed with : %d", startupReason, errorCode); - if (CSsmUiSpecific::IsNormalBoot() || CSsmUiSpecific::IsSimChangedReset() || (EStartupDevLockNotSucess == val && EUnknownReset == startupReason)) + if (CSsmUiSpecific::IsNormalBoot() || CSsmUiSpecific::IsSimChangedReset() || (EStartupDevLockNotSucess == val && EUnknownReset == startupReason) || (EFirmwareUpdate == startupReason)) { iPhone.GetLockInfo( iStatus, RMobilePhone::ELockPhoneDevice, iLockInfoPckg ); SetActive();