SHOGUN
v1.1.0
Main Page
Related Pages
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
src
shogun
base
Version.cpp
Go to the documentation of this file.
1
/*
2
* This program is free software; you can redistribute it and/or modify
3
* it under the terms of the GNU General Public License as published by
4
* the Free Software Foundation; either version 3 of the License, or
5
* (at your option) any later version.
6
*
7
* Written (W) 1999-2009 Soeren Sonnenburg
8
* Copyright (C) 1999-2009 Fraunhofer Institute FIRST and Max-Planck-Society
9
*/
10
11
#include <
shogun/base/Version.h
>
12
#include <
shogun/lib/versionstring.h
>
13
14
using namespace
shogun;
15
16
namespace
shogun
17
{
18
const
int32_t
Version::version_revision
=
VERSION_REVISION
;
19
const
int32_t
Version::version_year
=
VERSION_YEAR
;
20
const
int32_t
Version::version_month
=
VERSION_MONTH
;
21
const
int32_t
Version::version_day
=
VERSION_DAY
;
22
const
int32_t
Version::version_hour
=
VERSION_HOUR
;
23
const
int32_t
Version::version_minute
=
VERSION_MINUTE
;
24
const
int32_t
Version::version_parameter
=
VERSION_PARAMETER
;
25
const
char
Version::version_extra
[128] =
VERSION_EXTRA
;
26
const
char
Version::version_release
[128] =
VERSION_RELEASE
;
27
}
28
29
Version::Version
() : refcount(0)
30
{
31
}
32
33
34
Version::~Version
()
35
{
36
}
37
39
void
Version::print_version
()
40
{
41
SG_SPRINT
(
"libshogun (%s/%s%d)\n\n"
,
MACHINE
,
VERSION_RELEASE
,
version_revision
);
42
SG_SPRINT
(
"Copyright (C) 1999-2009 Fraunhofer Institute FIRST\n"
);
43
SG_SPRINT
(
"Copyright (C) 1999-2011 Max Planck Society\n"
);
44
SG_SPRINT
(
"Copyright (C) 2009-2011 Berlin Institute of Technology\n"
);
45
SG_SPRINT
(
"Written (W) 1999-2011 Soeren Sonnenburg, Gunnar Raetsch et al.\n\n"
);
46
#ifndef USE_SVMLIGHT
47
SG_SPRINT
(
"This is free software; see the source for copying conditions. There is NO\n"
);
48
SG_SPRINT
(
"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n\n"
);
49
#endif
50
SG_SPRINT
(
"( configure options: \"%s\" compile flags: \"%s\" link flags: \"%s\" )\n"
,
CONFIGURE_OPTIONS
,
COMPFLAGS_CPP
,
LINKFLAGS
);
51
}
52
54
const
char
*
Version::get_version_extra
()
55
{
56
return
version_extra
;
57
}
58
60
const
char
*
Version::get_version_release
()
61
{
62
return
version_release
;
63
}
64
66
int32_t
Version::get_version_revision
()
67
{
68
return
version_revision
;
69
}
70
72
int32_t
Version::get_version_year
()
73
{
74
return
version_year
;
75
}
76
78
int32_t
Version::get_version_month
()
79
{
80
return
version_month
;
81
}
82
84
int32_t
Version::get_version_day
()
85
{
86
return
version_day
;
87
}
88
90
int32_t
Version::get_version_hour
()
91
{
92
return
version_hour
;
93
}
94
96
int32_t
Version::get_version_minute
()
97
{
98
return
version_year
;
99
}
100
102
int32_t
Version::get_version_parameter
()
103
{
104
return
version_parameter
;
105
}
106
108
int64_t
Version::get_version_in_minutes
()
109
{
110
return
((((
version_year
)*12 +
version_month
)*30 +
version_day
)* 24 +
version_hour
)*60 +
version_minute
;
111
}
112
116
int32_t
Version::ref
()
117
{
118
++refcount;
119
return
refcount;
120
}
121
125
int32_t
Version::ref_count
()
const
126
{
127
return
refcount;
128
}
129
133
int32_t
Version::unref
()
134
{
135
if
(refcount==0 || --refcount==0)
136
{
137
delete
this
;
138
return
0;
139
}
140
else
141
return
refcount;
142
}
SHOGUN
Machine Learning Toolbox - Documentation