Skip to content

Commit 5a85280

Browse files
committed
Tick now returns void.
1 parent 0d3315d commit 5a85280

6 files changed

Lines changed: 20 additions & 52 deletions

File tree

‎include/react/Signal.h‎

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,6 @@ class Signal : public Reactive<REACT_IMPL::SignalNode<D,S>>
4040
Signal() :
4141
Reactive()
4242
{}
43-
44-
// Signal(const Signal& other) = delete;
4543

4644
explicit Signal(const std::shared_ptr<NodeT>& ptr) :
4745
Reactive(ptr)

‎include/react/detail/IReactiveNode.h‎

Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -10,15 +10,6 @@
1010

1111
/***************************************/ REACT_IMPL_BEGIN /**************************************/
1212

13-
14-
enum class EUpdateResult
15-
{
16-
none,
17-
unchanged,
18-
changed,
19-
invalidated
20-
};
21-
2213
///////////////////////////////////////////////////////////////////////////////////////////////////
2314
/// IReactiveNode
2415
///////////////////////////////////////////////////////////////////////////////////////////////////
@@ -31,7 +22,7 @@ struct IReactiveNode
3122

3223
// Note: Could get rid of this ugly ptr by adding a template parameter to the interface
3324
// But that would mean all engine nodes need that template parameter too - so rather cast
34-
virtual EUpdateResult Tick(void* turnPtr) = 0;
25+
virtual void Tick(void* turnPtr) = 0;
3526

3627
/// Input nodes can be manipulated externally.
3728
virtual bool IsInputNode() const = 0;

‎include/react/detail/graph/ConversionNodes.h‎

Lines changed: 7 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ class FoldBaseNode : public SignalNode<D,S>
3838
{
3939
}
4040

41-
virtual EUpdateResult Tick(void* turnPtr) override
41+
virtual void Tick(void* turnPtr) override
4242
{
4343
using TurnT = typename D::Engine::TurnT;
4444
TurnT& turn = *static_cast<TurnT*>(turnPtr);
@@ -55,12 +55,10 @@ class FoldBaseNode : public SignalNode<D,S>
5555
{
5656
value_ = newValue;
5757
Engine::OnNodePulse(*this, turn);
58-
return EUpdateResult::changed;
5958
}
6059
else
6160
{
6261
Engine::OnNodeIdlePulse(*this, turn);
63-
return EUpdateResult::unchanged;
6462
}
6563
}
6664

@@ -185,7 +183,7 @@ class HoldNode : public SignalNode<D,S>
185183

186184
virtual const char* GetNodeType() const override { return "HoldNode"; }
187185

188-
virtual EUpdateResult Tick(void* turnPtr) override
186+
virtual void Tick(void* turnPtr) override
189187
{
190188
using TurnT = typename D::Engine::TurnT;
191189
TurnT& turn = *static_cast<TurnT*>(turnPtr);
@@ -211,12 +209,10 @@ class HoldNode : public SignalNode<D,S>
211209
if (changed)
212210
{
213211
Engine::OnNodePulse(*this, turn);
214-
return EUpdateResult::changed;
215212
}
216213
else
217214
{
218215
Engine::OnNodeIdlePulse(*this, turn);
219-
return EUpdateResult::unchanged;
220216
}
221217
}
222218

@@ -257,7 +253,7 @@ class SnapshotNode : public SignalNode<D,S>
257253

258254
virtual const char* GetNodeType() const override { return "SnapshotNode"; }
259255

260-
virtual EUpdateResult Tick(void* turnPtr) override
256+
virtual void Tick(void* turnPtr) override
261257
{
262258
using TurnT = typename D::Engine::TurnT;
263259
TurnT& turn = *static_cast<TurnT*>(turnPtr);
@@ -285,12 +281,10 @@ class SnapshotNode : public SignalNode<D,S>
285281
if (changed)
286282
{
287283
Engine::OnNodePulse(*this, turn);
288-
return EUpdateResult::changed;
289284
}
290285
else
291286
{
292287
Engine::OnNodeIdlePulse(*this, turn);
293-
return EUpdateResult::unchanged;
294288
}
295289
}
296290

@@ -328,7 +322,7 @@ class MonitorNode : public EventStreamNode<D,E>
328322

329323
virtual const char* GetNodeType() const override { return "MonitorNode"; }
330324

