The DejaVU Framework -- hush 3.1

include: graphic-directx-game-18-Props-d3dApp.h /home/ae/www/media


- [up] [top] - index make include source logic grammar scripts html configure mx slides talks scenes reports projects
<body bgcolor="#FFFFFF" text="#000000">

//=============================================================================
// d3dApp.h by Frank Luna (C) 2005 All Rights Reserved.
//
// Contains the base Direct3D application class which provides the
// framework interface for the sample applications.  Clients are to derive 
// from D3DApp, override the framework methods, and instantiate only a single
// instance of the derived D3DApp class.  At the same time, the client should
// set the global application  pointer (gd3dApp) to point to the one and only
// instance, e.g., gd3dApp = new HelloD3DApp(hInstance);
// 
//=============================================================================

ifndef D3DAPP_H
define D3DAPP_H

include <d3dUtil.h>
include 

<h4 align=right text=red> D3DApp</h4><hr>
  class D3DApp
{
public:
        D3DApp(HINSTANCE hInstance, std::string winCaption, D3DDEVTYPE devType, DWORD requestedVP);
        virtual ~D3DApp();

        HINSTANCE getAppInst();
        HWND      getMainWnd();

        // Framework methods.  Derived client class overrides these methods to 
        // implement specific application requirements.
        virtual bool checkDeviceCaps()     { return true; }
        virtual void onLostDevice()        {}
        virtual void onResetDevice()       {}
        virtual void updateScene(float dt) {}
        virtual void drawScene()           {}

        // Override these methods only if you do not like the default window creation,
        // direct3D device creation, window procedure, or message loop.  In general,
        // for the sample programs of this book, we will not need to modify these.
        virtual void initMainWindow();
        virtual void initDirect3D();
        virtual int run();
        virtual LRESULT msgProc(UINT msg, WPARAM wParam, LPARAM lParam);

        void enableFullScreenMode(bool enable);
        bool isDeviceLost();

protected:
        // Derived client class can modify these data members in the constructor to 
        // customize the application.  
        std::string mMainWndCaption;
        D3DDEVTYPE  mDevType;
        DWORD       mRequestedVP;
        
        // Application, Windows, and Direct3D data members.
        HINSTANCE             mhAppInst;
        HWND                  mhMainWnd;
        IDirect3D9*           md3dObject;
        bool                  mAppPaused;
        D3DPRESENT_PARAMETERS md3dPP;
};
<hr>


// Globals for convenient access.
extern D3DApp* gd3dApp;
extern IDirect3DDevice9* gd3dDevice;

endif // D3DAPP_H
<hr> <style type="text/css"> div.mainnavigate { margin: 20px 2px; /* background-color: #ffffff; */ border: 1px solid black; } </style> <div class=xnavigate> [] <black>readme</black> course(s) preface <black>I</black> 1 2 <black>II</black> 3 4 <black>III</black> 5 6 7 <black>IV</black> 8 9 10 <black>V</black> 11 12 afterthought(s) <black>appendix</black> reference(s) example(s) <black>resource(s)</black> _ </div> <hr>

(C) Æliens 20/2/2008

You may not copy or print any of this material without explicit permission of the author or the publisher. In case of other copyright issues, contact the author. </div> <script src="http://www.google-analytics.com/urchin.js" type="text/javascript"> </script> <script type="text/javascript"> _uacct = "UA-2780434-1"; urchinTracker(); </script> </body> </html> <hr> <hr> <table cellpadding=10> <tr> <td> <address> Hush Online Technology </address> hush@cs.vu.nl <br>04/07/09 </td><td> </td> <td></td><td></td><td></td><td></td><td></td><td></td><td></td> <td> </td> </tr> </table>