LibEngsas
version.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2010 - 2012 EngSaS - Engineering Solutions and Services Langenbach. All rights reserved.
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,
17  MA 02110-1301 USA.
18 */
19 
20 #ifndef VERSION_H
21 #define VERSION_H
22 
23 #include <QString>
24 
30 class Version {
31  public:
32  Version();
33  Version(QString version);
34  Version(int major, int minor, int patch, int rc);
35  bool isValid() const;
36  QString toString() const;
37  static Version fromString(QString versionString);
38 
39  void setMajor(int value);
45  int maj() const;
46  void setMinor(int value);
52  int min() const;
53  void setPatch(int value);
54  int patch() const;
55  void setRc(int value);
56  int rc() const;
57 
58  bool operator== (const Version &rhs) const;
59  bool operator!= (const Version &rhs) const;
60  bool operator< (const Version &rhs) const;
61  bool operator<= (const Version &rhs) const;
62  bool operator> (const Version &rhs) const;
63  bool operator>= (const Version &rhs) const;
64 
65  private:
67 };
68 
69 #endif // VERSION_H