Changeset 2229:62c57b3537b3 in roaraudio


Ignore:
Timestamp:
07/28/09 02:23:02 (15 years ago)
Author:
phi
Branch:
default
Phase:
public
Message:

parse string

File:
1 edited

Legend:

Unmodified
Added
Removed
  • roarclients/roarinterconnect.c

    r2228 r2229  
    2929#endif 
    3030 
    31 #define MT_NULL    0x00 
     31#define MT_NONE    0x00 
    3232#define MT_MASK    0xF0 
    3333#define MT_ROAR    0x10 
     
    5959 
    6060int parse_type (char * type) { 
    61  int ret = 0; 
     61 int ret = MT_NONE|ST_NONE; 
     62 char * colon; 
    6263 
    6364 if ( type != NULL ) { 
     65  while (type != NULL && *type) { 
     66   if ( (colon = strstr(type, ":")) != NULL ) { 
     67    *colon = 0; 
     68     colon++; 
     69   } 
     70 
     71   if ( !strcmp(type, "roar") ) { 
     72    ret -= ret & MT_MASK; 
     73    ret += MT_ROAR; 
     74   } else if ( !strcmp(type, "esd") ) { 
     75    ret -= ret & MT_MASK; 
     76    ret += MT_ESD; 
     77   } else if ( !strcmp(type, "bidir") ) { 
     78    ret -= ret & ST_MASK; 
     79    ret += ST_BIDIR; 
     80   } else if ( !strcmp(type, "filter") ) { 
     81    ret -= ret & ST_MASK; 
     82    ret += ST_FILTER; 
     83   } else { 
     84    return MT_NONE|ST_NONE; 
     85   } 
     86 
     87   type = colon; 
     88  } 
    6489 } 
    6590 
Note: See TracChangeset for help on using the changeset viewer.