acme
Foundational cross-platform layer of the ca2 framework
Loading...
Searching...
No Matches
realizable.h
1// Created by camilo on 2024-10-08 08:10 <3ThomasBorregaardSorensen!!
2#pragma once
3
4
5//template < typename REALIZABLE >
6//class reified;
7//
8//template < typename REALIZABLE >
9//class reificator;
10//
11//template < typename REALIZABLE >
12//class realizable :
13// virtual public ::particle
14//{
15//public:
16//
17//
18// ::pointer < ::reified < REALIZABLE > > m_preified;
19//
20//
21// realizable();
22// ~realizable() override;
23//
24//
25// void on_initialize_particle() override;
26//
27//
28// ::pointer < ::reified < REALIZABLE > > defer_realize(::reificator < REALIZABLE > * p);
29//
30//
31// ::pointer < ::reified < REALIZABLE > > defer_realize();
32//
33//
34// bool should_create_sequence_on_synchronicity() override;
35//
36//
37// void on_timed_out() override;
38//
39//
40// void destroy() override;
41//
42//
43//};
44//
45//
46//template < typename REALIZABLE >
47//class reified :
48// virtual public ::subparticle
49//{
50//public:
51//
52//
53// ::pointer < REALIZABLE > m_prealizable;
54//
55//
56// reified();
57// ~reified() override;
58//
59//
60// virtual void realize(::realizable < REALIZABLE > * p);
61//
62//
63// virtual void on_realize(REALIZABLE * prealizable);
64//
65//
66// void destroy() override;
67//
68//
69// //void on_sequence() override;
70//
71//
72//};
73//
74//
75//template < typename REALIZABLE >
76//class reificator :
77// virtual public ::subparticle
78//{
79//public:
80//
81//
82// reificator();
83// ~reificator();
84//
85//
86// virtual ::pointer < ::reified < REALIZABLE > > realize(::realizable < REALIZABLE > * p);
87//
88//
89//};
90//
91//
92//
93//
94//
95//
96//template < typename REALIZABLE >
97//realizable < REALIZABLE > ::realizable()
98//{
99//
100//
101//}
102//
103//
104//template < typename REALIZABLE >
105//realizable < REALIZABLE >::~realizable()
106//{
107//
108//
109//}
110//
111//
112//
113//template < typename REALIZABLE >
114//void realizable < REALIZABLE >::on_initialize_particle()
115//{
116//
117// ::particle::on_initialize_particle();
118//
119// defer_realize();
120//
121//}
122//
123//
124//template < typename REALIZABLE >
125//::pointer < ::reified < REALIZABLE > > realizable < REALIZABLE >::defer_realize(::reificator < REALIZABLE > * p)
126//{
127//
128// if (m_preified)
129// {
130//
131// return m_preified;
132//
133// }
134//
135// m_preified = p->realize(this);
136//
137// return m_preified;
138//
139//}
140//
141//
142//template < typename REALIZABLE >
143//::pointer < ::reified < REALIZABLE > > realizable < REALIZABLE >::defer_realize()
144//{
145//
146// return this->defer_realize(dynamic_cast <::reificator < REALIZABLE > *>(this->get_context_particle()));
147//
148//}
149//
150//
151//template < typename REALIZABLE >
152//bool realizable < REALIZABLE >::should_create_sequence_on_synchronicity()
153//{
154//
155// if (::particle::should_create_sequence_on_synchronicity())
156// {
157//
158// return true;
159//
160// }
161//
162// if (m_preified)
163// {
164//
165// if (m_preified->should_create_sequence_on_synchronicity())
166// {
167//
168// return true;
169//
170// }
171//
172// }
173//
174// return false;
175//
176//}
177//
178//
179//template < typename REALIZABLE >
180//void realizable < REALIZABLE >::on_timed_out()
181//{
182//
183// if (m_preified)
184// {
185//
186// m_preified->on_timed_out();
187//
188// }
189//
190//}
191//
192//
193//template < typename REALIZABLE >
194//void realizable < REALIZABLE >::destroy()
195//{
196//
197// if (m_preified)
198// {
199//
200// if (m_preified->m_prealizable == this)
201// {
202//
203// m_preified->m_prealizable.release();
204//
205// }
206//
207// }
208//
209// m_preified.release();
210//
211//}
212//
213//
214//template < typename REALIZABLE >
215//reified < REALIZABLE >::reified()
216//{
217//
218//
219//}
220//
221//
222//template < typename REALIZABLE >
223//reified < REALIZABLE >::~reified()
224//{
225//
226//
227//}
228//
229//
230//template < typename REALIZABLE >
231//void reified<REALIZABLE>::realize(::realizable < REALIZABLE > * p)
232//{
233//
234// m_prealizable = p;
235//
236// throw todo;
237//
238// //if(p->m_psequence)
239// //{
240// //
241// // m_psequence = p->m_psequence;
242// //
243// //}
244//
245// on_realize(m_prealizable);
246//
247//}
248//
249//
250//template < typename REALIZABLE >
251//void reified < REALIZABLE >::on_realize(REALIZABLE * prealizable)
252//{
253//
254//
255//}
256//
257//template < typename REALIZABLE >
258//void reified < REALIZABLE >::destroy()
259//{
260//
261// if (m_prealizable)
262// {
263//
264// if (m_prealizable->m_preified)
265// {
266//
267// m_prealizable->m_preified.release();
268//
269// }
270//
271// }
272//
273// m_prealizable.release();
274//
275//}
276//
277//
290//
291//
292//template < typename REALIZABLE >
293//reificator < REALIZABLE >::reificator()
294//{
295//
296//
297//}
298//
299//
300//template < typename REALIZABLE >
301//reificator < REALIZABLE >::~reificator()
302//{
303//
304//
305//}
306//
307//
308//template < typename REALIZABLE >
309//::pointer < ::reified < REALIZABLE > >reificator < REALIZABLE>::realize(::realizable < REALIZABLE > * p)
310//{
311//
312// return nullptr;
313//
314//}
315//
316//
317//
318//