mirror of
https://github.com/DarkStore-3DS/Project_CTR.git
synced 2026-07-04 08:49:03 +00:00
22 lines
525 B
C++
22 lines
525 B
C++
#include <tc/io/StreamUtil.h>
|
|
|
|
int64_t tc::io::StreamUtil::getSeekResult(int64_t offset, tc::io::SeekOrigin origin, int64_t current_position, int64_t stream_length)
|
|
{
|
|
int64_t new_pos = 0;
|
|
switch (origin)
|
|
{
|
|
case (SeekOrigin::Begin):
|
|
new_pos = offset;
|
|
break;
|
|
case (SeekOrigin::Current):
|
|
new_pos = current_position + offset;
|
|
break;
|
|
case (SeekOrigin::End):
|
|
new_pos = stream_length + offset;
|
|
break;
|
|
default:
|
|
throw tc::ArgumentOutOfRangeException("Illegal value for origin.");
|
|
}
|
|
|
|
return new_pos;
|
|
} |