Chris@49
|
1 // Copyright (C) 2009-2010 NICTA (www.nicta.com.au)
|
Chris@49
|
2 // Copyright (C) 2009-2010 Conrad Sanderson
|
Chris@49
|
3 //
|
Chris@49
|
4 // This Source Code Form is subject to the terms of the Mozilla Public
|
Chris@49
|
5 // License, v. 2.0. If a copy of the MPL was not distributed with this
|
Chris@49
|
6 // file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
Chris@49
|
7
|
Chris@49
|
8
|
Chris@49
|
9 //! \addtogroup op_relational
|
Chris@49
|
10 //! @{
|
Chris@49
|
11
|
Chris@49
|
12
|
Chris@49
|
13
|
Chris@49
|
14 class op_rel_lt_pre
|
Chris@49
|
15 {
|
Chris@49
|
16 public:
|
Chris@49
|
17
|
Chris@49
|
18 template<typename T1>
|
Chris@49
|
19 inline static void apply(Mat<uword>& out, const mtOp<uword, T1, op_rel_lt_pre>& X);
|
Chris@49
|
20
|
Chris@49
|
21 template<typename T1>
|
Chris@49
|
22 inline static void apply(Cube<uword>& out, const mtOpCube<uword, T1, op_rel_lt_pre>& X);
|
Chris@49
|
23 };
|
Chris@49
|
24
|
Chris@49
|
25
|
Chris@49
|
26
|
Chris@49
|
27 class op_rel_lt_post
|
Chris@49
|
28 {
|
Chris@49
|
29 public:
|
Chris@49
|
30
|
Chris@49
|
31 template<typename T1>
|
Chris@49
|
32 inline static void apply(Mat<uword>& out, const mtOp<uword, T1, op_rel_lt_post>& X);
|
Chris@49
|
33
|
Chris@49
|
34 template<typename T1>
|
Chris@49
|
35 inline static void apply(Cube<uword>& out, const mtOpCube<uword, T1, op_rel_lt_post>& X);
|
Chris@49
|
36 };
|
Chris@49
|
37
|
Chris@49
|
38
|
Chris@49
|
39
|
Chris@49
|
40 class op_rel_gt_pre
|
Chris@49
|
41 {
|
Chris@49
|
42 public:
|
Chris@49
|
43
|
Chris@49
|
44 template<typename T1>
|
Chris@49
|
45 inline static void apply(Mat<uword>& out, const mtOp<uword, T1, op_rel_gt_pre>& X);
|
Chris@49
|
46
|
Chris@49
|
47 template<typename T1>
|
Chris@49
|
48 inline static void apply(Cube<uword>& out, const mtOpCube<uword, T1, op_rel_gt_pre>& X);
|
Chris@49
|
49 };
|
Chris@49
|
50
|
Chris@49
|
51
|
Chris@49
|
52
|
Chris@49
|
53 class op_rel_gt_post
|
Chris@49
|
54 {
|
Chris@49
|
55 public:
|
Chris@49
|
56
|
Chris@49
|
57 template<typename T1>
|
Chris@49
|
58 inline static void apply(Mat<uword>& out, const mtOp<uword, T1, op_rel_gt_post>& X);
|
Chris@49
|
59
|
Chris@49
|
60 template<typename T1>
|
Chris@49
|
61 inline static void apply(Cube<uword>& out, const mtOpCube<uword, T1, op_rel_gt_post>& X);
|
Chris@49
|
62 };
|
Chris@49
|
63
|
Chris@49
|
64
|
Chris@49
|
65
|
Chris@49
|
66 class op_rel_lteq_pre
|
Chris@49
|
67 {
|
Chris@49
|
68 public:
|
Chris@49
|
69
|
Chris@49
|
70 template<typename T1>
|
Chris@49
|
71 inline static void apply(Mat<uword>& out, const mtOp<uword, T1, op_rel_lteq_pre>& X);
|
Chris@49
|
72
|
Chris@49
|
73 template<typename T1>
|
Chris@49
|
74 inline static void apply(Cube<uword>& out, const mtOpCube<uword, T1, op_rel_lteq_pre>& X);
|
Chris@49
|
75 };
|
Chris@49
|
76
|
Chris@49
|
77
|
Chris@49
|
78
|
Chris@49
|
79 class op_rel_lteq_post
|
Chris@49
|
80 {
|
Chris@49
|
81 public:
|
Chris@49
|
82
|
Chris@49
|
83 template<typename T1>
|
Chris@49
|
84 inline static void apply(Mat<uword>& out, const mtOp<uword, T1, op_rel_lteq_post>& X);
|
Chris@49
|
85
|
Chris@49
|
86 template<typename T1>
|
Chris@49
|
87 inline static void apply(Cube<uword>& out, const mtOpCube<uword, T1, op_rel_lteq_post>& X);
|
Chris@49
|
88 };
|
Chris@49
|
89
|
Chris@49
|
90
|
Chris@49
|
91
|
Chris@49
|
92 class op_rel_gteq_pre
|
Chris@49
|
93 {
|
Chris@49
|
94 public:
|
Chris@49
|
95
|
Chris@49
|
96 template<typename T1>
|
Chris@49
|
97 inline static void apply(Mat<uword>& out, const mtOp<uword, T1, op_rel_gteq_pre>& X);
|
Chris@49
|
98
|
Chris@49
|
99 template<typename T1>
|
Chris@49
|
100 inline static void apply(Cube<uword>& out, const mtOpCube<uword, T1, op_rel_gteq_pre>& X);
|
Chris@49
|
101 };
|
Chris@49
|
102
|
Chris@49
|
103
|
Chris@49
|
104
|
Chris@49
|
105 class op_rel_gteq_post
|
Chris@49
|
106 {
|
Chris@49
|
107 public:
|
Chris@49
|
108
|
Chris@49
|
109 template<typename T1>
|
Chris@49
|
110 inline static void apply(Mat<uword>& out, const mtOp<uword, T1, op_rel_gteq_post>& X);
|
Chris@49
|
111
|
Chris@49
|
112 template<typename T1>
|
Chris@49
|
113 inline static void apply(Cube<uword>& out, const mtOpCube<uword, T1, op_rel_gteq_post>& X);
|
Chris@49
|
114 };
|
Chris@49
|
115
|
Chris@49
|
116
|
Chris@49
|
117
|
Chris@49
|
118 class op_rel_eq
|
Chris@49
|
119 {
|
Chris@49
|
120 public:
|
Chris@49
|
121
|
Chris@49
|
122 template<typename T1>
|
Chris@49
|
123 inline static void apply(Mat<uword>& out, const mtOp<uword, T1, op_rel_eq>& X);
|
Chris@49
|
124
|
Chris@49
|
125 template<typename T1>
|
Chris@49
|
126 inline static void apply(Cube<uword>& out, const mtOpCube<uword, T1, op_rel_eq>& X);
|
Chris@49
|
127 };
|
Chris@49
|
128
|
Chris@49
|
129
|
Chris@49
|
130
|
Chris@49
|
131 class op_rel_noteq
|
Chris@49
|
132 {
|
Chris@49
|
133 public:
|
Chris@49
|
134
|
Chris@49
|
135 template<typename T1>
|
Chris@49
|
136 inline static void apply(Mat<uword>& out, const mtOp<uword, T1, op_rel_noteq>& X);
|
Chris@49
|
137
|
Chris@49
|
138 template<typename T1>
|
Chris@49
|
139 inline static void apply(Cube<uword>& out, const mtOpCube<uword, T1, op_rel_noteq>& X);
|
Chris@49
|
140 };
|
Chris@49
|
141
|
Chris@49
|
142
|
Chris@49
|
143
|
Chris@49
|
144 //! @}
|