/**
  * Creates a the stream manager
  *
  * @param dir Directory containing sequence data
  * @param numbersequences Number of sequences in directory
  * @param indexFile Name of file containing index
  * @param dataPrefix Filename prefix for data
  * @param pointerPrefix Filename prefix for pointers
  * @param dataIndexVersion the version with which to interpret the data
  * @param opener file opener implementation
  * @throws IOException If an I/O Error occurs
  */
 AbstractStreamManager(
     final File dir,
     final long numbersequences,
     final String indexFile,
     final String dataPrefix,
     final String pointerPrefix,
     long dataIndexVersion,
     DataFileOpener opener)
     throws IOException {
   mDir = dir;
   mNumberSequences = numbersequences;
   mIndexFile = indexFile;
   mDataFilePrefix = dataPrefix;
   loadIndex(dataIndexVersion);
   mData = new DataRollingFile(mDir, dataPrefix, mIndex.numberEntries(), mIndex, opener);
   mPointers = new RollingFile(mDir, pointerPrefix, mIndex.numberEntries());
 }