• Main Page
  • Related Pages
  • Namespaces
  • Classes
  • Files
  • File List
  • File Members

datatypes/unsigned.h

Go to the documentation of this file.
00001 
00027 #ifndef UNSIGNED_H
00028 #define UNSIGNED_H
00029 
00030 #include <QDBusArgument>
00031 #include <datatypes/timedunsigned.h>
00032 
00036 class Unsigned : public QObject
00037 {
00038     Q_OBJECT
00039     Q_PROPERTY(int x READ x)
00040 
00041 public:
00042 
00046     Unsigned() {}
00047 
00053     Unsigned(const TimedUnsigned& unsignedData);
00054 
00060     Unsigned(const Unsigned& data);
00061 
00066     const TimedUnsigned& UnsignedData() const { return data_; }
00067 
00072     int x() const { return data_.value_; }
00073 
00079     Unsigned& operator=(const Unsigned& origin)
00080     {
00081         data_ = origin.UnsignedData();
00082         return *this;
00083     }
00084 
00091     bool operator==(const Unsigned& right) const
00092     {
00093         TimedUnsigned rdata = right.UnsignedData();
00094         return (data_.value_ == rdata.value_ &&
00095                 data_.timestamp_ == rdata.timestamp_);
00096     }
00097 
00098 private:
00099     TimedUnsigned data_; 
00101     friend const QDBusArgument &operator>>(const QDBusArgument &argument, Unsigned& data);
00102 };
00103 
00104 Q_DECLARE_METATYPE( Unsigned )
00105 
00106 
00113 inline QDBusArgument &operator<<(QDBusArgument &argument, const Unsigned &data)
00114 {
00115     argument.beginStructure();
00116     argument << data.UnsignedData().timestamp_ << data.UnsignedData().value_;
00117     argument.endStructure();
00118     return argument;
00119 }
00120 
00128 inline const QDBusArgument &operator>>(const QDBusArgument &argument, Unsigned &data)
00129 {
00130     argument.beginStructure();
00131     argument >> data.data_.timestamp_ >> data.data_.value_;
00132     argument.endStructure();
00133     return argument;
00134 }
00135 
00136 #endif // UNSIGNED_H

Generated on Mon Jun 27 2011 14:38:47 for sensorfw by  doxygen 1.7.1