Generative Fast Fourier Transforms (GFFT)  0.3
sint.h
Go to the documentation of this file.
1 /***************************************************************************
2  * Copyright (C) 2009-2014 by Vladimir Mirnyy *
3  * *
4  * This program is free software; you can redistribute it and/or modify *
5  * it under the terms of the GNU General Public License as published by *
6  * the Free Software Foundation; either version 2 of the License, or *
7  * (at your option) any later version. *
8  * *
9  * This program is distributed in the hope that it will be useful, *
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of *
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
12  * GNU General Public License for more details. *
13  ***************************************************************************/
14 
19 #ifndef __sint_h
20 #define __sint_h
21 
22 typedef long int_t;
23 typedef unsigned long uint_t;
24 typedef unsigned short short_t;
25 
27 
32 template<int_t N>
33 struct SInt {
34  static const int_t value = N;
35 };
36 
38 template<int_t N>
39 struct SIntID : public SInt<N> {
40  static const int_t ID = N-1;
41 };
42 
43 #define STATIC_INTEGER_CLASS(Type, Name) \
44 template<Type N> \
45 struct s_##Name { \
46  typedef Type value_type; \
47  static const Type value = N; \
48 };
49 
50 STATIC_INTEGER_CLASS(int, int)
51 STATIC_INTEGER_CLASS(unsigned int, uint)
52 STATIC_INTEGER_CLASS(long, long)
53 STATIC_INTEGER_CLASS(unsigned long, ulong)
54 #undef STATIC_INTEGER_CLASS
55 
56 
57 #endif

Generated on Mon Feb 10 2014 for Generative Fast Fourier Transforms (GFFT) by DoxyGen 1.8.3.1