// Move the chunk cursor to the next chunk, randomizing more sequences if necessary. void SequenceRandomizer::MoveChunkCursor() { m_currentChunkCursor++; RandomizeNextChunkIfNeeded(); // Release chunks that are not needed anymore. ReleaseChunks(); }
// Resets the current sweep according to the randomization seed provided. void SequenceRandomizer::Reset(size_t randSeed) { m_rng.seed((unsigned long)randSeed); m_sequenceWindow.clear(); m_randomizedChunkInfo.clear(); m_chunkWindowBegin = 0; m_randomizedWindowEnd = 0; m_randomizationCursor = 0; m_chunkWindowEnd = 0; m_currentChunkCursor = 0; m_currentSequenceCursor = 0; m_currentSampleCursor = 0; // Prepare the chunk for reading RandomizeNextChunkIfNeeded(); }
// Move the chunk cursor to the next chunk, randomizing more sequences if necessary. void SequenceRandomizer::MoveChunkCursor() { m_currentChunkCursor++; RandomizeNextChunkIfNeeded(); }