Toggle navigation
ivorium
iv_components
Example project
GitHub
Main Page
Modules
Classes
Files
File List
File Members
ivorium_systems
DVarSystem
DVar_Field.hpp
Go to the documentation of this file.
1
#pragma once
2
3
#include "
DVarSystem.hpp
"
4
#include <
ivorium_core/ivorium_core.hpp
>
5
6
namespace
iv
7
{
8
11
template
<
class
Type >
12
class
DVar_Field
:
public
Field
< Type >,
private
DVarListenerI
13
{
14
public
:
15
ClientMarker
cm
;
16
DVar_Field
(
Instance
* inst,
DVarIdT< Type >
id
);
17
~DVar_Field
();
18
19
Instance
*
instance
()
const
;
20
21
private
:
22
// DVarListenerI
23
virtual
void
on_dvar_changed(
DVarId
id
, std::type_index type,
void
* value )
override
;
24
25
// Field< Type >
26
virtual
void
OnChanged(
bool
real )
override
;
27
28
private
:
29
Instance
* inst;
30
DVarIdT< Type >
id;
31
};
32
33
}
34
35
#include "
DVar_Field.inl
"