Loads more data after bufferPos if there is space, otherwise load before bufferPos, indicating data is wrapping around.
See Implementation
Loads more data after bufferPos if there is space, otherwise load before bufferPos, indicating data is wrapping around.