Developer Documentation

VectorT.hh
1 /*===========================================================================*\
2 * *
3 * OpenFlipper *
4 * Copyright (c) 2001-2015, RWTH-Aachen University *
5 * Department of Computer Graphics and Multimedia *
6 * All rights reserved. *
7 * www.openflipper.org *
8 * *
9 *---------------------------------------------------------------------------*
10 * This file is part of OpenFlipper. *
11 *---------------------------------------------------------------------------*
12 * *
13 * Redistribution and use in source and binary forms, with or without *
14 * modification, are permitted provided that the following conditions *
15 * are met: *
16 * *
17 * 1. Redistributions of source code must retain the above copyright notice, *
18 * this list of conditions and the following disclaimer. *
19 * *
20 * 2. Redistributions in binary form must reproduce the above copyright *
21 * notice, this list of conditions and the following disclaimer in the *
22 * documentation and/or other materials provided with the distribution. *
23 * *
24 * 3. Neither the name of the copyright holder nor the names of its *
25 * contributors may be used to endorse or promote products derived from *
26 * this software without specific prior written permission. *
27 * *
28 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS *
29 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED *
30 * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A *
31 * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER *
32 * OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, *
33 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, *
34 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR *
35 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF *
36 * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING *
37 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS *
38 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. *
39 * *
40 \*===========================================================================*/
41
42
43
44
45
46 //=============================================================================
47 //
48 // CLASS VectorT
49 //
50 //=============================================================================
51
52
53 #ifndef ACG_VECTOR_HH
54 #define ACG_VECTOR_HH
55
56
57 //== INCLUDES =================================================================
58
59 #include <ACG/Config/ACGDefines.hh>
60 #include <OpenMesh/Core/Geometry/VectorT.hh>
61
62 //== NAMESPACES ===============================================================
63
64
65 namespace ACG {
66
67 //=============================================================================
68
69
70 using OpenMesh::VectorT;
71
73 typedef VectorT<signed char,1> Vec1c;
75 typedef VectorT<unsigned char,1> Vec1uc;
77 typedef VectorT<signed short int,1> Vec1s;
79 typedef VectorT<unsigned short int,1> Vec1us;
81 typedef VectorT<signed int,1> Vec1i;
83 typedef VectorT<unsigned int,1> Vec1ui;
85 typedef VectorT<float,1> Vec1f;
87 typedef VectorT<double,1> Vec1d;
88
90 typedef VectorT<signed char,2> Vec2c;
92 typedef VectorT<unsigned char,2> Vec2uc;
94 typedef VectorT<signed short int,2> Vec2s;
96 typedef VectorT<unsigned short int,2> Vec2us;
98 typedef VectorT<signed int,2> Vec2i;
100 typedef VectorT<unsigned int,2> Vec2ui;
102 typedef VectorT<float,2> Vec2f;
104 typedef VectorT<double,2> Vec2d;
105
107 typedef VectorT<signed char,3> Vec3c;
109 typedef VectorT<unsigned char,3> Vec3uc;
111 typedef VectorT<signed short int,3> Vec3s;
113 typedef VectorT<unsigned short int,3> Vec3us;
115 typedef VectorT<signed int,3> Vec3i;
117 typedef VectorT<unsigned int,3> Vec3ui;
119 typedef VectorT<float,3> Vec3f;
121 typedef VectorT<double,3> Vec3d;
123 typedef VectorT<bool,3> Vec3b;
124
126 typedef VectorT<signed char,4> Vec4c;
128 typedef VectorT<unsigned char,4> Vec4uc;
130 typedef VectorT<signed short int,4> Vec4s;
132 typedef VectorT<unsigned short int,4> Vec4us;
134 typedef VectorT<signed int,4> Vec4i;
136 typedef VectorT<unsigned int,4> Vec4ui;
138 typedef VectorT<float,4> Vec4f;
140 typedef VectorT<double,4> Vec4d;
141
143 typedef VectorT<signed char,6> Vec6c;
145 typedef VectorT<unsigned char,6> Vec6uc;
147 typedef VectorT<signed short int,6> Vec6s;
149 typedef VectorT<unsigned short int,6> Vec6us;
151 typedef VectorT<signed int,6> Vec6i;
153 typedef VectorT<unsigned int,6> Vec6ui;
155 typedef VectorT<float,6> Vec6f;
157 typedef VectorT<double,6> Vec6d;
158
159
160 //=============================================================================
161 } // namespace ACG
162 //=============================================================================
163 #endif // ACG_VECTOR_HH defined
164 //=============================================================================
ACG::Vec2i
VectorT< signed int, 2 > Vec2i
Definition: VectorT.hh:98
ACG::Vec2c
VectorT< signed char, 2 > Vec2c
Definition: VectorT.hh:90
ACG::Vec1ui
VectorT< unsigned int, 1 > Vec1ui
Definition: VectorT.hh:83
ACG::Vec1c
VectorT< signed char, 1 > Vec1c
Definition: VectorT.hh:73
ACG::Vec2f
VectorT< float, 2 > Vec2f
Definition: VectorT.hh:102
ACG
Namespace providing different geometric functions concerning angles.
Definition: BaseObjectData.hh:68
ACG::Vec4f
VectorT< float, 4 > Vec4f
Definition: VectorT.hh:138
ACG::Vec3us
VectorT< unsigned short int, 3 > Vec3us
Definition: VectorT.hh:113
ACG::Vec6c
VectorT< signed char, 6 > Vec6c
Definition: VectorT.hh:143
OpenMesh::VectorT
Definition: Vector11T.hh:83
ACG::Vec4ui
VectorT< unsigned int, 4 > Vec4ui
Definition: VectorT.hh:136
ACG::Vec6s
VectorT< signed short int, 6 > Vec6s
Definition: VectorT.hh:147
ACG::Vec4s
VectorT< signed short int, 4 > Vec4s
Definition: VectorT.hh:130
ACG::Vec3uc
VectorT< unsigned char, 3 > Vec3uc
Definition: VectorT.hh:109
ACG::Vec4c
VectorT< signed char, 4 > Vec4c
Definition: VectorT.hh:126
ACG::Vec2uc
VectorT< unsigned char, 2 > Vec2uc
Definition: VectorT.hh:92
ACG::Vec4i
VectorT< signed int, 4 > Vec4i
Definition: VectorT.hh:134
ACG::Vec3i
VectorT< signed int, 3 > Vec3i
Definition: VectorT.hh:115
ACG::Vec6f
VectorT< float, 6 > Vec6f
Definition: VectorT.hh:155
ACG::Vec1d
VectorT< double, 1 > Vec1d
Definition: VectorT.hh:87
ACG::Vec3f
VectorT< float, 3 > Vec3f
Definition: VectorT.hh:119
ACG::Vec1f
VectorT< float, 1 > Vec1f
Definition: VectorT.hh:85
ACG::Vec6uc
VectorT< unsigned char, 6 > Vec6uc
Definition: VectorT.hh:145
ACG::Vec6us
VectorT< unsigned short int, 6 > Vec6us
Definition: VectorT.hh:149
ACG::Vec2ui
VectorT< unsigned int, 2 > Vec2ui
Definition: VectorT.hh:100
ACG::Vec1s
VectorT< signed short int, 1 > Vec1s
Definition: VectorT.hh:77
ACG::Vec1uc
VectorT< unsigned char, 1 > Vec1uc
Definition: VectorT.hh:75
ACG::Vec6ui
VectorT< unsigned int, 6 > Vec6ui
Definition: VectorT.hh:153
ACG::Vec2us
VectorT< unsigned short int, 2 > Vec2us
Definition: VectorT.hh:96
ACG::Vec6d
VectorT< double, 6 > Vec6d
Definition: VectorT.hh:157
ACG::Vec3c
VectorT< signed char, 3 > Vec3c
Definition: VectorT.hh:107
ACG::Vec6i
VectorT< signed int, 6 > Vec6i
Definition: VectorT.hh:151
ACG::Vec4us
VectorT< unsigned short int, 4 > Vec4us
Definition: VectorT.hh:132
ACG::Vec1i
VectorT< signed int, 1 > Vec1i
Definition: VectorT.hh:81
VectorT< signed int, 4 >
ACG::Vec3ui
VectorT< unsigned int, 3 > Vec3ui
Definition: VectorT.hh:117
ACG::Vec2s
VectorT< signed short int, 2 > Vec2s
Definition: VectorT.hh:94
ACG::Vec3b
VectorT< bool, 3 > Vec3b
Definition: VectorT.hh:123
ACG::Vec1us
VectorT< unsigned short int, 1 > Vec1us
Definition: VectorT.hh:79
ACG::Vec3s
VectorT< signed short int, 3 > Vec3s
Definition: VectorT.hh:111
ACG::Vec2d
VectorT< double, 2 > Vec2d
Definition: VectorT.hh:104
ACG::Vec4uc
VectorT< unsigned char, 4 > Vec4uc
Definition: VectorT.hh:128
ACG::Vec4d
VectorT< double, 4 > Vec4d
Definition: VectorT.hh:140
ACG::Vec3d
VectorT< double, 3 > Vec3d
Definition: VectorT.hh:121