Changeset 4538:b809f0dcd86a in roaraudio for libroar/stream.c


Ignore:
Timestamp:
10/23/10 13:00:54 (13 years ago)
Author:
phi
Branch:
default
Phase:
public
Message:

implemented support for sending extended flags over the network

File:
1 edited

Legend:

Unmodified
Added
Removed
  • libroar/stream.c

    r4296 r4538  
    611611 
    612612int roar_stream_set_flags (struct roar_connection * con, struct roar_stream * s, int flags, int reset) { 
     613 return roar_stream_set_flags2(con, s, flags, reset == ROAR_RESET_FLAG ? ROAR_RESET_FLAG : ROAR_SET_FLAG); 
     614} 
     615 
     616int roar_stream_set_flags2 (struct roar_connection * con, struct roar_stream * s, uint32_t flags, int action) { 
    613617 struct roar_message m; 
    614618 uint16_t * data = (uint16_t *) m.data; 
     
    619623 m.cmd     = ROAR_CMD_SET_STREAM_PARA; 
    620624 m.stream  = s->id; 
    621  m.datalen = 8; 
    622625 m.pos     = 0; 
     626 
     627 if ( flags & 0xFFFF0000 ) { 
     628  m.datalen = 2*5; 
     629 } else { 
     630  m.datalen = 2*4; 
     631 } 
    623632 
    624633 data[0] = 0; // Version and reserved 
    625634 data[1] = ROAR_STREAM_PARA_FLAGS; // flags 
    626  data[2] = reset == ROAR_RESET_FLAG ? ROAR_RESET_FLAG : ROAR_SET_FLAG; 
    627  data[3] = flags; 
     635 data[2] = action; 
     636 data[3] = flags & 0x0000FFFF; 
     637 
     638 if ( flags & 0xFFFF0000 ) { 
     639  data[4] = (flags & 0xFFFF0000) >> 16; 
     640 } 
    628641 
    629642 for (i = 0; i < m.datalen/2; i++) { 
Note: See TracChangeset for help on using the changeset viewer.