FireSync API
 All Classes Files Functions Variables Typedefs Friends Macros Modules Pages
kHxEncoder.h
Go to the documentation of this file.
1 
8 #ifndef K_FIRESYNC_HX_ENCODER_H
9 #define K_FIRESYNC_HX_ENCODER_H
10 
11 #include <kFireSync/kNodeDef.h>
12 #include <kFireSync/Hardware/kHxEncoder.x.h>
13 
21 //typedef kObject kHxEncoder; --forward-declared in kFsDef.x.h
22 
23 kInlineFx(kHxNode) kHxEncoder_Node(kHxEncoder encoder)
24 {
25  kObj(kHxEncoder, encoder);
26 
27  return obj->node;
28 }
29 
30 kInlineFx(kStatus) kHxEncoder_Enable(kHxEncoder encoder, kBool enabled)
31 {
32  kObj(kHxEncoder, encoder);
33 
34  obj->enabled = enabled;
35 
36  return kOK;
37 }
38 
39 kInlineFx(kBool) kHxEncoder_IsEnabled(kHxEncoder encoder)
40 {
41  kObj(kHxEncoder, encoder);
42 
43  return obj->enabled;
44 }
45 
46 kInlineFx(kStatus) kHxEncoder_SetDirection(kHxEncoder encoder, kEncoderDirection direction)
47 {
48  kObj(kHxEncoder, encoder);
49 
50  obj->direction = direction;
51 
52  return kOK;
53 }
54 
55 kInlineFx(kEncoderDirection) kHxEncoder_Direction(kHxEncoder encoder)
56 {
57  kObj(kHxEncoder, encoder);
58 
59  return obj->direction;
60 }
61 
62 kInlineFx(kStatus) kHxEncoder_EnableIndexReset(kHxEncoder encoder, kBool indexReset)
63 {
64  kObj(kHxEncoder, encoder);
65 
66  obj->indexReset = indexReset;
67 
68  return kOK;
69 }
70 
71 kInlineFx(kBool) kHxEncoder_IndexResetEnabled(kHxEncoder encoder)
72 {
73  kObj(kHxEncoder, encoder);
74 
75  return obj->indexReset;
76 }
77 
78 kInlineFx(kStatus) kHxEncoder_EnableSimulation(kHxEncoder encoder, kBool enable)
79 {
80  kObj(kHxEncoder, encoder);
81 
82  obj->simulatorEnabled = enable;
83 
84  return kOK;
85 }
86 
87 kInlineFx(kBool) kHxEncoder_SimulationEnabled(kHxEncoder encoder)
88 {
89  kObj(kHxEncoder, encoder);
90 
91  return obj->simulatorEnabled;
92 }
93 
94 kInlineFx(kStatus) kHxEncoder_SetSimulationDirection(kHxEncoder encoder, kBool isForward)
95 {
96  kObj(kHxEncoder, encoder);
97 
98  obj->simulatorDirection = isForward;
99 
100  return kOK;
101 }
102 
103 kInlineFx(kBool) kHxEncoder_SimulationDirection(kHxEncoder encoder)
104 {
105  kObj(kHxEncoder, encoder);
106 
107  return obj->simulatorDirection;
108 }
109 
110 kInlineFx(kStatus) kHxEncoder_SetSimulationPeriod(kHxEncoder encoder, k64u period)
111 {
112  kObj(kHxEncoder, encoder);
113 
114  obj->simulatorPeriod = period;
115 
116  return kOK;
117 }
118 
119 kInlineFx(k64u) kHxEncoder_SimulationPeriod(kHxEncoder encoder)
120 {
121  kObj(kHxEncoder, encoder);
122 
123  return obj->simulatorPeriod;
124 }
125 
126 kInlineFx(kStatus) kHxEncoder_SetSimulationResolution(kHxEncoder encoder, k32u resolution)
127 {
128  kObj(kHxEncoder, encoder);
129 
130  obj->simulatorResolution = resolution;
131 
132  return kOK;
133 }
134 
135 kInlineFx(k32u) kHxEncoder_SimulationResolution(kHxEncoder encoder)
136 {
137  kObj(kHxEncoder, encoder);
138 
139  return obj->simulatorResolution;
140 }
141 
142 kInlineFx(kStatus) kHxEncoder_SetSnapshotSource(kHxEncoder encoder, kEncoderSnapshotSource source)
143 {
144  kObj(kHxEncoder, encoder);
145 
146  obj->snapshotSource = source;
147 
148  return kOK;
149 }
150 
151 kInlineFx(kEncoderSnapshotSource) kHxEncoder_SnapshotSource(kHxEncoder encoder)
152 {
153  kObj(kHxEncoder, encoder);
154 
155  return obj->snapshotSource;
156 }
157 
158 kInlineFx(kStatus) kHxEncoder_SetSnapshotSourceId(kHxEncoder encoder, k32u id)
159 {
160  kObj(kHxEncoder, encoder);
161 
162  obj->snapshotSourceId = id;
163 
164  return kOK;
165 }
166 
167 kInlineFx(k32u) kHxEncoder_SnapshotSourceId(kHxEncoder encoder)
168 {
169  kObj(kHxEncoder, encoder);
170 
171  return obj->snapshotSourceId;
172 }
173 
174 kInlineFx(kStatus) kHxEncoder_Apply(kHxEncoder encoder)
175 {
176  return xkHxEncoder_VTable(encoder)->VApply(encoder);
177 }
178 
179 kInlineFx(kStatus) kHxEncoder_Reset(kHxEncoder encoder)
180 {
181  return xkHxEncoder_VTable(encoder)->VReset(encoder);
182 }
183 
184 kInlineFx(kStatus) kHxEncoder_Clear(kHxEncoder encoder)
185 {
186  return xkHxEncoder_VTable(encoder)->VClear(encoder);
187 }
188 
189 kInlineFx(kStatus) kHxEncoder_ClearDevice(kHxEncoder encoder)
190 {
191  return xkHxEncoder_VTable(encoder)->VClearDevice(encoder);
192 }
193 
194 #endif
Represents encoder snapshot source.
#define kInlineFx(TYPE)
Essential declarations related to FireSync nodes.
Abstract base class for hardware node classes.
#define kObj(TypeName_T, T_object)
Represents encoder A/B signal interpretation.
#define kOK