1 #define RDS_RECEIVE_INDICATOR 1 << 0
2 #define RDS_OUTPUT_STATION_ID 1 << 1
3 #define RDS_OUTPUT_RADIO_TEXT 1 << 2
4 #define RDS_OUTPUT_TMC 1 << 3
5 #define RDS_OUTPUT_DATETIME 1 << 4
6 #define RDS_OUTPUT_RDSINFO 1 << 5
7 #define RDS_OUTPUT_EON 1 << 6
8 #define RDS_OUTPUT_UNKNGRP 1 << 7
10 extern int OutputFlags;
12 /* defined in rds_consts.h */
13 extern const char *PTY_text[];
14 extern const char *ECC_text[];
15 extern const char *ptype_stext[];
16 extern const char *ptype_ltext[];
23 char LTN; /* location table number */
40 unsigned char ccode, ptype, pref;
42 unsigned char lang_code;
48 int rds_receive_group(int rds_fd, unsigned short *rdsgroup);
49 void rds_decode_group(unsigned short *rdsgroup);
53 /* with every group but only once reported when PI changes */
54 void rds_set_PI_cb(void (*rds_PI_cb)(unsigned short PI, unsigned char ccode, unsigned char ptype, unsigned char pref, void *user_data), void *user_data);
57 void rds_set_sname_cb(void (*rds_sname_cb)(char *sname, void *user_data), void *user_data);
58 void rds_set_sinfo_cb(void (*rds_sinfo_cb)(unsigned char TP, unsigned char TA, unsigned char MS, unsigned char PTY, void *user_data), void *user_data);
59 void rds_set_afinfo_cb(void (*rds_afinfo_cb)(unsigned char cnt, double *AF, void *user_data), void *user_data);
61 void rds_set_radiotext_cb(void (*rds_radiotext_cb)(char *radio_text, void *user_data), void *user_data);
65 void rds_set_date_time_cb(void (*rds_date_time_cb)(struct tm *rds_time, void *user_data), void *user_data);