Fission FSN
Loading...
Searching...
No Matches
fsCNativeSprite.h
Go to the documentation of this file.
1/********************************************************************
2*
3* File: fsCNativeSprite.h
4*
5* Purpose: Sprite that is added to and retained by a scene. All
6* positioning / parenting is handled in the scene
7*
8*********************************************************************/
9
10#ifndef fsCNativeSpritehdr
11#define fsCNativeSpritehdr
12
13#include <raylib.h>
14#include <fsCore/fsBaseTypes.h>
15
16#include "fsINative.h"
18
19
20class fsSColour;
21class fsAffineMtx2d;
22class fsCBrush;
23struct fsPoint;
24
25
26class fsCNativeSprite : public fsINative
27{
28 friend class fsCNativeSpriteRenderData;
29
30public:
31
32 fsBool hitTest(const fsPoint& pLocalPos, fsBool pRequireHitMap) const;
33
34 fsS32 widthGet() const;
36
37 std::shared_ptr<fsCBrush> brushGet() const;
38
40
41protected:
42
43 void polygonInfoSetDo(fsIRenderData::fsSPolyInfo const& pPolyInfo) override;
44
45 void textureWrapSetDo() override;
46 void renderDo() override;
47 void colourSetDo(const fsSColour4B& pColour) override;
48
49 void uvSetDo(const fsRect& pOffest) override;
50 void vertsSetDo(std::vector<fsVec2d> const& pVerts) override;
51 void widthSetDo(fsS32 pWidth) override;
52 void heightSetDo(fsS32 pHeight) override;
53 void brushSetDo(std::shared_ptr<fsCBrush> pBrush) override;
54 void alphaBlendModeSetDo(fsS32 pAlphaBlendMode) override;
55
57
58private:
59
60 fsS32 mWidth;
61 fsS32 mHeight;
62 ::Color mTint;
63
64 std::shared_ptr<fsCBrush> mBrush;
65 ::Texture* mTexture;
66 fsBool mScaled;
67};
68
69
70#endif
Definition fsAffineMtx2d.h:27
Definition fsCBrush.h:26
Definition fsCNativeSprite.h:31
fsS32 widthGet() const
friend class fsCNativeSpriteRenderData
Definition fsCNativeSprite.h:32
void vertsSetDo(std::vector< fsVec2d > const &pVerts) override
std::shared_ptr< fsCBrush > brushGet() const
void alphaBlendModeSetDo(fsS32 pAlphaBlendMode) override
void heightSetDo(fsS32 pHeight) override
void textureWrapSetDo() override
fsS32 heightGet() const
void colourSetDo(const fsSColour4B &pColour) override
void widthSetDo(fsS32 pWidth) override
void uvSetDo(const fsRect &pOffest) override
void polygonInfoSetDo(fsIRenderData::fsSPolyInfo const &pPolyInfo) override
void renderDo() override
void brushSetDo(std::shared_ptr< fsCBrush > pBrush) override
fsBool hitTest(const fsPoint &pLocalPos, fsBool pRequireHitMap) const
virtual ~fsCNativeSprite()
Definition fsINative.h:31
Definition fsRect.h:16
Definition fsSColour.h:20
bool fsBool
Definition fsBaseTypes.h:26
int fsS32
Definition fsBaseTypes.h:20
Definition fsIRenderData.h:44
Definition fsPoint.h:17
Definition fsSColour.h:54