331-
virtual EUpdateResult Tick(void* turnPtr) override
325+
virtual void Tick(void* turnPtr) override
332326
{
333327
using TurnT = typename D::Engine::TurnT;
334328
TurnT& turn = *static_cast<TurnT*>(turnPtr);
@@ -346,12 +340,10 @@ class MonitorNode : public EventStreamNode<D,E>
346340
if (events_.size() > 0)
347341
{
348342
Engine::OnNodePulse(*this, turn);
349-
return EUpdateResult::changed;
350343
}
351344
else
352345
{
353346
Engine::OnNodeIdlePulse(*this, turn);
354-
return EUpdateResult::unchanged;
355347
}
356348
}
357349

@@ -392,7 +384,7 @@ class PulseNode : public EventStreamNode<D,S>
392384

393385
virtual const char* GetNodeType() const override { return "PulseNode"; }
394386

395-
virtual EUpdateResult Tick(void* turnPtr) override
387+
virtual void Tick(void* turnPtr) override
396388
{
397389
typedef typename D::Engine::TurnT TurnT;
398390
TurnT& turn = *static_cast<TurnT*>(turnPtr);
@@ -412,12 +404,10 @@ class PulseNode : public EventStreamNode<D,S>
412404
if (events_.size() > 0)
413405
{
414406
Engine::OnNodePulse(*this, turn);
415-
return EUpdateResult::changed;
416407
}
417408
else
418409
{
419410
Engine::OnNodeIdlePulse(*this, turn);
420-
return EUpdateResult::unchanged;
421411
}
422412
}
423413

@@ -461,7 +451,7 @@ class EventFlattenNode : public EventStreamNode<D, TInner>
461451

462452
virtual bool IsDynamicNode() const override { return true; }
463453

464-
virtual EUpdateResult Tick(void* turnPtr) override
454+
virtual void Tick(void* turnPtr) override
465455
{
466456
typedef typename D::Engine::TurnT TurnT;
467457
TurnT& turn = *static_cast<TurnT*>(turnPtr);
@@ -482,7 +472,7 @@ class EventFlattenNode : public EventStreamNode<D, TInner>
482472
Engine::OnDynamicNodeDetach(*this, *oldInner, turn);
483473
Engine::OnDynamicNodeAttach(*this, *newInner, turn);
484474

485-
return EUpdateResult::invalidated;
475+
return;
486476
}
487477

488478
REACT_LOG(D::Log().template Append<NodeEvaluateBeginEvent>(
@@ -496,12 +486,10 @@ class EventFlattenNode : public EventStreamNode<D, TInner>
496486
if (events_.size() > 0)
497487
{
498488
Engine::OnNodePulse(*this, *static_cast<TurnT*>(turnPtr));
499-
return EUpdateResult::changed;
500489
}
501490
else
502491
{
503492
Engine::OnNodeIdlePulse(*this, *static_cast<TurnT*>(turnPtr));
504-
return EUpdateResult::unchanged;
505493
}
506494
}
507495

‎include/react/detail/graph/ObserverNodes.h‎

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ class SignalObserverNode : public ObserverNode<D>
7777

7878
virtual const char* GetNodeType() const override { return "SignalObserverNode"; }
7979

80-
virtual EUpdateResult Tick(void* turnPtr) override
80+
virtual void Tick(void* turnPtr) override
8181
{
8282
using TurnT = typename D::Engine::TurnT;
8383
TurnT& turn = *static_cast<TurnT*>(turnPtr);
@@ -99,8 +99,6 @@ class SignalObserverNode : public ObserverNode<D>
9999

100100
REACT_LOG(D::Log().template Append<NodeEvaluateEndEvent>(
101101
GetObjectId(*this), turn.Id()));
102-
103-
return EUpdateResult::none;
104102
}
105103

106104
virtual int DependencyCount() const { return 1; }
@@ -154,7 +152,7 @@ class EventObserverNode : public ObserverNode<D>
154152

155153
virtual const char* GetNodeType() const override { return "EventObserverNode"; }
156154

157-
virtual EUpdateResult Tick(void* turnPtr) override
155+
virtual void Tick(void* turnPtr) override
158156
{
159157
using TurnT = typename D::Engine::TurnT;
160158
TurnT& turn = *static_cast<TurnT*>(turnPtr);
@@ -179,8 +177,6 @@ class EventObserverNode : public ObserverNode<D>
179177

180178
REACT_LOG(D::Log().template Append<NodeEvaluateEndEvent>(
181179
GetObjectId(*this), turn.Id()));
182-
183-
return EUpdateResult::none;
184180
}
185181

186182
virtual int DependencyCount() const { return 1; }

‎include/react/detail/graph/ReactorNodes.h‎

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ class ReactorNode :
9090
virtual bool IsDynamicNode() const override { return true; }
9191
virtual bool IsOutputNode() const override { return true; }
9292

93-
virtual EUpdateResult Tick(void* turnPtr) override
93+
virtual void Tick(void* turnPtr) override
9494
{
9595
turnPtr_ = static_cast<TurnT*>(turnPtr);
9696
REACT_SCOPE_EXIT{ turnPtr_ = nullptr; };
@@ -103,12 +103,10 @@ class ReactorNode :
103103
Engine::OnDynamicNodeAttach(*this, *depPtr, *turnPtr_);
104104
++depCount_;
105105

106-
return EUpdateResult::invalidated;
106+
return;
107107
}
108108

109109
offsets_.clear();
110-
111-
return EUpdateResult::none;
112110
}
113111

