ITK  6.0.0
Insight Toolkit
itkVersion.h
Go to the documentation of this file.
1/*=========================================================================
2 *
3 * Copyright NumFOCUS
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 * https://www.apache.org/licenses/LICENSE-2.0.txt
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 *
17 *=========================================================================*/
18/*=========================================================================
19 *
20 * Portions of this file are subject to the VTK Toolkit Version 3 copyright.
21 *
22 * Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
23 *
24 * For complete copyright, license and disclaimer of warranty information
25 * please refer to the NOTICE file at the top of the ITK source tree.
26 *
27 *=========================================================================*/
28#ifndef itkVersion_h
29#define itkVersion_h
30
31#include "itkObject.h"
32#include "itkObjectFactory.h"
33
34#define ITK_VERSION_TO_STRING(x) ITK_VERSION_TO_STRING0(x)
35#define ITK_VERSION_TO_STRING0(x) #x
36#define ITK_VERSION \
37 ITK_VERSION_TO_STRING(ITK_VERSION_MAJOR) \
38 "." ITK_VERSION_TO_STRING(ITK_VERSION_MINOR) "." ITK_VERSION_TO_STRING(ITK_VERSION_PATCH)
39#define ITK_SOURCE_VERSION "itk version " ITK_VERSION
40
41namespace itk
42{
56class ITKCommon_EXPORT Version : public Object
57{
58public:
59 ITK_DISALLOW_COPY_AND_MOVE(Version);
60
62 using Self = Version;
66
68 itkNewMacro(Self);
69
71 itkOverrideGetNameOfClassMacro(Version);
72
74 static const char *
76
78 static int
80
82 static int
84
86 static int
88
90 static const char *
92
93protected:
95 ~Version() override;
96};
97} // end namespace itk
98
99#endif
Light weight base class for most itk classes.
Base class for most ITK classes.
Definition: itkObject.h:62
Track the current version of the software.
Definition: itkVersion.h:57
~Version() override
static int GetITKMajorVersion()
static int GetITKMinorVersion()
static int GetITKBuildVersion()
static const char * GetITKVersion()
static const char * GetITKSourceVersion()
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....