Home | History | Annotate | Download | only in Tremolo

Lines Matching refs:or

6  * Redistribution and use in source and binary forms, with or without
14 * in the documentation and/or other materials provided with the
18 * endorse or promote products derived from this software without
22 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
25 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
26 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
27 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
28 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
29 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
30 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
128 ogg_reference *or;
133 or=bs->unused_references;
134 bs->unused_references=or->next;
137 or=_ogg_malloc(sizeof(*or));
140 or->begin=0;
141 or->length=0;
142 or->next=0;
143 return or;
150 ogg_reference *or=_fetch_ref(bs);
151 or->buffer=ob;
152 return or;
156 static void ogg_buffer_realloc(ogg_reference *or,long bytes){
157 ogg_buffer *ob=or->buffer;
166 static void _ogg_buffer_mark_one(ogg_reference *or){
167 or->buffer->refcount++;
171 static void ogg_buffer_mark(ogg_reference *or){
172 while(or){
173 _ogg_buffer_mark_one(or);
174 or=or->next;
181 static ogg_reference *ogg_buffer_sub(ogg_reference *or,long length){
185 while(or && length){
186 ogg_reference *temp=_fetch_ref(or->buffer->ptr.owner);
192 head->buffer=or->buffer;
193 head->begin=or->begin;
195 if(head->length>or->length)
196 head->length=or->length;
199 or=or->next;
206 ogg_reference *ogg_buffer_dup(ogg_reference *or){
209 while(or){
210 ogg_reference *temp=_fetch_ref(or->buffer->ptr.owner);
216 head->buffer=or->buffer;
217 head->begin=or->begin;
218 head->length=or->length;
219 or=or->next;
228 split. If pos is at or past the end of the passed in segment,
237 ogg_reference *or=*tail;
239 while(or && pos>or->length){
240 pos-=or->length;
241 or=or->next;
244 if(!or || pos==0){
250 if(pos>=or->length){
251 /* exact split, or off the end? */
252 if(or->next){
255 *tail=or->next;
256 or->next=0;
260 /* off or at the end */
268 long beginB=or->begin+pos;
269 long lengthB=or->length-pos;
272 *tail=_fetch_ref(or->buffer->ptr.owner);
274 (*tail)->buffer=or->buffer;
277 (*tail)->next=or->next;
279 if(head && or==*head)*head=*tail;
282 or->next=0;
283 or->length=lengthA;
290 static void ogg_buffer_release_one(ogg_reference *or){
291 ogg_buffer *ob=or->buffer;
302 or->next=bs->unused_references;
303 bs->unused_references=or;
311 static void ogg_buffer_release(ogg_reference *or){
312 while(or){
313 ogg_reference *next=or->next;
314 ogg_buffer_release_one(or);
315 or=next;
319 static ogg_reference *ogg_buffer_pretruncate(ogg_reference *or,long pos){
321 while(or && pos>=or->length){
322 ogg_reference *next=or->next;
323 pos-=or->length;
324 ogg_buffer_release_one(or);
325 or=next;
327 if (or) {
328 or->begin+=pos;
329 or->length-=pos;
331 return or;
334 static ogg_reference *ogg_buffer_walk(ogg_reference *or){
335 if(!or)return NULL;
336 while(or->next){
337 or=or->next;
339 return(or);
375 static int oggbyte_init(oggbyte_buffer *b,ogg_reference *or){
377 if(or){
378 b->ref=b->baseref=or;
492 previous page, and spans to the next page (in the case of a three or
665 ogg_uint32_t _checksum(ogg_reference *or, int bytes);
667 static ogg_uint32_t _checksum(ogg_reference *or, int bytes){
671 while(or){
672 unsigned char *data=or->buffer->data+or->begin;
673 post=(bytes<or->length?bytes:or->length);
677 or=or->next;
734 /* D'oh. Mismatch! Corrupt page (or miscapture and not a page
808 _stream, _clear, _init, or _buffer */
935 if(os->pageno==-1) /* indicates seek or reset */