50 unsigned int nbok = 0;
53 trace.beginBlock(
"Testing simple TiledImage");
59 for (VImage::Iterator it =
image.begin(); it !=
image.end(); ++it)
62 trace.info() <<
"ORIGINAL image: " <<
image << endl;
65 typedef MyImageFactoryFromImage::OutputImage OutputImage;
66 MyImageFactoryFromImage imageFactoryFromImage(
image);
70 MyImageCacheReadPolicyFIFO imageCacheReadPolicyFIFO(imageFactoryFromImage, 2);
71 MyImageCacheWritePolicyWT imageCacheWritePolicyWT(imageFactoryFromImage);
75 MyTiledImage tiledImage(imageFactoryFromImage, imageCacheReadPolicyFIFO, imageCacheWritePolicyWT, 4);
77 typedef MyTiledImage::OutputImage OutputImage;
78 OutputImage::Value aValue;
80 trace.info() <<
"Read value for Point 4,2: " << tiledImage(
Z2i::Point(4,2)) << endl;
81 nbok += (tiledImage(
Z2i::Point(4,2)) == 20) ? 1 : 0;
84 trace.info() <<
"(" << nbok <<
"/" << nb <<
") " << endl;
86 trace.info() <<
"Read value for Point 10,6: " << tiledImage(
Z2i::Point(10,6)) << endl;
87 nbok += (tiledImage(
Z2i::Point(10,6)) == 90) ? 1 : 0;
90 trace.info() <<
"(" << nbok <<
"/" << nb <<
") " << endl;
92 aValue = 1; tiledImage.setValue(
Z2i::Point(11,7), aValue);
93 trace.info() <<
"Write value for Point 11,7: " << aValue << endl;
94 nbok += (tiledImage(
Z2i::Point(11,7)) == 1) ? 1 : 0;
97 trace.info() <<
"(" << nbok <<
"/" << nb <<
") " << endl;
99 trace.info() <<
"Read value for Point 2,3: " << tiledImage(
Z2i::Point(2,3)) << endl;
100 nbok += (tiledImage(
Z2i::Point(2,3)) == 34) ? 1 : 0;
103 trace.info() <<
"(" << nbok <<
"/" << nb <<
") " << endl;
105 trace.info() <<
"Read value for Point 16,1: " << tiledImage(
Z2i::Point(16,1)) << endl;
106 nbok += (tiledImage(
Z2i::Point(16,1)) == 16) ? 1 : 0;
109 trace.info() <<
"(" << nbok <<
"/" << nb <<
") " << endl;
111 aValue = 128; tiledImage.setValue(
Z2i::Point(16,1), aValue);
112 trace.info() <<
"Write value for Point 16,1: " << aValue << endl;
113 nbok += (tiledImage(
Z2i::Point(16,1)) == 128) ? 1 : 0;
116 trace.info() <<
"(" << nbok <<
"/" << nb <<
") " << endl;
122 trace.info() <<
"(" << nbok <<
"/" << nb <<
") " << endl;
131 unsigned int nbok = 0;
134 trace.beginBlock(
"Testing 3d TiledImage");
140 for (VImage::Iterator it =
image.begin(); it !=
image.end(); ++it)
143 trace.info() <<
"ORIGINAL image: " <<
image << endl;
146 typedef MyImageFactoryFromImage::OutputImage OutputImage;
147 MyImageFactoryFromImage imageFactoryFromImage(
image);
151 MyImageCacheReadPolicyFIFO imageCacheReadPolicyFIFO(imageFactoryFromImage, 2);
152 MyImageCacheWritePolicyWT imageCacheWritePolicyWT(imageFactoryFromImage);
156 MyTiledImage tiledImage(imageFactoryFromImage, imageCacheReadPolicyFIFO, imageCacheWritePolicyWT, 4);
158 typedef MyTiledImage::OutputImage OutputImage;
160 trace.info() <<
"Read value for Point 1,1,1: " << tiledImage(
Z3i::Point(1,1,1)) << endl;
161 nbok += (tiledImage(
Z3i::Point(1,1,1)) == 1) ? 1 : 0;
164 trace.info() <<
"(" << nbok <<
"/" << nb <<
") " << endl;
166 trace.info() <<
"Read value for Point 4,4,4: " << tiledImage(
Z3i::Point(4,4,4)) << endl;
167 nbok += (tiledImage(
Z3i::Point(4,4,4)) == 64) ? 1 : 0;
170 trace.info() <<
"(" << nbok <<
"/" << nb <<
") " << endl;
172 trace.info() <<
"Read value for Point 4,3,2: " << tiledImage(
Z3i::Point(4,3,2)) << endl;
173 nbok += (tiledImage(
Z3i::Point(4,3,2)) == 28) ? 1 : 0;
176 trace.info() <<
"(" << nbok <<
"/" << nb <<
") " << endl;
185 unsigned int nbok = 0;
188 trace.beginBlock(
"Testing iterators with TiledImage");
192 for (VImage::Iterator it =
image.begin(); it !=
image.end(); ++it)
194 trace.info() <<
"ORIGINAL image: " <<
image << endl;
196 typedef MyImageFactoryFromImage::OutputImage OutputImage;
197 MyImageFactoryFromImage imageFactoryFromImage(
image);
201 MyImageCacheReadPolicyFIFO imageCacheReadPolicyFIFO(imageFactoryFromImage, 2);
202 MyImageCacheWritePolicyWT imageCacheWritePolicyWT(imageFactoryFromImage);
206 MyTiledImage tiledImage(imageFactoryFromImage, imageCacheReadPolicyFIFO, imageCacheWritePolicyWT, 4);
213 typedef MyTiledImage::OutputIterator OutputIterator;
216 trace.info() <<
"Value at range begin (1) = "<< *itbegin << std::endl;
217 nbok += (*itbegin == 1) ? 1 : 0; nb++;
218 trace.info() <<
"(" << nbok <<
"/" << nb <<
") " << endl;
221 trace.info() <<
"Value at range begin from point (42) = "<< *itbegin2 << std::endl;
222 nbok += (*itbegin2 == 42) ? 1 : 0; nb++;
223 trace.info() <<
"(" << nbok <<
"/" << nb <<
") " << endl;
225 OutputIterator itbegino = tiledImage.range().begin();
226 trace.info() <<
"Value at range begin (1) = "<< *itbegino << std::endl;
227 nbok += (*itbegino == 1) ? 1 : 0; nb++;
228 trace.info() <<
"(" << nbok <<
"/" << nb <<
") " << endl;
231 trace.info() <<
"Value at range begin after writing (5) = "<< *itbegino << std::endl;
232 nbok += (*itbegino == 5) ? 1 : 0; nb++;
233 trace.info() <<
"(" << nbok <<
"/" << nb <<
") " << endl;
242 unsigned int nbok = 0;
245 trace.beginBlock(
"Testing range/constRange with TiledImage");
250 for (VImage::Iterator it =
image.begin(); it !=
image.end(); ++it)
253 trace.info() <<
"ORIGINAL image: " <<
image << endl;
256 typedef MyImageFactoryFromImage::OutputImage OutputImage;
257 MyImageFactoryFromImage imageFactoryFromImage(
image);
262 MyImageCacheReadPolicyFIFO imageCacheReadPolicyFIFO(imageFactoryFromImage, 2);
264 MyImageCacheWritePolicyWB imageCacheWritePolicyWB(imageFactoryFromImage);
268 MyTiledImage tiledImage(imageFactoryFromImage, imageCacheReadPolicyFIFO, imageCacheWritePolicyWB, 4);
271 const auto maximalValue = tiledImage.domain().size();
272 MyTiledImage::Range::OutputIterator it = tiledImage.range().outputIterator();
273 for (
size_t i = 0; i < maximalValue; ++i)
279 MyTiledImage::ConstRange r = tiledImage.constRange();
280 std::copy( r.begin(), r.end(), std::ostream_iterator<int>(cout,
", ") );
283 std::vector<int> to_vector(100);
284 std::copy(r.begin(), r.end(), to_vector.begin());
285 for (
int i = 0; i < 100; i++)
295 cout <<
"!ok -> " << to_vector[i] <<
", ";
304 std::copy( r.begin(
Z2i::Point(7,7)), r.end(), std::ostream_iterator<int>(cout,
", ") );
307 std::vector<int> to_vector2(28);
308 std::copy(r.begin(
Z2i::Point(7,7)), r.end(), to_vector2.begin());
309 for (
int i = 0; i < 28; i++)
311 if (to_vector2[i]==i+72)
319 cout <<
"!ok -> " << to_vector2[i] <<
", ";