Toggle navigation
ivorium
iv_components
Example project
GitHub
Main Page
Modules
Classes
Files
File List
File Members
ivorium_graphics
Animation
Connectors
Transform_ConnectorI.hpp
Go to the documentation of this file.
1
#pragma once
2
3
#include "../../Defs.hpp"
4
#include "../Animation/AnimNode.hpp"
5
#include <
ivorium_core/ivorium_core.hpp
>
6
7
namespace
iv
8
{
9
14
template
<
class
TParent,
class
TChild >
15
class
Transform_ConnectorI
:
protected
AnimConnector
16
{
17
public
:
18
using
AnimConnector::instance
;
19
ClientMarker
cm
;
20
21
//----------------------------- Transform_ConnectorI -------------------------------------------------------------------
22
Transform_ConnectorI
(
Instance
* inst );
23
~Transform_ConnectorI
();
24
25
//------------------------- AnimConnector ------------------------------------------------------
26
virtual
void
anim_eachChild
( std::function<
void
(
AnimNodeI
* ) >
const
& )
override
;
27
virtual
void
anim_childDisconnect
(
AnimNodeI
* node )
override
;
28
29
virtual
void
anim_eachParent
( std::function<
void
(
AnimNodeI
* ) >
const
& )
override
;
30
virtual
void
anim_parentDisconnect
(
AnimNodeI
* node )
override
;
31
32
//------------------------- structure ------------------------------------------------------
35
void
SetParent
(
AnimNode< TParent >
* node );
36
39
void
SetChild
(
AnimNode< TChild >
* node );
40
41
protected
:
42
bool
treeChanged_Get
();
43
void
treeChanged_Clear
();
44
45
protected
:
46
AnimNode< TParent >
*
parent
;
47
AnimNode< TChild >
*
child
;
48
49
private
:
50
bool
_treeChanged;
51
};
52
53
}
54
55
#include "
Transform_ConnectorI.inl
"