From 6e35318fa5b3d5630aa8e5c8ac019d62a47b8948 Mon Sep 17 00:00:00 2001 From: nvalimak Date: Tue, 19 May 2009 13:14:45 +0000 Subject: [PATCH] Buffer size can be defined git-svn-id: svn+ssh://idea.nguyen.vg/svn/sxsi/trunk/TextCollection@404 3cdefd35-fc62-479d-8e8d-bae585ffb9ca --- TextCollectionBuilder.cpp | 7 +++---- TextCollectionBuilder.h | 5 ++++- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/TextCollectionBuilder.cpp b/TextCollectionBuilder.cpp index ff10f7b..1d49f39 100644 --- a/TextCollectionBuilder.cpp +++ b/TextCollectionBuilder.cpp @@ -33,9 +33,8 @@ struct TCBuilderRep /** * Init text collection * - * See CSA.h for more details. */ -TextCollectionBuilder::TextCollectionBuilder(unsigned samplerate) +TextCollectionBuilder::TextCollectionBuilder(unsigned samplerate, ulong estimatedInputLength) : p_(new struct TCBuilderRep()) { p_->n = 0; @@ -43,8 +42,8 @@ TextCollectionBuilder::TextCollectionBuilder(unsigned samplerate) p_->numberOfTexts = 0; p_->numberOfSamples = 0; - // Current params: 8 bytes, 15 MB, no samples - p_->sa = new CSA::RLCSABuilder(8, 0, 15 * 1024 * 1024); + // Current params: 8 bytes, no samples, buffer size n/10 bytes. + p_->sa = new CSA::RLCSABuilder(8, 0, estimatedInputLength/10); assert(p_->sa->isOk()); #ifdef TCB_TEST_BWT diff --git a/TextCollectionBuilder.h b/TextCollectionBuilder.h index 13734d2..9bac6f9 100644 --- a/TextCollectionBuilder.h +++ b/TextCollectionBuilder.h @@ -33,6 +33,8 @@ // Default samplerate for suffix array samples #define TEXTCOLLECTION_DEFAULT_SAMPLERATE 64 +// Default input length, used to calculate the buffer size. +#define TEXTCOLLECTION_DEFAULT_INPUT_LENGTH (150 * 1024 * 1024) namespace SXSI @@ -45,7 +47,8 @@ namespace SXSI class TextCollectionBuilder { public: - explicit TextCollectionBuilder(unsigned samplerate = TEXTCOLLECTION_DEFAULT_SAMPLERATE); + explicit TextCollectionBuilder(unsigned samplerate = TEXTCOLLECTION_DEFAULT_SAMPLERATE, + ulong estimatedInputLength = TEXTCOLLECTION_DEFAULT_INPUT_LENGTH); ~TextCollectionBuilder(); /** -- 2.17.1