PeriDyno
1.2.1
Loading...
Searching...
No Matches
D:
Peridyno
peridyno
src
Framework
DeclareField.h
Go to the documentation of this file.
1
16
#pragma once
17
18
namespace
dyno
19
{
20
21
#define DEF_VAR(T, name, value, desc) \
22
private: \
23
FVar<T> var_##name = FVar<T>(T(value), std::string(#name), desc, FieldTypeEnum::Param, this); \
24
public: \
25
inline FVar<T>* var##name() {return &var_##name;}
26
27
#define DEF_VAR_IN(T, name, desc) \
28
private: \
29
FVar<T> in_##name = FVar<T>(std::string(#name), desc, FieldTypeEnum::In, this); \
30
public: \
31
inline FVar<T>* in##name() {return &in_##name;}
32
33
#define DEF_VAR_OUT(T, name, desc) \
34
private: \
35
FVar<T> out_##name = FVar<T>(std::string(#name), desc, FieldTypeEnum::Out, this); \
36
public: \
37
inline FVar<T>* out##name() {return &out_##name;}
38
42
#define DEF_INSTANCE_IN(T, name, desc) \
43
private: \
44
FInstance<T> in_##name = FInstance<T>(std::string(#name), desc, FieldTypeEnum::In, this); \
45
public: \
46
inline FInstance<T>* in##name() {return &in_##name;}
47
48
#define DEF_INSTANCE_OUT(T, name, desc) \
49
private: \
50
FInstance<T> out_##name = FInstance<T>(std::string(#name), desc, FieldTypeEnum::Out, this); \
51
public: \
52
inline FInstance<T>* out##name() {return &out_##name;}
53
54
// #define DEF_INSTANCE_IO(T, name, desc) \
55
// private: \
56
// FInstance<T> io_##name = FInstance<T>(std::string(#name), desc, FieldTypeEnum::IO, this); \
57
// public: \
58
// inline FInstance<T>* io##name() {return &io_##name;}
59
63
#define DEF_ARRAY_IN(T, name, device, desc) \
64
private: \
65
FArray<T, device> in_##name = FArray<T, device>(std::string(#name), desc, FieldTypeEnum::In, this); \
66
public: \
67
inline FArray<T, device>* in##name() {return &in_##name;}
68
69
#define DEF_ARRAY_OUT(T, name, device, desc) \
70
private: \
71
FArray<T, device> out_##name = FArray<T, device>(std::string(#name), desc, FieldTypeEnum::Out, this); \
72
public: \
73
inline FArray<T, device>* out##name() {return &out_##name;}
74
75
#define DEF_ARRAY_IO(T, name, device, desc) \
76
private: \
77
FArray<T, device> io_##name = FArray<T, device>(std::string(#name), desc, FieldTypeEnum::IO, this); \
78
public: \
79
inline FArray<T, device>* in##name() {return &io_##name;} \
80
inline FArray<T, device>* out##name() {return &io_##name;}
81
82
86
#define DEF_ARRAY2D_IN(T, name, device, desc) \
87
private: \
88
FArray2D<T, device> in_##name = FArray2D<T, device>(std::string(#name), desc, FieldTypeEnum::In, this); \
89
public: \
90
inline FArray2D<T, device>* in##name() {return &in_##name;}
91
92
#define DEF_ARRAY2D_OUT(T, name, device, desc) \
93
private: \
94
FArray2D<T, device> out_##name = FArray2D<T, device>(std::string(#name), desc, FieldTypeEnum::Out, this); \
95
public: \
96
inline FArray2D<T, device>* out##name() {return &out_##name;}
97
98
#define DEF_ARRAY2D_IO(T, name, device, desc) \
99
private: \
100
FArray2D<T, device> io_##name = FArray2D<T, device>(std::string(#name), desc, FieldTypeEnum::IO, this); \
101
public: \
102
inline FArray2D<T, device>* in##name() {return &io_##name;} \
103
inline FArray2D<T, device>* out##name() {return &io_##name;}
104
105
109
#define DEF_ARRAY3D_IN(T, name, device, desc) \
110
private: \
111
FArray3D<T, device> in_##name = FArray3D<T, device>(std::string(#name), desc, FieldTypeEnum::In, this); \
112
public: \
113
inline FArray3D<T, device>* in##name() {return &in_##name;}
114
115
#define DEF_ARRAY3D_OUT(T, name, device, desc) \
116
private: \
117
FArray3D<T, device> out_##name = FArray3D<T, device>(std::string(#name), desc, FieldTypeEnum::Out, this); \
118
public: \
119
inline FArray3D<T, device>* out##name() {return &out_##name;}
120
121
#define DEF_ARRAY3D_IO(T, name, device, desc) \
122
private: \
123
FArray3D<T, device> io_##name = FArray3D<T, device>(std::string(#name), desc, FieldTypeEnum::IO, this); \
124
public: \
125
inline FArray3D<T, device>* in##name() {return &io_##name;} \
126
inline FArray3D<T, device>* out##name() {return &io_##name;}
127
128
132
#define DEF_ARRAYLIST_IN(T, name, device, desc) \
133
private: \
134
FArrayList<T, device> in_##name = FArrayList<T, device>(std::string(#name), desc, FieldTypeEnum::In, this); \
135
public: \
136
inline FArrayList<T, device>* in##name() {return &in_##name;}
137
138
#define DEF_ARRAYLIST_OUT(T, name, device, desc) \
139
private: \
140
FArrayList<T, device> out_##name = FArrayList<T, device>(std::string(#name), desc, FieldTypeEnum::Out, this); \
141
public: \
142
inline FArrayList<T, device>* out##name() {return &out_##name;}
143
144
#define DEF_ARRAYLIST_IO(T, name, device, desc) \
145
private: \
146
FArrayList<T, device> io_##name = FArrayList<T, device>(std::string(#name), desc, FieldTypeEnum::IO, this); \
147
public: \
148
inline FArrayList<T, device>* in##name() {return &io_##name;} \
149
inline FArrayList<T, device>* out##name() {return &io_##name;}
150
}
dyno
This is an implementation of AdditiveCCD based on peridyno.
Definition
Array.h:25
Generated by
1.13.2