source: tspsg-svn/trunk/src/version.h @ 64

Last change on this file since 64 was 64, checked in by laleppa, 15 years ago

Started documenting the source code in doxygen format.

  • Property svn:keywords set to Id URL
File size: 2.3 KB
Line 
1/*! \mainpage
2 *
3 *  <b>TSPSG: TSP Solver and Generator</b>
4 *  \author Copyright (C) 2007-2009 Lёppa <contacts[at]oleksii[dot]name>
5 *
6 *  $Id: version.h 64 2009-10-20 09:40:16Z laleppa $
7 *  $URL: https://tspsg.svn.sourceforge.net/svnroot/tspsg/trunk/src/version.h $
8 *
9 *  This file is part of TSPSG.
10 *
11 *  TSPSG is free software: you can redistribute it and/or modify
12 *  it under the terms of the GNU General Public License as published by
13 *  the Free Software Foundation, either version 3 of the License, or
14 *  (at your option) any later version.
15 *
16 *  TSPSG is distributed in the hope that it will be useful,
17 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
18 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
19 *  GNU General Public License for more details.
20 *
21 *  You should have received a copy of the GNU General Public License
22 *  along with TSPSG.  If not, see <http://www.gnu.org/licenses/>.
23 */
24
25#ifndef VERSION_H
26#define VERSION_H
27
28/*!
29 * \file version.h
30 * \brief This file contains TSPSG version information defines.
31 */
32
33//! TSPSG version ID
34#define VERSIONID "$Id: version.h 64 2009-10-20 09:40:16Z laleppa $"
35//! Major version of current TSPSG build
36#define BUILD_VERSION_MAJOR 0
37//! Minor version of current TSPSG build
38#define BUILD_VERSION_MINOR 1
39//! TSPSG release number
40#define BUILD_RELEASE 2
41
42/*!
43 * \brief Current TSPSG build number
44 *
45 * This will only change on releases and will be the same as revision number.
46 *
47 * Build number meanings:
48 *   - 1  --  3: alpha 1 to 3
49 *   - 4  --  7: beta 1 to 4
50 *   - 8  -- 10: rc 1 to 3
51 *   - 11 --...: release 1 to ...
52 */
53#define BUILD_NUMBER 65535
54
55/*!
56 * \def BUILD_STATUS
57 * \brief TSPSG build status
58 *
59 * Determined based on BUILD_NUMBER.
60 */
61#if BUILD_NUMBER == 65535
62        #define BUILD_STATUS (dev build)
63#elif BUILD_RELEASE < 4
64        #define BUILD_STATUS (alpha)
65#elif BUILD_RELEASE < 8
66        #define BUILD_STATUS (beta)
67#elif BUILD_RELEASE < 11
68        #define BUILD_STATUS (rc)
69#endif // BUILD_NUMBER == 65535
70
71//! Used for "conversion" of \a x to quoted string
72#define QUOTE_X(x) #x
73#define QUOTE(x) QUOTE_X(x)
74
75/*!
76 * \def BUILD_VERSION
77 * \brief Full version of TSPSG in the form: \a major.\a minor.\a release [\a status].
78 */
79#ifndef BUILD_STATUS
80        #define BUILD_VERSION QUOTE(BUILD_VERSION_MAJOR.BUILD_VERSION_MINOR.BUILD_RELEASE)
81#else
82        #define BUILD_VERSION QUOTE(BUILD_VERSION_MAJOR.BUILD_VERSION_MINOR.BUILD_RELEASE BUILD_STATUS)
83#endif
84
85#endif // VERSION_H
Note: See TracBrowser for help on using the repository browser.