txstatusresponse.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 TxSTATUSRESPONSE_H
22 #define TxSTATUSRESPONSE_H
23 
24 #include "../XBeeResponse"
25 
26 namespace QtXBee {
27 namespace Wpan {
28 
36 {
37  Q_OBJECT
38 public:
42  enum Status {
43  Unknown = -1,
44  Success = 0,
45  NoACK = 1,
46  CCAFailure = 2,
47  Purged = 3
48  };
49 
50  explicit TxStatusResponse (QObject *parent = 0);
51  virtual ~TxStatusResponse ();
52 
53  // Reimplemented from XBeeResponse
54  virtual void clear ();
55  virtual QString toString ();
56 
57  void setStatus (const Status status);
58  Status status () const;
59 
60  static QString statusToString (const Status status);
61 
62 protected:
63  virtual bool parseApiSpecificData (const QByteArray &data);
64 
65 private:
66  Status m_status;
67 };
68 
69 }} // END namepsace
70 
71 #endif // TxSTATUSRESPONSE_H