10 #ifndef LIBOPENMPT_STREAM_CALLBACKS_BUFFER_H
11 #define LIBOPENMPT_STREAM_CALLBACKS_BUFFER_H
51 size_t valid_bytes = 0;
59 endpos = (uint64_t)endpos + (uint64_t)offset;
60 if ( ( offset > 0 ) && !( (uint64_t)endpos > (uint64_t)begpos ) ) {
72 bytes = bytes - (size_t)( endpos - s->
file_size );
73 endpos = endpos - ( endpos - s->
file_size );
75 memset( dst, 0, bytes );
81 valid_bytes = bytes - (size_t)( endpos - s->
prefix_size );
111 pos = (uint64_t)pos + (uint64_t)offset;
112 if ( ( offset > 0 ) && !( (uint64_t)pos > (uint64_t)oldpos ) ) {
116 if ( ( offset < 0 ) && !( (uint64_t)pos < (uint64_t)oldpos ) ) {
132 pos = (uint64_t)pos + (uint64_t)offset;
133 if ( ( offset < 0 ) && !( (uint64_t)pos < (uint64_t)oldpos ) ) {
162 #define openmpt_stream_buffer_init_prefix_only( buffer_, prefix_data_, prefix_size_, file_size_ ) do { \
163 openmpt_stream_buffer_init( (buffer_), (prefix_data_), (file_size_) ); \
164 (buffer_)->prefix_size = (prefix_size_); \
167 #define openmpt_stream_buffer_overflowed( buffer_ ) ( (buffer_)->overflow )