Changeset 2734:8fae5b5a4501 in roaraudio
- Timestamp:
- 09/20/09 22:47:55 (15 years ago)
- Branch:
- default
- Phase:
- public
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
roard/streams.c
r2730 r2734 25 25 #include "roard.h" 26 26 27 #define _CHECK_SID_RET(id,ret) if ( (id) < 0 || (id) > ROAR_STREAMS_MAX || g_streams[(id)] == NULL ) return (ret) 28 #define _CHECK_SID(id) _CHECK_SID_RET((id), -1) 29 27 30 int streams_thru_num = 0; 28 31 int streams_recsource_id = -1; … … 138 141 int i; 139 142 int client; 143 144 _CHECK_SID(id); 140 145 141 146 if ( (s = g_streams[id]) == NULL ) … … 257 262 258 263 int streams_set_client (int id, int client) { 259 if ( g_streams[id] == NULL ) 260 return -1;264 265 _CHECK_SID(id); 261 266 262 267 ROAR_DBG("streams_set_client(id=%i): g_streams[id]->id=%i", id, ROAR_STREAM(g_streams[id])->id); … … 267 272 268 273 int streams_get_client (int id) { 269 if ( g_streams[id] == NULL ) 270 return -1; 274 _CHECK_SID(id); 271 275 272 276 return g_streams[id]->client; … … 275 279 int streams_set_dir (int id, int dir, int defaults) { 276 280 struct roar_stream_server * ss; 281 282 _CHECK_SID(id); 277 283 278 284 if ( (ss = g_streams[id]) == NULL ) … … 307 313 struct roar_stream_server * ss; 308 314 315 _CHECK_SID(id); 316 309 317 if ( (ss = g_streams[id]) == NULL ) 310 318 return -1; … … 315 323 int streams_get_subsys (int id) { 316 324 struct roar_stream_server * ss; 325 326 _CHECK_SID(id); 317 327 318 328 if ( (ss = g_streams[id]) == NULL ) … … 405 415 int dir; 406 416 int nonblock = 1; 417 418 _CHECK_SID(id); 407 419 408 420 if ( (s = ROAR_STREAM(ss = g_streams[id])) == NULL ) … … 488 500 489 501 int streams_get_fh (int id) { 490 if ( id < 0 ) 491 return -1; 492 493 if ( g_streams[id] == NULL ) 494 return -1; 502 _CHECK_SID(id); 495 503 496 504 return ROAR_STREAM(g_streams[id])->fh; … … 501 509 struct roar_stream * s; 502 510 511 _CHECK_SID(id); 512 503 513 if ( (s = ROAR_STREAM(ss = g_streams[id])) == NULL ) 504 514 return -1; … … 510 520 511 521 int streams_get (int id, struct roar_stream_server ** stream) { 512 if ( g_streams[id] == NULL ) 513 return -1; 522 _CHECK_SID(id); 514 523 515 524 *stream = g_streams[id]; … … 519 528 520 529 int streams_set_socktype (int id, int socktype) { 521 if ( g_streams[id] == NULL ) 522 return -1; 530 _CHECK_SID(id); 523 531 524 532 g_streams[id]->socktype = socktype; … … 528 536 529 537 int streams_get_socktype (int id) { 530 if ( g_streams[id] == NULL ) 531 return -1; 538 _CHECK_SID(id); 532 539 533 540 return g_streams[id]->socktype; … … 535 542 536 543 int streams_set_primary (int id, int prim) { 537 if ( g_streams[id] == NULL ) 538 return -1; 544 _CHECK_SID(id); 539 545 540 546 g_streams[id]->primary = prim; … … 549 555 int streams_set_sync (int id, int sync) { 550 556 int fh = streams_get_fh(id); 557 558 _CHECK_SID(id); 551 559 552 560 if ( fh != -1 ) { … … 567 575 int use = !reset; 568 576 569 if ( g_streams[id] == NULL ) 570 return -1; 577 _CHECK_SID(id); 571 578 572 579 return roar_vio_ctl(&(g_streams[id]->vio), ROAR_VIO_CTL_SET_UMMAP, &use); … … 576 583 int parent; 577 584 578 if ( g_streams[id] == NULL ) 579 return -1; 585 _CHECK_SID(id); 580 586 581 587 if ( flag & ROAR_FLAG_MMAP ) … … 647 653 648 654 int streams_set_rawflag (int id, int flag) { 649 if ( id == -1 ) 650 return -1; 651 652 if ( g_streams[id] == NULL ) 653 return -1; 655 _CHECK_SID(id); 654 656 655 657 g_streams[id]->flags |= flag; … … 659 661 660 662 int streams_reset_flag (int id, int flag) { 661 if ( g_streams[id] == NULL ) 662 return -1; 663 _CHECK_SID(id); 663 664 664 665 if ( flag & ROAR_FLAG_RECSOURCE ) … … 692 693 693 694 int streams_get_flag (int id, int flag) { 694 if ( g_streams[id] == NULL ) 695 return -1; 695 _CHECK_SID(id); 696 696 697 697 return g_streams[id]->flags & flag ? 1 : 0; … … 701 701 char * str; 702 702 703 if ( g_streams[id] == NULL ) 704 return -1; 703 _CHECK_SID(id); 705 704 706 705 if ( (str = strdup(name)) == NULL ) … … 716 715 717 716 char * streams_get_name (int id) { 718 if ( g_streams[id] == NULL ) 719 return NULL; 717 _CHECK_SID_RET(id, NULL); 720 718 721 719 return g_streams[id]->name; … … 729 727 uint_least32_t t[1]; 730 728 uint64_t tmp; 729 730 _CHECK_SID(id); 731 731 732 732 if ( (s = ROAR_STREAM(ss = g_streams[id])) == NULL ) … … 763 763 int subsys; 764 764 765 _CHECK_SID(id); 766 765 767 if ( (ss = g_streams[id]) == NULL ) 766 768 return -1; … … 799 801 int_least32_t comp; 800 802 803 _CHECK_SID(id); 804 801 805 if ( (ss = g_streams[id]) == NULL ) 802 806 return -1; … … 824 828 825 829 int streams_get_outputbuffer (int id, void ** buffer, size_t size) { 826 if ( g_streams[id] == NULL ) 827 return -1; 830 _CHECK_SID(id); 828 831 829 832 // output buffer size does never change. … … 857 860 struct roar_stream_server * ss; 858 861 862 _CHECK_SID(id); 863 859 864 if ( (s = ROAR_STREAM(ss = g_streams[id])) == NULL ) 860 865 return -1; … … 1030 1035 ROAR_DBG("stream_add_buffer(id=%i, buf=%p) = ?", id, buf); 1031 1036 1032 if ( g_streams[id] == NULL ) 1033 return -1; 1037 _CHECK_SID(id); 1034 1038 1035 1039 if ( g_streams[id]->buffer == NULL ) { … … 1044 1048 1045 1049 int stream_shift_out_buffer (int id, void * data, size_t * len) { 1046 if ( g_streams[id] == NULL ) 1047 return -1; 1050 _CHECK_SID(id); 1048 1051 1049 1052 if ( g_streams[id]->buffer == NULL ) … … 1056 1059 struct roar_buffer * next; 1057 1060 1058 if ( g_streams[id] == NULL ) 1059 return -1; 1061 _CHECK_SID(id); 1060 1062 1061 1063 if ( g_streams[id]->buffer == NULL ) { … … 1072 1074 } 1073 1075 int stream_unshift_buffer (int id, struct roar_buffer * buf) { 1074 if ( g_streams[id] == NULL ) 1075 return -1; 1076 _CHECK_SID(id); 1076 1077 1077 1078 if ( g_streams[id]->buffer == NULL ) { … … 1094 1095 void * bufdata; 1095 1096 int ret; 1097 1098 _CHECK_SID(id); 1096 1099 1097 1100 if ( (ss = g_streams[id]) == NULL ) … … 1145 1148 register struct roar_stream_server * ss; 1146 1149 1150 _CHECK_SID(id); 1151 1147 1152 if ( (ss = g_streams[id]) == NULL ) 1148 1153 return -1; … … 1166 1171 // char tmp; 1167 1172 1168 if ( g_streams[id] == NULL ) 1169 return -1; 1173 _CHECK_SID(id); 1170 1174 1171 1175 ROAR_DBG("streams_check(id=%i) = ?", id); … … 1321 1325 ssize_t ret; 1322 1326 1323 if ( g_streams[id] == NULL ) 1324 return -1; 1327 _CHECK_SID(id); 1325 1328 1326 1329 ROAR_DBG("streams_send_mon(id=%i) = ?", id); … … 1520 1523 struct roar_stream_server * ss; 1521 1524 1522 if ( g_streams[id] == NULL ) 1523 return -1; 1525 _CHECK_SID(id); 1524 1526 1525 1527 ROAR_DBG("streams_send_filter(id=%i) = ?", id); … … 1561 1563 1562 1564 ssize_t stream_vio_read (int stream, void *buf, size_t count) { 1563 struct roar_stream_server * s = g_streams[stream]; 1564 1565 if ( !s ) 1566 return -1; 1567 1568 return stream_vio_s_read(s, buf, count); 1565 _CHECK_SID(stream); 1566 1567 return stream_vio_s_read(g_streams[stream], buf, count); 1569 1568 } 1570 1569 1571 1570 ssize_t stream_vio_write(int stream, void *buf, size_t count) { 1572 struct roar_stream_server * s = g_streams[stream]; 1573 1574 if ( !s ) 1575 return -1; 1576 1577 return stream_vio_s_write(s, buf, count); 1571 _CHECK_SID(stream); 1572 1573 return stream_vio_s_write(g_streams[stream], buf, count); 1578 1574 } 1579 1575
Note: See TracChangeset
for help on using the changeset viewer.