acme
Foundational cross-platform layer of the ca2 framework
Loading...
Searching...
No Matches
osdata_array.h
1#pragma once
2
3
4#include "tiny_array.h"
5
6
8{
9public:
10
11
12 tiny_array < void* > m_osdata;
13
14
15 void set_os_data(::i32 i, void* p)
16 {
17
18 m_osdata.set_at_grow(i, p);
19
20 }
21
22
23 inline void* get_os_data(::i32 i = 0) const
24 {
25
26 if(i >= m_osdata.m_iCount)
27 {
28
29 if(i >= 8)
30 {
31
32 return nullptr;
33
34 }
35
36 ((osdata_array*)this)->m_osdata.element_at_grow(i) = 0;
37
38 }
39
40 return m_osdata.m_p[i];
41
42 }
43
44
45 inline void set_os_data(void* p)
46 {
47
48 set_os_data(0, p);
49
50 }
51
52 inline void clear_os_data() { m_osdata.zero(); }
53
54
55};
56
57
58
Definition osdata_array.h:8