Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: orxonox.OLD/trunk/src/lib/graphics/render2D/render_2d.h @ 5399

Last change on this file since 5399 was 5398, checked in by bensch, 20 years ago

orxonox/trunk: fixed a bug in the allocation of Element2D

File size: 1.2 KB
RevLine 
[4838]1/*!
[4839]2 * @file render_2d.h
3 * @brief Definition of the 2D-rendering engine singleton Class
[4848]4 * @todo implement Layer-rendering
[3655]5*/
6
[4839]7#ifndef _RENDER_2D_H
8#define _RENDER_2D_H
[3655]9
10#include "base_object.h"
[4848]11#include "element_2d.h"
[3955]12// FORWARD DEFINITION
[4840]13template <class T> class tList;
[3655]14
15//! A default singleton class.
[4839]16class Render2D : public BaseObject {
[5397]17  friend class Element2D;
[3655]18
[5397]19  public:
20    virtual ~Render2D();
21    /** @returns a Pointer to the only object of this Class */
22    inline static Render2D* getInstance() { if (!singletonRef) singletonRef = new Render2D();  return singletonRef; };
[3655]23
[5397]24    void tick(float dt);
[5398]25    void draw(E2D_LAYER layer) const;
[4840]26
27
[5397]28  private:
29    void registerElement2D(Element2D* element2D);
30    void unregisterElement2D(Element2D* element2D);
31    void moveToLayer(Element2D* element2D, E2D_LAYER to);
[4840]32
[5397]33
34    Render2D();
35    static Render2D*              singletonRef;                    //!< Reference to this class.
36
[4862]37//  tList<Element2D>*             element2DList;                   //!< List of all valid 2D-elements.
[5397]38    tList<Element2D>*             element2DList[E2D_LAYER_COUNT];  //!< List of all valid 2D-elements in the different Layers.
[3655]39};
40
[4839]41#endif /* _RENDER_2D_H */
Note: See TracBrowser for help on using the repository browser.