20 #ifndef TRACED_VALUE_H
21 #define TRACED_VALUE_H
30 #define TRACED_VALUE_DEBUG(x)
90 void Set (
const T &v) {
135 template <
typename T>
136 std::ostream& operator << (std::ostream& os, const TracedValue<T>& rhs)
138 return os<<rhs.Get ();
141 template <
typename T,
typename U>
145 return lhs.
Get () == rhs.
Get ();
147 template <
typename T,
typename U>
151 return lhs.
Get () == rhs;
153 template <
typename T,
typename U>
157 return lhs == rhs.
Get ();
160 template <
typename T,
typename U>
164 return lhs.
Get () != rhs.
Get ();
166 template <
typename T,
typename U>
170 return lhs.
Get () != rhs;
172 template <
typename T,
typename U>
176 return lhs != rhs.
Get ();
179 template <
typename T,
typename U>
183 return lhs.Get () <= rhs.Get ();
185 template <
typename T,
typename U>
186 bool operator <= (const TracedValue<T> &lhs,
const U &rhs)
189 return lhs.Get () <= rhs;
191 template <
typename T,
typename U>
192 bool operator <= (const U &lhs, const TracedValue<T> &rhs)
195 return lhs <= rhs.Get ();
197 template <
typename T,
typename U>
201 return lhs.
Get () >= rhs.
Get ();
203 template <
typename T,
typename U>
207 return lhs.
Get () >= rhs;
209 template <
typename T,
typename U>
213 return lhs >= rhs.
Get ();
216 template <
typename T,
typename U>
220 return lhs.Get () < rhs.Get ();
222 template <
typename T,
typename U>
223 bool operator < (const TracedValue<T> &lhs,
const U &rhs)
226 return lhs.Get () < rhs;
228 template <
typename T,
typename U>
229 bool operator < (const U &lhs, const TracedValue<T> &rhs)
232 return lhs < rhs.Get ();
234 template <
typename T,
typename U>
238 return lhs.
Get () > rhs.
Get ();
240 template <
typename T,
typename U>
244 return lhs.
Get () > rhs;
246 template <
typename T,
typename U>
250 return lhs > rhs.
Get ();
252 template <
typename T,
typename U>
260 template <
typename T,
typename U>
268 template <
typename T,
typename U>
276 template <
typename T,
typename U>
284 template <
typename T,
typename U>
292 template <
typename T,
typename U>
300 template <
typename T,
typename U>
308 template <
typename T,
typename U>
316 template <
typename T,
typename U>
324 template <
typename T,
typename U>
332 template <
typename T,
typename U>
337 template <
typename T,
typename U>
342 template <
typename T,
typename U>
348 template <
typename T,
typename U>
353 template <
typename T,
typename U>
358 template <
typename T,
typename U>
364 template <
typename T,
typename U>
369 template <
typename T,
typename U>
374 template <
typename T,
typename U>
380 template <
typename T,
typename U>
385 template <
typename T,
typename U>
390 template <
typename T,
typename U>
396 template <
typename T,
typename U>
401 template <
typename T,
typename U>
406 template <
typename T,
typename U>
412 template <
typename T,
typename U>
417 template <
typename T,
typename U>
422 template <
typename T,
typename U>
428 template <
typename T,
typename U>
433 template <
typename T,
typename U>
438 template <
typename T,
typename U>
444 template <
typename T,
typename U>
449 template <
typename T,
typename U>
454 template <
typename T,
typename U>
460 template <
typename T,
typename U>
465 template <
typename T,
typename U>
470 template <
typename T,
typename U>
476 template <
typename T,
typename U>
481 template <
typename T,
typename U>
486 template <
typename T,
typename U>
493 template <
typename T>
498 template <
typename T>
503 template <
typename T>
508 template <
typename T>
TracedValue< T > operator!(const TracedValue< T > &lhs)
std::istream & operator>>(std::istream &is, Angles &a)
initialize a struct Angles from input
TracedValue< T > & operator%=(TracedValue< T > &lhs, const U &rhs)
TracedValue & operator=(const TracedValue &o)
bool operator>(const Time &lhs, const Time &rhs)
TracedValue< T > operator~(const TracedValue< T > &lhs)
TracedValue< T > operator*(const TracedValue< T > &lhs, const TracedValue< U > &rhs)
Base class for Callback class.
void Disconnect(const CallbackBase &cb, std::string path)
trace classes with value semantics
TracedValue(const TracedValue< U > &other)
TracedValue< T > & operator&=(TracedValue< T > &lhs, const U &rhs)
void ConnectWithoutContext(const CallbackBase &cb)
Time & operator+=(Time &lhs, const Time &rhs)
void Connect(const CallbackBase &cb, std::string path)
TracedValue< T > & operator*=(TracedValue< T > &lhs, const U &rhs)
void DisconnectWithoutContext(const CallbackBase &callback)
TracedValue & operator--()
Time operator+(const Time &lhs, const Time &rhs)
TracedValue< T > & operator^=(TracedValue< T > &lhs, const U &rhs)
void Disconnect(const CallbackBase &callback, std::string path)
TracedValue< T > & operator|=(TracedValue< T > &lhs, const U &rhs)
TracedValue< T > operator/(const TracedValue< T > &lhs, const TracedValue< U > &rhs)
TracedValue(const U &other)
Time & operator-=(Time &lhs, const Time &rhs)
bool operator!=(Callback< R, T1, T2, T3, T4, T5, T6, T7, T8, T9 > a, Callback< R, T1, T2, T3, T4, T5, T6, T7, T8, T9 > b)
Inequality test.
bool operator>=(const Time &lhs, const Time &rhs)
TracedValue< T > & operator>>=(TracedValue< T > &lhs, const U &rhs)
Time operator-(const Time &lhs, const Time &rhs)
TracedValue< T > operator&(const TracedValue< T > &lhs, const TracedValue< U > &rhs)
void Connect(const CallbackBase &callback, std::string path)
TracedValue(const TracedValue &o)
TracedValue< T > & operator/=(TracedValue< T > &lhs, const U &rhs)
void ConnectWithoutContext(const CallbackBase &callback)
bool operator==(const EventId &a, const EventId &b)
TracedValue< T > operator^(const TracedValue< T > &lhs, const TracedValue< U > &rhs)
void DisconnectWithoutContext(const CallbackBase &cb)
#define TRACED_VALUE_DEBUG(x)
TracedValue< T > operator|(const TracedValue< T > &lhs, const TracedValue< U > &rhs)
TracedValue & operator++()
TracedValue< T > operator%(const TracedValue< T > &lhs, const TracedValue< U > &rhs)
TracedCallback< T, T > m_cb