示例#1
0
	VectorHandlePtr newPagedHandle(int64_t index, ImmutableTreeVector<int64_t> pageSizes)
		{
		BigVectorPageLayout layout = mBigVecTestFixture.getLayout(pageSizes);

		mPagedHandles->registerNewLayout(layout);

		VectorHandle* result = memoryPool.construct<VectorHandle>(
			layout.identity(),
			Fora::PageletTreePtr(),
			(ForaValueArray*)0,
			&memoryPool,
			hash_type(index)
			);

		//result->associatePagedValues(mPagedHandles->getHandle(layout.identity()));

		return result;
		}
示例#2
0
VectorRecord VectorRecord::createVectorForEntirePageLayout(
									BigVectorPageLayout layout,
									Fora::Interpreter::ExecutionContext* withinThisContext
									)
	{
	MemoryPool* pool = (
		withinThisContext ?
			withinThisContext->getMemoryPool()
		:	MemoryPool::getFreeStorePool()
		);

	if (withinThisContext)
		withinThisContext->getVDM().getBigVectorLayouts()->registerNewLayout(layout);

	return VectorRecord(
		pool->construct<VectorHandle>(
			layout.identity(),
			Fora::PageletTreePtr(),
			(ForaValueArray*)0,
			pool,
			RandomHashGenerator::singleton().generateRandomHash()
			)
		);
	}