Fission FSN
Loading...
Searching...
No Matches
fsIParticleCloud.h
Go to the documentation of this file.
1/********************************************************************
2*
3* File: fsIParticleCloud.h
4*
5* Purpose: Interface to particl clouds
6*
7*********************************************************************/
8
9#ifndef fsIParticleCloudhdr
10#define fsIParticleCloudhdr
11
12#include <memory>
13#include <vector>
14
15#include <fsCore/fsPoint.h>
16#include <fsCore/fsVec2d.h>
17
18class fsITexture;
19class fsCResourceName;
20
21
23{
24public:
25
26 static std::unique_ptr<fsIParticleCloud> create(const fsCResourceName& pBrushFileName);
27
28 fsS32 cloudSizeGet() const;
31 virtual void spawnCloudBrushLoad(fsITexture* pTexture) = 0;
32
33 virtual ~fsIParticleCloud() = default;
34
35protected:
36
37 fsIParticleCloud() = default;
38
39 std::vector<fsPoint> mSpawnCloud;
40
41private:
42
43 static fsBool multiAlpha(fsITexture* pTexture);
44
45};
46
47#endif
Definition fsCResourceName.h:32
fsIParticleCloud()=default
virtual fsVec2d indexedPosFromSpawnCloudGet(fsS32 pIndex)=0
virtual fsVec2d posFromSpawnCloudGet()=0
virtual void spawnCloudBrushLoad(fsITexture *pTexture)=0
std::vector< fsPoint > mSpawnCloud
Definition fsIParticleCloud.h:39
fsS32 cloudSizeGet() const
Definition fsIParticleCloud.cpp:8
static std::unique_ptr< fsIParticleCloud > create(const fsCResourceName &pBrushFileName)
Definition fsIParticleCloud.cpp:33
virtual ~fsIParticleCloud()=default
Definition fsITexture.h:26
bool fsBool
Definition fsBaseTypes.h:26
int fsS32
Definition fsBaseTypes.h:20
Definition fsVec2d.h:16