示例#1
0
blargg_err_t File_Reader::seek( BOOST::uint64_t n )
{
	assert( n >= 0 );
	
	if ( n == tell() )
		return blargg_ok;
	
	if ( n > size() )
		return blargg_err_file_eof;
	
	blargg_err_t err = seek_v( n );
	if ( !err )
		set_tell( n );
	
	return err;
}
示例#2
0
const char * File_Reader::seek( uint64_t n )
{
	if ( n < 0 )
		return blargg_err_caller;
	
	if ( n == tell() )
		return 0;
	
	if ( n > size() )
		return blargg_err_file_eof;
	
	const char * err = seek_v( n );
	if ( !err )
		set_tell( n );
	
	return err;
}
示例#3
0
foobar_File_Reader::foobar_File_Reader( const service_ptr_t<file> & p_file, abort_callback & p_abort ) : m_file( p_file ), m_abort( p_abort )
{
	set_size( p_file->get_size_ex( p_abort ) );
	set_tell( p_file->get_position( p_abort ) );
}