sead
Loading...
Searching...
No Matches
eft_Handle.h
Go to the documentation of this file.
1#ifndef EFT_HANDLE_H_
2#define EFT_HANDLE_H_
3
4#include <nw/eft/eft_EmitterSet.h>
5
6namespace nw { namespace eft {
7
8class EmitterSet;
9
10class Handle
11{
12public:
13 Handle()
15 {
16 }
17
18 void Invalidate()
19 {
20 mEmitterSet = NULL;
21 }
22
24 {
25 return mEmitterSet;
26 }
27
28 const EmitterSet* GetEmitterSet() const
29 {
30 return mEmitterSet;
31 }
32
33 bool IsValid() const
34 {
35 return mEmitterSet != NULL && mCreateID == mEmitterSet->GetCreateID();
36 }
37
38private:
41
42 friend class System;
43};
44static_assert(sizeof(Handle) == 8, "nw::eft::Handle size mismatch");
45
46} } // namespace nw::eft
47
48#endif // EFT_HANDLE_H_
EmitterSet * GetEmitterSet()
const EmitterSet * GetEmitterSet() const
bool IsValid() const
EmitterSet * mEmitterSet
Definition eft_Handle.h:39
u32 mCreateID
Definition eft_Handle.h:40