#ifndef _TCImplementation_H_
#define _TCImplementation_H_
+
+#include "incbwt/bits/deltavector.h"
+
#include "BitRank.h"
#include "TextCollection.h"
#include "BlockArray.h"
#undef bitset
#undef bitget
+
#include "TextStorage.h"
+#include "ArrayDoc.h"
#include <set>
+#include <string>
namespace SXSI
{
*/
class TCImplementation : public SXSI::TextCollection {
public:
- TCImplementation(uchar *, ulong, unsigned, unsigned, ulong, ulong, char);
+ TCImplementation(uchar *, ulong, unsigned, unsigned, ulong, ulong,
+ CSA::DeltaVector &, const std::string &, char);
~TCImplementation();
bool EmptyText(DocId) const;
ulong maxTextLength;
// Array of document id's in the order of end-markers in BWT
- static_sequence *Doc;
+// static_sequence *Doc;
+ ArrayDoc *Doc;
// Text storage for fast extraction
TextStorage * textStorage;
// Following methods are not part of the public API
uchar * BWT(uchar *);
void makewavelet(uchar *);
- void maketables(ulong, char);
+ void maketables(ulong, char, CSA::DeltaVector &, const string &);
DocId DocIdAtTextPos(BlockArray*, TextPosition) const;
ulong Search(uchar const *, TextPosition, TextPosition *, TextPosition *) const;
ulong Search(uchar const *, TextPosition, TextPosition *, TextPosition *, DocId, DocId) const;