1 #ifndef TEST_SIGNAL_HELPERS_H
2 #define TEST_SIGNAL_HELPERS_H
3 
4 class SignalCounter0
5 {
6 public:
SignalCounter0()7     SignalCounter0() :
8         m_count(0)
9     {;}
10 
fired()11     void fired()
12     {
13         ++m_count;
14     }
15 
fireCount()16     int fireCount() const
17     { return m_count; }
18 
reset()19     void reset()
20     {
21         m_count = 0;
22     }
23 protected:
24     int m_count;
25 };
26 
27 template <class P0>
28 class SignalCounter1 : public SignalCounter0
29 {
30 public:
31 
fired(P0)32     void fired(P0)
33     {
34         ++m_count;
35     }
36 };
37 
38 template <class P0, class P1>
39 class SignalCounter2 : public SignalCounter0
40 {
41 public:
42 
fired(P0,P1)43     void fired(P0, P1)
44     {
45         ++m_count;
46     }
47 
48 };
49 template <class P0>
50 class SignalRecorder1
51 {
52 public:
SignalRecorder1()53     SignalRecorder1() :
54         m_count(0)
55     {;}
56 
fired(P0 m)57     void fired(P0 m)
58     {
59         ++m_count;
60         m_lastArg0 = m;
61     }
62 
fireCount()63     int fireCount() const
64     { return m_count; }
65 
lastArg0()66     P0 lastArg0() const
67     {
68         return m_lastArg0;
69     }
70 
reset()71     void reset()
72     {
73         m_count = 0;
74     }
75 private:
76     int m_count;
77     P0 m_lastArg0;
78 };
79 
80 template <class P0>
81 class SignalRecorderRef1
82 {
83 public:
SignalRecorderRef1()84     SignalRecorderRef1() :
85         m_count(0)
86     {;}
87 
fired(const P0 & m)88     void fired(const P0& m)
89     {
90         ++m_count;
91         m_lastArg0 = m;
92     }
93 
fireCount()94     int fireCount() const
95     { return m_count; }
96 
lastArg0()97     P0 lastArg0() const
98     {
99         return m_lastArg0;
100     }
101 
reset()102     void reset()
103     {
104         m_count = 0;
105     }
106 private:
107     int m_count;
108     P0 m_lastArg0;
109 };
110 
111 
112 #endif // of TEST_SIGNAL_HELPERS_H
113