/********************************************************************
*
* File: fsCRenderer.h
*
* Purpose: cocos2d-x implementation for fsIRenderer
*
*********************************************************************/
#ifndef fsCRendererhdr
#define fsCRendererhdr
#include "../../../fsIRenderer.h"
#if defined fsNativeRenderer
class fsCTexture;
class fsCRenderCommandTriangle;
class fsCRenderCommandTriangleShaded;
class fsCRenderCommandLine;
class fsCRenderer : public fsIRenderer
{
friend class fsIRenderer;
friend class fsCVertexStreamSpriteRenderData;
friend class fsCVertexStreamLineRenderData;
public:
virtual ~fsCRenderer();<--- Destructor in derived class
protected:
void frameStartDo() override;
void begin2dDo() override;
void end2dDo() override;
void begin3dDo() override;
void end3dDo() override;
void frameEndDo() override;
void initialiseDo() override;
void uninitialiseDo() override;
void spriteBatchRender(fsS32 pFirstMaterialIndex, fsS32 pLastMaterialIndex) override;
void textBatchRender(fsS32 pFirstFontIndex, fsS32 pLastFontIndex) override;
void lineBatchRender(fsS32 pBatchIndex) override;
void textEntryBatchRender(fsITextEntryRenderData* pTextEntry) override;
#if defined fs3d
virtual void sprite3dBatchRender(fsC3dSceneSprite* const pScene) override;
#endif
fsCRenderer(fsS32 pMaxSprites, fsS32 pMaxMaterialChanges);
private:
};
#endif
#endif