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

Function TEST

plugins/tiledb/test/TileDBWriterTimeDimTest.cpp:457–544  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

455}
456
457TEST(AdditionalTileDBWriterTimeDimTest, domain_from_stats)
458{
459
460 // Create buffers with the data.
461 std::vector<double> xData{0.0, 3.0};
462 std::vector<double> yData{4.0, 9.0};
463 std::vector<double> zData{-13.0, -10.0};
464 std::vector<double> timeData{100.0, 300.0};
465 std::vector<uint16_t> intensityData{1, 1};
466
467 // Clean-up previous tests.
468 std::string uri = Support::temppath("tiledb_domain_with_time_from_stats");
469 if (FileUtils::directoryExists(uri))
470 FileUtils::deleteDirectory(uri);
471
472 // Write to TileDB.
473 // Create point table with dimension registry.
474 PointTable table;
475 table.layout()->registerDims({Dimension::Id::X, Dimension::Id::Y,
476 Dimension::Id::Z, Dimension::Id::Intensity,
477 Dimension::Id::GpsTime});
478
479 // Create buffer reader with data.
480 BufferReader bufferReader;
481 PointViewPtr view(new PointView(table));
482 for (uint32_t index = 0; index < 2; ++index)
483 {
484 view->setField(Dimension::Id::X, index, xData[index]);
485 view->setField(Dimension::Id::Y, index, yData[index]);
486 view->setField(Dimension::Id::Z, index, zData[index]);
487 view->setField(Dimension::Id::GpsTime, index, timeData[index]);
488 view->setField(Dimension::Id::Intensity, index, intensityData[index]);
489 }
490 bufferReader.addView(view);
491
492 // Create the stage factory.
493 StageFactory factory;
494
495 // Create stats filter and link it to the faux reader.
496 Stage* stats_filter = factory.createStage("filters.stats");
497 stats_filter->setInput(bufferReader);
498
499 // Create TileDB writer, set options, and write data.
500 Stage* writer = factory.createStage("writers.tiledb");
501
502 // Set TileDB writer options.
503 Options writerOptions;
504 writerOptions.add("filename", uri);
505 writerOptions.add("use_time_dim", true);
506 writer->setOptions(writerOptions);
507 writer->setInput(*stats_filter);
508
509 // Submit.
510 writer->prepare(table);
511 writer->execute(table);
512
513 // Check schema.
514 {

Callers

nothing calls this directly

Calls 11

temppathFunction · 0.85
directoryExistsFunction · 0.85
deleteDirectoryFunction · 0.85
registerDimsMethod · 0.80
createStageMethod · 0.80
setOptionsMethod · 0.80
ndimMethod · 0.80
setFieldMethod · 0.45
addMethod · 0.45
prepareMethod · 0.45
executeMethod · 0.45

Tested by

no test coverage detected