sbsv2/raptor/test/smoke_suite/test_resources/checksource/commonframework/CommonFramework.h
author lorewang
Wed, 01 Dec 2010 16:05:36 +0800
changeset 715 e0739b8406dd
parent 591 22486c9c7b15
permissions -rw-r--r--
Specify extenal tool with path
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
591
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
     1
/*
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
     2
* Copyright (c) 2000-2009 Nokia Corporation and/or its subsidiary(-ies).
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
     3
* All rights reserved.
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
     4
* This component and the accompanying materials are made available
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
     5
* under the terms of the License "Eclipse Public License v1.0"
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
     6
* which accompanies this distribution, and is available
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
     8
*
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
     9
* Initial Contributors:
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    11
*
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    12
* Contributors:
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    13
*
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    14
* Description: 
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    15
*
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    16
*/
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    17
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    18
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    19
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    20
#ifndef __CommonFramework_H
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    21
#define __CommonFramework_H
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    22
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    23
#include <e32Base.h>
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    24
#include <e32cons.h>
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    25
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    26
_LIT(KTxtEPOC32EX,"EXAMPLES");
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    27
_LIT(KTxtExampleCode,"Symbian OS Example Code");
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    28
_LIT(KFormatFailed,"failed: leave code=%d");
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    29
_LIT(KTxtOK,"ok");
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    30
_LIT(KTxtPressAnyKey," [press any key]");
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    31
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    32
// public
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    33
LOCAL_D CConsoleBase* console; // write all your messages to this
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    34
LOCAL_C void doExampleL(); // code this function for the real example
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    35
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    36
// private
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    37
LOCAL_C void callExampleL(); // initialize with cleanup stack, then do example
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    38
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    39
GLDEF_C TInt E32Main() // main function called by E32
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    40
    {
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    41
	__UHEAP_MARK;
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    42
	CTrapCleanup* cleanup=CTrapCleanup::New(); // get clean-up stack
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    43
	TRAPD(error,callExampleL()); // more initialization, then do example
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    44
	__ASSERT_ALWAYS(!error,User::Panic(KTxtEPOC32EX,error));
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    45
	delete cleanup; // destroy clean-up stack
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    46
	__UHEAP_MARKEND;
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    47
	return 0; // and return
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    48
    }
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    49
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    50
LOCAL_C void callExampleL() // initialize and call example code under cleanup stack
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    51
    {
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    52
	console=Console::NewL(KTxtExampleCode,TSize(KConsFullScreen,KConsFullScreen));
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    53
	CleanupStack::PushL(console);
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    54
	TRAPD(error,doExampleL()); // perform example function
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    55
	if (error)
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    56
		console->Printf(KFormatFailed, error);
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    57
	else
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    58
		console->Printf(KTxtOK);
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    59
	console->Printf(KTxtPressAnyKey);
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    60
	console->Getch(); // get and ignore character
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    61
	CleanupStack::PopAndDestroy(); // close console
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    62
    }
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    63
22486c9c7b15 raptor v2.14.0
jjkang
parents:
diff changeset
    64
#endif