PowerVR Software Development Kit


Main Page | Class Hierarchy | Class List | File List | Class Members | File Members

PVRShellOS.h

Go to the documentation of this file.
00001 /*!****************************************************************************
00002  @File          SymbianUIQ/PVRShellOS.h
00003 
00004  @Brief         Initialization for the shell using Khronos EGL
00005 
00006  @Date          09/03/2006
00007 
00008  @Copyright    Copyright (C) 2005 - 2006 by Imagination Technologies Limited.
00009 
00010  @Platform      Support for windowed Symbian UIQ
00011 
00012  @Description   Makes programming for 3D APIs easier by wrapping surface initialization,
00013                 Texture allocation and other functions for use by a demo.
00014 
00015 ******************************************************************************/
00016 
00017 /****************************************************************************
00018  ** INCLUDES                                                               **
00019  ****************************************************************************/
00020 
00021 #include <qikcommand.h>
00022 #include <e32cmn.h>
00023 #include <EikStart.h>
00024 #include <qikappui.h>
00025 #include <qikdocument.h>
00026 #include <qikapplication.h>
00027 #include <QikViewBase.h>
00028 
00029 #include <gles\egl.h>
00030 #include <gles\gl.h>
00031 
00032 #include "PVRShell.h"
00033 
00034 /****************************************************************************
00035  ** DEFINES                                                               **
00036  ****************************************************************************/
00037 
00038 #define _stricmp strcasecmp
00039 #define _strnicmp strncasecmp
00040 
00041 /*!***************************************************************************
00042  @Class CPVRShellView
00043  @Brief Symbian User Application implementation
00044 *****************************************************************************/
00045 class CPVRShellView : public CQikViewBase{
00046 public:
00047 
00048     CPVRShellView(CQikAppUi* aAppUi);
00049     static CPVRShellView* NewL(CQikAppUi* aAppUi,const TRect& rect);
00050     
00051     // From Class MCoeView
00052     virtual void ViewActivatedL(const TVwsViewId &aPrevViewId, TUid aCustomMessageId, const TDesC8 &aCustomMessage);
00053     virtual void ViewDeactivated();
00054     virtual TVwsViewId ViewId() const;
00055     TKeyResponse OfferKeyEventL(const TKeyEvent& aKeyEvent,TEventCode aType);
00056 
00057     // From CQikViewBase
00058     void HandleCommandL(CQikCommand& aCommand);
00059     virtual void ViewConstructL();
00060     static TInt DrawCallback( TAny* aInstance );
00061     virtual ~CPVRShellView();
00062     void ConstructL(const TRect& rect);
00063 
00064     // Shell classes
00065     PVRShell*       ipDemo;
00066     PVRShellInit*   init;
00067 
00068 private:
00069 
00070     CPeriodic*       iPeriodic;
00071 
00072 };
00073 
00074 /*!***************************************************************************
00075  @Class CShellAppUI
00076  @Brief Symbian User Application implementation
00077 *****************************************************************************/
00078 class CShellAppUI : public CQikAppUi
00079     {
00080 public:
00081     ~CShellAppUI() {};
00082 public:
00083     void ConstructL();
00084     
00085 private:
00086     void  HandleCommandL(TInt aCommand);
00087     
00088     };
00089 
00090 /*!***************************************************************************
00091  @Class CShellDocument
00092  @Brief Symbian Document interface
00093 *****************************************************************************/
00094 class CShellDocument : public CQikDocument
00095     {
00096 public:
00097     static CShellDocument* NewL(CEikApplication& aApp);
00098     CShellDocument(CEikApplication& aApp);
00099     ~CShellDocument();
00100 
00101 private:
00102     CQikAppUi* CreateAppUiL();      // Construct an app.user interface
00103     };
00104 
00105 /*!***************************************************************************
00106  @Class CShellApplication
00107  @Brief Symbian Application Interface
00108 *****************************************************************************/
00109 class CShellApplication : public CQikApplication {
00110 private:
00111 
00112     TUid          AppDllUid() const; // Returns Uid associated with app
00113     CApaDocument* CreateDocumentL(); // Construct new document
00114 };
00115 
00116 /*!***************************************************************************
00117  @Class PVRShellInitOS
00118  @Brief PVRShell Operating System specific code interface.
00119 *****************************************************************************/
00120 class PVRShellInitOS
00121 {
00122 public:
00123     CPVRShellView       *ShellView;
00124 };
00125 
00126 /*****************************************************************************
00127  End of file (PVRShellOS.h)
00128 *****************************************************************************/


Copyright © 1999-2006, PowerVR Technologies and partners. PowerVR Technologies is a division of Imagination Technologies Ltd.


Generated by DOXYGEN 1.3.6