String prefix = ApplicationSetup.TERRIER_INDEX_PREFIX;
Index index = Index.createNewIndex(path, prefix);
DirectInvertedDocidOnlyOuptutStream dios = new DirectInvertedDocidOnlyOuptutStream(path + '/'+ prefix + ".direct.bf");
//FSArrayFile<BitIndexPointer>
DocumentIndexBuilder dib = new DocumentIndexBuilder(index, "document");
BitIndexPointer p;
for(int[] list : postings)
{
final int doclen = StaTools.sum(list);
p = dios.writePostings(new ArrayOfIdsIterablePosting(list));
DocumentIndexEntry die = new BasicDocumentIndexEntry(doclen, p);
dib.addEntryToBuffer(die);
}
dios.close();
dib.finishedCollections();
index.addIndexStructure(
"direct",
"org.terrier.structures.DirectIndex",
"org.terrier.structures.Index,java.lang.String,java.lang.Class",
"index,structureName,"+ BasicIterablePostingDocidOnly.class.getName());