Toggle navigation
ivorium
iv_components
Example project
GitHub
Main Page
Modules
Classes
Files
File List
File Members
ivorium_systems
DVarSystem
DVarId.hpp
Go to the documentation of this file.
1
#pragma once
2
3
#include <
ivorium_core/ivorium_core.hpp
>
4
5
namespace
iv
6
{
7
8
class
DVarId
:
public
RuntimeId
< DVarId >
9
{
10
public
:
11
static
constexpr
char
TypeName
[] =
"DVarId"
;
12
static
RuntimeIdDictionary
Dictionary
;
13
using
RuntimeId< DVarId >::RuntimeId
;
14
};
15
16
template
<
class
Type >
17
class
DVarIdT
:
public
DVarId
18
{
19
public
:
20
using
DVarId::DVarId;
21
explicit
DVarIdT
(
DVarId
const
&
id
, Type
initial
) :
DVarId
( id ), _initial(
initial
){}
22
23
Type
initial
(){
return
this->_initial; }
24
25
private
:
26
Type _initial;
27
};
28
29
}
30
31
namespace
std
32
{
33
template
<>
34
struct
hash<
iv
::DVarId > :
public
iv::hash
< iv::DVarId >{};
35
}