~ubuntu-branches/debian/sid/ember/sid

« back to all changes in this revision

Viewing changes to src/components/ogre/SceneManagers/EmberPagingSceneManager/include/OgrePagingLandScapeListener.h

  • Committer: Bazaar Package Importer
  • Author(s): Michael Koch
  • Date: 2009-07-23 07:46:40 UTC
  • Revision ID: james.westby@ubuntu.com-20090723074640-wh0ukzis0kda36qv
Tags: upstream-0.5.6
Import upstream version 0.5.6

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*-----------------------------------------------------------------------------
 
2
This source file is part of OGRE
 
3
(Object-oriented Graphics Rendering Engine)
 
4
For the latest info, see http://www.ogre3d.org/
 
5
 
 
6
Copyright � 2000-2004 The OGRE Team
 
7
Also see acknowledgements in Readme.html
 
8
 
 
9
This program is free software; you can redistribute it and/or modify it under
 
10
the terms of the GNU Lesser General Public License as published by the Free Software
 
11
Foundation; either version 2 of the License, or (at your option) any later
 
12
version.
 
13
 
 
14
This program is distributed in the hope that it will be useful, but WITHOUT
 
15
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
 
16
FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
 
17
 
 
18
You should have received a copy of the GNU Lesser General Public License along with
 
19
this program; if not, write to the Free Software Foundation, Inc., 59 Temple
 
20
Place - Suite 330, Boston, MA 02111-1307, USA, or go to
 
21
http://www.gnu.org/copyleft/lesser.txt.
 
22
-----------------------------------------------------------------------------*/
 
23
#ifndef __PagingLandScapePageSourceListener_H__
 
24
#define __PagingLandScapePageSourceListener_H__
 
25
 
 
26
#include "OgrePagingLandScapePrerequisites.h"
 
27
 
 
28
namespace Ogre 
 
29
{
 
30
    /** Abstract class which classes can override to receive notifications
 
31
        when a page is ready to be added to the terrain manager.
 
32
    */
 
33
    class _OgrePagingLandScapeExport PagingLandScapeListener
 
34
    {
 
35
 
 
36
        public:         
 
37
                        PagingLandScapeListener(){};
 
38
                        virtual ~PagingLandScapeListener(){};
 
39
            /** Listener method called when a new page is about to be constructed. 
 
40
            @param pagex, pagez The index of the page being constructed
 
41
            @param heightData Array of normalised height data (0..1). The size of
 
42
                this buffer will conform to the scene manager page size. The listener
 
43
                may modify the data if it wishes.
 
44
            */            
 
45
            virtual void pagePreloaded(const size_t pagex, const size_t pagez, const Real* heightData, const AxisAlignedBox &Bbox){};
 
46
            virtual void pageLoaded(const size_t pagex, const size_t pagez, const Real* heightData, const AxisAlignedBox &Bbox){};
 
47
            virtual void pageUnloaded(const size_t pagex, const size_t pagez, const Real* heightData, const AxisAlignedBox &Bbox){};
 
48
            virtual void pagePostunloaded(const size_t pagex, const size_t pagez){};
 
49
            virtual void pageShow(const size_t pagex, const size_t pagez, const Real* heightData, const AxisAlignedBox &Bbox){};
 
50
            virtual void pageHide(const size_t pagex, const size_t pagez, const Real* heightData, const AxisAlignedBox &Bbox) {};
 
51
            virtual void tileLoaded(const size_t pagex, const size_t pagez, const size_t tilex, const size_t tilez, const AxisAlignedBox &Bbox){};
 
52
            virtual void tileUnloaded(const size_t pagex, const size_t pagez, const size_t tilex, const size_t tilez, const AxisAlignedBox &Bbox){};
 
53
            virtual void tileDeformed(const size_t pagex, const size_t pagez, const size_t tilex, const size_t tilez, const AxisAlignedBox &Bbox){};
 
54
            virtual void tileShow(const size_t pagex, const size_t pagez, const size_t tilex, const size_t tilez, const AxisAlignedBox &Bbox){};
 
55
            virtual void tileHide(const size_t pagex, const size_t pagez, const size_t tilex, const size_t tilez, const AxisAlignedBox &Bbox){};
 
56
            virtual void terrainReady(void) {};
 
57
 
 
58
    };
 
59
}
 
60
#endif //__PagingLandScapePageSourceListener_H__
 
61