zbtxrequest.h
1 /*
2  * Copyright (C) 2015 ThomArmax (Thomas COIN)
3  *
4  * This library is free software; you can redistribute it and/or
5  * modify it under the terms of the GNU Lesser General Public
6  * License as published by the Free Software Foundation; either
7  * version 2.1 of the License, or (at your option) any later version.
8  *
9  * This library is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12  * Lesser General Public License for more details.
13  *
14  * You should have received a copy of the GNU Lesser General Public
15  * License along with this library; if not, write to the Free Software
16  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
17  *
18  * Thomas COIN <esvcorp@gmail.com> 18/04/2015
19  */
20 
21 #ifndef ZBTxREQUEST_H
22 #define ZBTxREQUEST_H
23 
24 #include "XBeePacket"
25 #include <QByteArray>
26 
27 namespace QtXBee {
28 namespace ZigBee {
29 
46 class ZBTxRequest : public XBeePacket
47 {
48  Q_OBJECT
49 public:
50  explicit ZBTxRequest (QObject *parent = 0);
51 
52  // Reimplemented from XBeePacket
53  void assemblePacket ();
54 
55  void setBroadcastRadius (int rad);
56  void setTransmitOptions (unsigned to);
57  void setDestAddr64 (QByteArray da64);
58  void setDestAddr16 (QByteArray da16);
59  void setData (QByteArray d);
60 
61  QByteArray destAddr64 () const;
62  QByteArray destAddr16 () const;
63  unsigned broadcastRadius () const;
64  unsigned transmitOptions () const;
65  QByteArray getData () const;
66 
67 private:
68  QByteArray m_destAddr64;
69  QByteArray m_destAddr16;
70  unsigned m_broadcastRadius;
71  unsigned m_transmitOptions;
72  QByteArray m_data;
73 };
74 
75 } } // END namepsace
76 
77 #endif // ZBTxREQUEST_H