VTK
vtkAtomicTypeConcepts.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkAtomicTypeConcepts.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
15 
16 #ifndef vtkAtomicTypeConcepts_h
17 #define vtkAtomicTypeConcepts_h
18 
19 #include <limits>
20 
21 namespace vtk
22 {
23 namespace atomic
24 {
25 namespace detail
26 {
27 
28 template <bool> struct CompileTimeCheck;
29 template <> struct CompileTimeCheck<true> {};
30 
31 template <typename T> struct IntegralType
32 {
34  std::numeric_limits<T>::is_integer &&
35  (sizeof(T) == 4 || sizeof(T) == 8)> c;
36 };
37 
38 } // detail
39 } // atomic
40 } // vtk
41 
42 #endif
43 // VTK-HeaderTest-Exclude: vtkAtomicTypeConcepts.h
CompileTimeCheck< std::numeric_limits< T >::is_specialized &&std::numeric_limits< T >::is_integer &&(sizeof(T)==4||sizeof(T)==8)> c