本文整理汇总了C++中ProjectionScan::setProducesPositions方法的典型用法代码示例。如果您正苦于以下问题:C++ ProjectionScan::setProducesPositions方法的具体用法?C++ ProjectionScan::setProducesPositions怎么用?C++ ProjectionScan::setProducesPositions使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ProjectionScan
的用法示例。
在下文中一共展示了ProjectionScan::setProducesPositions方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1:
TEST_F(SelectTests, simple_projection_with_position) {
auto t = Loader::shortcuts::load("test/lin_xxs.tbl");
ProjectionScan gs;
gs.setProducesPositions(true);
gs.addInput(t);
gs.addField(0);
const auto& result = gs.execute()->getResultTable();
const auto& reference = Loader::shortcuts::load("test/reference/simple_projection.tbl");
ASSERT_TRUE(result->contentEquals(reference));
}
示例2: BenchmarkSetUp
void BenchmarkSetUp() {
ps = new ProjectionScan();
ps->setEvent("NO_PAPI");
sm = StorageManager::getInstance();
t = sm->getTable("district");
ps->setProducesPositions(true);
ps->addInput(t);
ps->addField(0);
ps->addField(1);
}
示例3: ms
TEST_F(SelectTests, simple_projection_with_position_all_mat) {
auto t = Loader::shortcuts::load("test/lin_xxxs.tbl");
ProjectionScan gs;
gs.setProducesPositions(true);
gs.addInput(t);
gs.addField(0);
gs.addField(1);
auto result = gs.execute()->getResultTable();
MaterializingScan ms(false);
ms.addInput(result);
const auto& result2 = ms.execute()->getResultTable();
const auto& reference = Loader::shortcuts::load("test/lin_xxxs.tbl");
ASSERT_TRUE(result2->contentEquals(reference));
}
示例4:
TEST_F(MaterializingScanTests, basic_materializing_scan_test) {
auto t = io::Loader::shortcuts::load("test/lin_xxs.tbl");
auto no_p = (storage::PointerCalculator*) nullptr;
ProjectionScan ps;
ps.addInput(t);
ps.addField(0);
ps.setProducesPositions(true);
ps.execute();
const auto &t2 = ps.getResultTable();
ASSERT_NE(no_p, dynamic_cast<const storage::PointerCalculator*>(t2.get()));
MaterializingScan ms;
ms.addInput(t2);
ms.addField(0);
ms.execute();
const auto &result = ms.getResultTable();
ASSERT_EQ(no_p, dynamic_cast<const storage::PointerCalculator*>(result.get()));
ASSERT_EQ(100u, result->size());
ASSERT_EQ(1u, result->columnCount());
}