MCPcopy Create free account
hub / github.com/PDAL/PDAL / checkXYZ

Function checkXYZ

test/unit/Support.cpp:289–335  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

287}
288
289void checkXYZ(const std::string& file1, const std::string& file2)
290{
291 StageFactory f;
292
293 const std::string driver1 = f.inferReaderDriver(file1);
294 EXPECT_NE(driver1, "") << "Can't find driver";
295
296 const std::string driver2 = f.inferReaderDriver(file2);
297 EXPECT_NE(driver2, "") << "Can't find driver";
298
299 Stage *reader1 = f.createStage(driver1);
300 EXPECT_NE(reader1, (Stage *)NULL) << "Couldn't create stage";
301
302 Stage *reader2 = f.createStage(driver2);
303 EXPECT_NE(reader1, (Stage *)NULL) << "Couldn't create stage";
304
305 Options o1;
306 o1.add("filename", file1);
307 reader1->setOptions(o1);
308 PointTable t1;
309 reader1->prepare(t1);
310 PointViewSet s1 = reader1->execute(t1);
311 EXPECT_EQ(s1.size(), 1u);
312 PointViewPtr v1 = *s1.begin();
313
314 Options o2;
315 o2.add("filename", file2);
316 reader2->setOptions(o2);
317 PointTable t2;
318 reader2->prepare(t2);
319 PointViewSet s2 = reader2->execute(t2);
320 EXPECT_EQ(s2.size(), 1u);
321 PointViewPtr v2 = *s2.begin();
322
323 EXPECT_EQ(v1->size(), v2->size()) << "Files " << file1 << " and " <<
324 file2 << " have different point counts.";
325 for (PointId idx = 0; idx < v1->size(); ++idx)
326 {
327 using namespace Dimension;
328 ASSERT_DOUBLE_EQ(v1->getFieldAs<double>(Id::X, idx),
329 v2->getFieldAs<double>(Id::X, idx)) << "Index = " << idx;
330 ASSERT_DOUBLE_EQ(v1->getFieldAs<double>(Id::Y, idx),
331 v2->getFieldAs<double>(Id::Y, idx)) << "Index = " << idx;
332 ASSERT_DOUBLE_EQ(v1->getFieldAs<double>(Id::Z, idx),
333 v2->getFieldAs<double>(Id::Z, idx)) << "Index = " << idx;
334 }
335}
336
337
338void check_pN(const PointView& data, PointId index, double xref, double yref, double zref)

Callers 1

TESTFunction · 0.85

Calls 8

inferReaderDriverMethod · 0.80
createStageMethod · 0.80
setOptionsMethod · 0.80
addMethod · 0.45
prepareMethod · 0.45
executeMethod · 0.45
sizeMethod · 0.45
beginMethod · 0.45

Tested by 1

TESTFunction · 0.68