types.hpp
Go to the documentation of this file.
1 /*------------------------------- phasicFlow ---------------------------------
2  O C enter of
3  O O E ngineering and
4  O O M ultiscale modeling of
5  OOOOOOO F luid flow
6 ------------------------------------------------------------------------------
7  Copyright (C): www.cemf.ir
8  email: hamid.r.norouzi AT gmail.com
9 ------------------------------------------------------------------------------
10 Licence:
11  This file is part of phasicFlow code. It is a free software for simulating
12  granular and multiphase flows. You can redistribute it and/or modify it under
13  the terms of GNU General Public License v3 or any other later versions.
14 
15  phasicFlow is distributed to help others in their research in the field of
16  granular and multiphase flows, but WITHOUT ANY WARRANTY; without even the
17  implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
18 
19 -----------------------------------------------------------------------------*/
20 
21 #ifndef __types_hpp__
22 #define __types_hpp__
23 
24 
25 #include "bTypes.hpp"
26 
27 #include "bTypesFunctions.hpp"
28 
29 #include "triple.hpp"
30 
31 #include "quadruple.hpp"
32 
33 #include "typeInfo.hpp"
34 
35 
36 namespace pFlow
37 {
38 
45 using int32x3 = triple<int32>;
46 using int64x3 = triple<int64>;
49 
55 
57 
58 
59 template<>
60 inline word basicTypeName<int8x3>(){ return "int8x3"; }
61 
62 template<>
63 inline word basicTypeName<int16x3>(){ return "int16x3"; }
64 
65 template<>
66 inline word basicTypeName<int32x3>(){ return "int32x3"; }
67 
68 template<>
69 inline word basicTypeName<int64x3>(){ return "int64x3"; }
70 
71 template<>
72 inline word basicTypeName<uint16x3>(){ return "uint16x3"; }
73 
74 template<>
75 inline word basicTypeName<uint32x3>(){ return "uint32x3"; }
76 
77 template<>
78 inline word basicTypeName<labelx3>(){ return "labelx3"; }
79 
80 template<>
81 inline word basicTypeName<realx3>(){ return "realx3"; }
82 
83 template<>
84 inline word basicTypeName<uint16x3x3>(){ return "uint16x3x3"; }
85 
86 template<>
87 inline word basicTypeName<uint32x3x3>(){ return "uint32x3x3"; }
88 
89 template<>
90 inline word basicTypeName<realx3x3>(){ return "realx3x3"; }
91 
92 
93 template<>
94 inline word basicTypeName<real4>(){ return "real4"; }
95 
96 
97 extern const realx3 zero3;
98 extern const realx3 one3;
99 extern const uint32x3 zeroU3;
100 extern const uint32x3 oneU3;
101 
102 extern const realx3x3 zero33;
103 extern const realx3x3 one33;
104 extern const uint32x3x3 zeroU33;
105 extern const uint32x3x3 oneU33;
106 
107 
108 
109 } // pFlow
110 
111 
112 #endif //__types_hpp__
pFlow::zeroU33
const uint32x3x3 zeroU33(zeroU3)
Definition: types.hpp:104
pFlow::zero33
const realx3x3 zero33(zero3)
Definition: types.hpp:102
pFlow::basicTypeName< realx3 >
word basicTypeName< realx3 >()
Definition: types.hpp:81
pFlow::basicTypeName< uint16x3x3 >
word basicTypeName< uint16x3x3 >()
Definition: types.hpp:84
pFlow::basicTypeName< real4 >
word basicTypeName< real4 >()
Definition: types.hpp:94
pFlow::oneU3
const uint32x3 oneU3(1)
Definition: types.hpp:100
pFlow::basicTypeName< int32x3 >
word basicTypeName< int32x3 >()
Definition: types.hpp:66
pFlow::basicTypeName< int64x3 >
word basicTypeName< int64x3 >()
Definition: types.hpp:69
pFlow::word
std::string word
Definition: builtinTypes.hpp:63
pFlow::zeroU3
const uint32x3 zeroU3(0)
Definition: types.hpp:99
pFlow::zero3
const realx3 zero3(0.0)
Definition: types.hpp:97
pFlow::one3
const realx3 one3(1.0)
Definition: types.hpp:98
quadruple.hpp
pFlow::basicTypeName< uint16x3 >
word basicTypeName< uint16x3 >()
Definition: types.hpp:72
bTypes.hpp
pFlow
Definition: demComponent.hpp:28
pFlow::one33
const realx3x3 one33(one3)
Definition: types.hpp:103
pFlow::basicTypeName< uint32x3 >
word basicTypeName< uint32x3 >()
Definition: types.hpp:75
triple.hpp
pFlow::oneU33
const uint32x3x3 oneU33(oneU3)
Definition: types.hpp:105
pFlow::basicTypeName< int8x3 >
word basicTypeName< int8x3 >()
Definition: types.hpp:60
typeInfo.hpp
pFlow::quadruple
Definition: quadruple.hpp:37
bTypesFunctions.hpp
pFlow::triple
Definition: triple.hpp:37
pFlow::basicTypeName< int16x3 >
word basicTypeName< int16x3 >()
Definition: types.hpp:63
pFlow::basicTypeName< realx3x3 >
word basicTypeName< realx3x3 >()
Definition: types.hpp:90
pFlow::basicTypeName< uint32x3x3 >
word basicTypeName< uint32x3x3 >()
Definition: types.hpp:87
pFlow::basicTypeName< labelx3 >
word basicTypeName< labelx3 >()
Definition: types.hpp:78