Fission FSN
Loading...
Searching...
No Matches
fsIRenderableTexture.h
Go to the documentation of this file.
1/********************************************************************
2*
3* File: fsIRenderableTexture.h
4*
5* Purpose: Interface for texture that can be rendered to
6*
7*********************************************************************/
8
9#ifndef fsIRenderableTexturehdr
10#define fsIRenderableTexturehdr
11
12#include <vector>
13
14#include <fsCore/fsSColour.h>
16
17#if defined fsFRAMEWORK_CX
19#elif defined fsFRAMEWORK_AX
21#elif defined fsFRAMEWORK_MG
23#elif defined fsFRAMEWORK_RL
25#elif defined fsFRAMEWORK_BF
27#else
28 #error Unhandled platform.
29#endif
30
31
32struct fsPoint;
33class fsRect;
34class fsCBrush;
35class fsAffineMtx2d;
36
38{
39public:
40
41 void resize(fsPoint const& pSize);
42 void screenShotStart();
43 void screenShotEnd(const fsStr& pSceneName);
44 void shadersCreate(const fsStr& pVertex, const fsStr& pFragment);
45 void screenEffectParamsSet(fsPoint const& pFocusPos, fsF32 pRadius);
47 void targetSet();
48 void partialEnd();
49 void partialStart();
50 void targetClear();
51
52 void brushSet(fsCResourceName const& pBrushFilename);
53
54 void save(fsCResourceName const& pFilename);
55 void captureRegionSave(const fsRect& pCaptureRect, fsPoint const& pOutputDimensions, fsCResourceName const& pFilename);
56 void recolour(fsSColour4B const& pOld, fsSColour4B const& pNew);
57 void paintWithSpriteBrush(fsPoint const& pPos);
58 void paint(std::vector<fsPoint> const& pPos, fsSColour4B const& pColour);
59
60 virtual ~fsIRenderableTexture();
61
62protected:
63
64 virtual void resizeDo(fsPoint const& pSize) {}
65
66 virtual void screenShotStartDo() {}
67 virtual void screenShotEndDo(const fsStr& pSceneName) {}
68 virtual void shadersCreateDo(const fsStr& pVertex, const fsStr& pFragment) {}
69 virtual void screenEffectParamsSetDo(fsPoint const& pFocusPos, fsF32 pRadius) {}
70 virtual void screenEffectParamsClearDo() {}
71 virtual void targetSetDo() {}
72 virtual void partialEndDo() {}
73 virtual void partialStartDo() {}
74 virtual void targetClearDo() {}
75
76 virtual void brushSetDo(fsCResourceName const& pBrushFilename) {}
77
78 virtual void saveDo(fsCResourceName const& pFilename) {}
79 virtual void captureRegionSaveDo(const fsRect& pCaptureRect, fsPoint const& pOutputDimensions, fsCResourceName const& pFilename) {}
80
81 virtual void recolourDo(fsSColour4B const& pOld, fsSColour4B const& pNew) {}
82 virtual void paintWithSpriteBrushDo(fsPoint const& pPos) {}
83 virtual void paintDo(std::vector<fsPoint> const& pPos, fsSColour4B const& pColour) {}
84
86
87private:
88};
89
90#endif
Definition fsAffineMtx2d.h:27
Definition fsCBrush.h:26
Definition fsCResourceName.h:32
fsINative()=default
Definition fsINative.cpp:72
virtual void targetClearDo()
Definition fsIRenderableTexture.h:74
virtual void brushSetDo(fsCResourceName const &pBrushFilename)
Definition fsIRenderableTexture.h:76
virtual void screenEffectParamsSetDo(fsPoint const &pFocusPos, fsF32 pRadius)
Definition fsIRenderableTexture.h:69
virtual void paintDo(std::vector< fsPoint > const &pPos, fsSColour4B const &pColour)
Definition fsIRenderableTexture.h:83
virtual void paintWithSpriteBrushDo(fsPoint const &pPos)
Definition fsIRenderableTexture.h:82
virtual void screenShotStartDo()
Definition fsIRenderableTexture.h:66
void partialStart()
Definition fsIRenderableTexture.cpp:62
void targetSet()
Definition fsIRenderableTexture.cpp:52
virtual void shadersCreateDo(const fsStr &pVertex, const fsStr &pFragment)
Definition fsIRenderableTexture.h:68
virtual void screenShotEndDo(const fsStr &pSceneName)
Definition fsIRenderableTexture.h:67
virtual void resizeDo(fsPoint const &pSize)
Definition fsIRenderableTexture.h:64
void screenShotEnd(const fsStr &pSceneName)
Definition fsIRenderableTexture.cpp:27
void resize(fsPoint const &pSize)
Definition fsIRenderableTexture.cpp:32
void screenEffectParamsSet(fsPoint const &pFocusPos, fsF32 pRadius)
Definition fsIRenderableTexture.cpp:42
void save(fsCResourceName const &pFilename)
Definition fsIRenderableTexture.cpp:77
void recolour(fsSColour4B const &pOld, fsSColour4B const &pNew)
Definition fsIRenderableTexture.cpp:87
virtual void saveDo(fsCResourceName const &pFilename)
Definition fsIRenderableTexture.h:78
void brushSet(fsCResourceName const &pBrushFilename)
Definition fsIRenderableTexture.cpp:72
void paint(std::vector< fsPoint > const &pPos, fsSColour4B const &pColour)
Definition fsIRenderableTexture.cpp:97
virtual void targetSetDo()
Definition fsIRenderableTexture.h:71
virtual void recolourDo(fsSColour4B const &pOld, fsSColour4B const &pNew)
Definition fsIRenderableTexture.h:81
void targetClear()
Definition fsIRenderableTexture.cpp:67
void partialEnd()
Definition fsIRenderableTexture.cpp:57
void shadersCreate(const fsStr &pVertex, const fsStr &pFragment)
Definition fsIRenderableTexture.cpp:37
virtual void partialStartDo()
Definition fsIRenderableTexture.h:73
virtual ~fsIRenderableTexture()
Definition fsIRenderableTexture.cpp:106
fsIRenderableTexture()
Definition fsIRenderableTexture.cpp:102
virtual void screenEffectParamsClearDo()
Definition fsIRenderableTexture.h:70
void captureRegionSave(const fsRect &pCaptureRect, fsPoint const &pOutputDimensions, fsCResourceName const &pFilename)
Definition fsIRenderableTexture.cpp:82
void screenShotStart()
Definition fsIRenderableTexture.cpp:22
void paintWithSpriteBrush(fsPoint const &pPos)
Definition fsIRenderableTexture.cpp:92
virtual void partialEndDo()
Definition fsIRenderableTexture.h:72
void screenEffectParamsClear()
Definition fsIRenderableTexture.cpp:47
virtual void captureRegionSaveDo(const fsRect &pCaptureRect, fsPoint const &pOutputDimensions, fsCResourceName const &pFilename)
Definition fsIRenderableTexture.h:79
Definition fsRect.h:16
Definition fsStr.h:23
float fsF32
Definition fsBaseTypes.h:28
Definition fsPoint.h:17
Definition fsSColour.h:54