00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030 #include <e32test.h>
00031 #include <f32file.h>
00032 #include "SharedCode.h"
00033 #include "ThrashingExamples.h"
00034 #include "ArrayCreationExamples.h"
00035 #include "InsertandFindExamples.h"
00036 #include "SortingExamples.h"
00037 #include "ThingsNotToDo.h"
00038
00039 _LIT(KTextConsoleTitle, "RArray Examples");
00040 _LIT(KTextFailed, " failed, leave code = %d\n");
00041 _LIT(KTxtPressAnyKey, "Press any key to continue\n");
00042
00043
00044 CConsoleBase* console;
00045 LOCAL_C void MainL()
00046 {
00047 ThrashingExamplesL();
00048 ArrayCreationExamplesL();
00049 SortingExamplesL();
00050 InsertAndFindExamplesL();
00051
00052
00053
00054
00055
00056 }
00057
00058 LOCAL_C void DoStartL()
00059 {
00060
00061 const TSize consoleSize(KConsFullScreen, KConsFullScreen);
00062 console = Console::NewL(KTextConsoleTitle, consoleSize);
00063 CleanupStack::PushL(console);
00064
00065
00066 CActiveScheduler* scheduler = new (ELeave) CActiveScheduler();
00067 CleanupStack::PushL(scheduler);
00068 CActiveScheduler::Install(scheduler);
00069
00070 TRAPD(err, MainL());
00071 if (err != KErrNone)
00072 {
00073 console->Printf(KTextFailed, err);
00074 RDebug::Print(_L("Error %d\n"), err);
00075 __DEBUGGER();
00076 }
00077
00078 User::After(0);
00079 console->Printf(KTxtPressAnyKey);
00080 console->Getch();
00081
00082
00083 CleanupStack::PopAndDestroy(2, console);
00084 console = NULL;
00085 }
00086
00087
00088
00089
00090 GLDEF_C TInt Start()
00091 {
00092
00093 __UHEAP_MARK;
00094 CTrapCleanup* cleanup = CTrapCleanup::New();
00095
00096 TRAPD(err, DoStartL());
00097
00098 delete cleanup;
00099 __UHEAP_MARKEND;
00100 return err;
00101 }
00102
00103
00104
00105
00106 EXPORT_C TInt E32Main()
00107 {
00108 return Start();
00109 }