SHOGUN  v1.1.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
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>
13 
14 using namespace shogun;
15 
16 namespace shogun
17 {
19 const int32_t Version::version_year = VERSION_YEAR;
21 const int32_t Version::version_day = VERSION_DAY;
22 const int32_t Version::version_hour = VERSION_HOUR;
25 const char Version::version_extra[128] = VERSION_EXTRA;
27 }
28 
29 Version::Version() : refcount(0)
30 {
31 }
32 
33 
35 {
36 }
37 
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 
55 {
56  return version_extra;
57 }
58 
61 {
62  return version_release;
63 }
64 
67 {
68  return version_revision;
69 }
70 
73 {
74  return version_year;
75 }
76 
79 {
80  return version_month;
81 }
82 
85 {
86  return version_day;
87 }
88 
91 {
92  return version_hour;
93 }
94 
97 {
98  return version_year;
99 }
100 
103 {
104  return version_parameter;
105 }
106 
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