Changeset 1505:06a3687a4ce8 in roaraudio for libroar/vio.c
- Timestamp:
- 04/01/09 17:55:36 (15 years ago)
- Branch:
- default
- Phase:
- public
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
libroar/vio.c
r1474 r1505 57 57 calls->nonblock = roar_vio_basic_nonblock; 58 58 calls->sync = roar_vio_basic_sync; 59 calls->ctl = roar_vio_basic_ctl; 59 60 calls->close = roar_vio_basic_close; 60 61 … … 380 381 return 0; 381 382 #endif 383 } 384 385 int roar_vio_basic_ctl (struct roar_vio_calls * vio, int cmd, void * data) { 386 387 if ( vio == NULL || cmd == -1 ) 388 return -1; 389 390 switch (cmd) { 391 case ROAR_VIO_CTL_GET_FH: 392 case ROAR_VIO_CTL_GET_READ_FH: 393 case ROAR_VIO_CTL_GET_WRITE_FH: 394 *(int*)data = roar_vio_get_fh(vio); 395 return 0; 396 break; 397 } 398 399 return -1; 382 400 } 383 401 … … 441 459 442 460 int roar_vio_pass_ctl (struct roar_vio_calls * vio, int cmd, void * data) { 461 if (vio == NULL || cmd == -1) 462 return -1; 463 464 switch (cmd) { 465 case ROAR_VIO_CTL_GET_NEXT: 466 *(struct roar_vio_calls **)data = vio->inst; 467 return 0; 468 break; 469 case ROAR_VIO_CTL_SET_NEXT: 470 vio->inst = *(struct roar_vio_calls **)data; 471 return 0; 472 break; 473 } 474 443 475 return roar_vio_ctl((struct roar_vio_calls *) vio->inst, cmd, data); 444 476 } … … 538 570 } 539 571 572 int roar_vio_stdio_ctl (struct roar_vio_calls * vio, int cmd, void * data) { 573 574 if ( vio == NULL || cmd == -1 ) 575 return -1; 576 577 switch (cmd) { 578 case ROAR_VIO_CTL_GET_FH: 579 case ROAR_VIO_CTL_GET_READ_FH: 580 case ROAR_VIO_CTL_GET_WRITE_FH: 581 *(int*)data = fileno((FILE*)(vio->inst)); 582 return 0; 583 break; 584 } 585 586 return -1; 587 } 588 540 589 int roar_vio_stdio_close (struct roar_vio_calls * vio) { 541 590 return fclose((FILE*)(vio->inst));
Note: See TracChangeset
for help on using the changeset viewer.