114112
virtual int DependencyCount() const override

‎include/react/detail/graph/SignalNodes.h‎

Lines changed: 8 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,9 @@
1313
#include <tuple>
1414
#include <utility>
1515

16+
17+
#include <deque>
18+
1619
#include "GraphBase.h"
1720

1821
/***************************************/ REACT_IMPL_BEGIN /**************************************/
@@ -48,10 +51,9 @@ class SignalNode : public ReactiveNode<D,S,S>
4851

4952
virtual const char* GetNodeType() const override { return "SignalNode"; }
5053

51-
virtual EUpdateResult Tick(void* turnPtr) override
54+
virtual void Tick(void* turnPtr) override
5255
{
5356
REACT_ASSERT(false, "Don't tick SignalNode\n");
54-
return EUpdateResult::none;
5557
}
5658

5759
const S& ValueRef() const
@@ -97,10 +99,9 @@ class VarNode :
9799

98100
virtual const char* GetNodeType() const override { return "VarNode"; }
99101

100-
virtual EUpdateResult Tick(void* turnPtr) override
102+
virtual void Tick(void* turnPtr) override
101103
{
102104
REACT_ASSERT(false, "Don't tick the VarNode\n");
103-
return EUpdateResult::none;
104105
}
105106

106107
virtual bool IsInputNode() const override { return true; }
@@ -223,7 +224,7 @@ class SignalOpNode : public SignalNode<D,S>
223224

224225
virtual const char* GetNodeType() const override { return "SignalOpNode"; }
225226

226-
virtual EUpdateResult Tick(void* turnPtr) override
227+
virtual void Tick(void* turnPtr) override
227228
{
228229
using TurnT = typename D::Engine::TurnT;
229230
TurnT& turn = *static_cast<TurnT*>(turnPtr);
@@ -251,12 +252,10 @@ class SignalOpNode : public SignalNode<D,S>
251252
if (changed)
252253
{
253254
Engine::OnNodePulse(*this, turn);
254-
return EUpdateResult::changed;
255255
}
256256
else
257257
{
258258
Engine::OnNodeIdlePulse(*this, turn);
259-
return EUpdateResult::unchanged;
260259
}
261260
}
262261

@@ -311,7 +310,7 @@ class FlattenNode : public SignalNode<D,TInner>
311310

312311
virtual bool IsDynamicNode() const override { return true; }
313312

314-
virtual EUpdateResult Tick(void* turnPtr) override
313+
virtual void Tick(void* turnPtr) override
315314
{
316315
using TurnT = typename D::Engine::TurnT;
317316
TurnT& turn = *static_cast<TurnT*>(turnPtr);
@@ -327,7 +326,7 @@ class FlattenNode : public SignalNode<D,TInner>
327326
Engine::OnDynamicNodeDetach(*this, *oldInner, turn);
328327
Engine::OnDynamicNodeAttach(*this, *newInner, turn);
329328

330-
return EUpdateResult::invalidated;
329+
return;
331330
}
332331

333332
REACT_LOG(D::Log().template Append<NodeEvaluateBeginEvent>(
@@ -342,12 +341,10 @@ class FlattenNode : public SignalNode<D,TInner>
342341
{
343342
value_ = newValue;
344343
Engine::OnNodePulse(*this, turn);
345-
return EUpdateResult::changed;
346344
}
347345
else
348346
{
349347
Engine::OnNodeIdlePulse(*this, turn);
350-
return EUpdateResult::unchanged;
351348
}
352349
}
353350

0 commit comments

Comments
 (0)