acme
Foundational cross-platform layer of the ca2 framework
Toggle main menu visibility
Loading...
Searching...
No Matches
property_container.h
1
//
2
// Created by camilo on 2024-06-05 18:57 <3ThomasBorregaardSorensen!!
3
//
4
#pragma once
5
6
7
#include "acme/prototype/prototype/action_context.h"
8
#include "acme/prototype/collection/atom_array.h"
9
#include "property_listener.h"
10
11
namespace
data
12
{
13
14
15
class
CLASS_DECL_ACME property_container :
16
virtual
public
::particle
17
{
18
public
:
19
20
21
::property_set
m_propertyset;
22
::pointer_array < ::data::property_listener > m_propertylistenera;
23
::comparable_array < ::data::property_will_change > m_propertywillchangea;
24
::comparable_array < ::data::property_changed > m_propertychangeda;
25
26
27
property_container();
28
~property_container()
override
;
29
30
31
void
destroy()
override
;
32
33
34
virtual
bool
set_property(const ::atom_array_base & atoma, const ::payload &
payload
, const ::action_context & context = {});
35
virtual ::payload get_property(const ::atom_array_base & atoma)
const
;
36
37
virtual
void
on_set_property(
::data::property_change
& change);
38
virtual ::payload on_get_property(const ::atom_array_base & atoma)
const
;
39
40
virtual
bool
on_property_will_change(
::data::property_change
& change);
41
virtual
void
on_property_changed(
::data::property_change
& change);
42
43
44
::comparable_array < ::data::property_will_change > & property_will_change();
45
::comparable_array < ::data::property_changed > & property_changed();
46
47
48
};
49
50
51
}
// namespace data
52
payload
Definition
payload.h:54
property_set
Definition
property_set.h:512
data::property_change
Definition
_.h:34
prototype
data
property_container.h
Generated by
1.17.0