1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
/********************************************************************
*
*	File:		fsCVertexStreamSpriteRenderData.h
*
*	Purpose:	cocos2d-x implementation of sprite render data.
*
*********************************************************************/

#ifndef fsCVertexStreamSpriteRenderDatahdr
#define fsCVertexStreamSpriteRenderDatahdr

#include "../../../fsISpriteRenderData.h"


class fsCVertexStreamSpriteRenderData : public fsISpriteRenderData
{
	friend class fsCRenderDataFactoryVertexStream;

public:

	void matrixApplyDo(const fsAffineMtx2d& pRenderMatrix) override;

	void batchDataPopulate(void* pRenderBuffer) const;
	void batchDataPopulate(void* pRenderBuffer, fsIRenderer::eSPRITE_STRIP_PLACE pPosition) const override;

	void vertsCopyToImpl(fsS32 pIndex, void* pImpl) const override;
	void uvsCopyToImpl(fsS32 pIndex, void* pImpl) const override;
	void colourCopyToImpl(void* pImpl) const override;

	virtual ~fsCVertexStreamSpriteRenderData() = default;<--- Destructor in derived class

protected:

	static fsIRenderData* create();
	fsCVertexStreamSpriteRenderData() = default;

private:
};

#endif