extern struct port_bridge *p_bridge_first;
+enum dov_type {
+ DOV_TYPE_PWM,
+ DOV_TYPE_PCM,
+};
+
/* generic port class */
class Port
{
virtual void set_tone(const char *dir, const char *name);
virtual int read_audio(unsigned char *buffer, int length);
virtual void update_load(void);
+ virtual void set_display(const char *text);
struct port_settings p_settings;
char p_interface_name[64];
/* tone */
+ char p_tones_interface[256]; /* directory of tones of interface */
char p_tone_dir[256]; /* name of current directory */
char p_tone_name[256]; /* name of current tone */
char p_tone_fh; /* file descriptor of current tone or -1 if not open */
int p_record_vbox_email_file;
virtual void update_rxoff(void); /* inherited by mISDNport, to control rxoff */
+#ifdef WITH_VOOTP
+ vootp_t *p_vootp; /* VoOTP instance */
+ void set_vootp(struct param_vootp *vootp);
+#endif
+
+ /* DOV */
+ int p_dov_tx, p_dov_rx;
+ int p_dov_tx_sync, p_dov_rx_sync;
+ enum dov_type p_dov_tx_type, p_dov_rx_type;
+ unsigned char *p_dov_tx_data, *p_dov_rx_data;
+ int p_dov_tx_data_length;
+ int p_dov_tx_data_pos, p_dov_rx_data_pos;
+ int p_dov_tx_bit_pos, p_dov_rx_bit_pos;
+ int p_dov_tx_pwm_pos, p_dov_rx_pwm_pos;
+ int p_dov_rx_pwm_duration, p_dov_rx_pwm_polarity;
+ int p_dov_tx_up;
+ int p_dov_rx_sync_word;
+ unsigned char p_dov_up;
+ unsigned char p_dov_down;
+ void dov_init(void);
+ void dov_exit(void);
+ void dov_reset_tx(void);
+ void dov_reset_rx(void);
+ struct lcr_timer p_dov_tx_timer;
+ struct lcr_timer p_dov_rx_timer;
+ void dov_sendmsg(unsigned char *data, int length, enum dov_type type, int level);
+ int dov_tx(unsigned char *data, int length);
+ int dov_tx_pcm(unsigned char *data, int length);
+ int dov_tx_pwm(unsigned char *data, int length);
+ void dov_listen(enum dov_type type);
+ void dov_rx(unsigned char *data, int length);
+ void dov_rx_pcm(unsigned char *data, int length);
+ void dov_rx_pwm(unsigned char *data, int length);
+ void dov_message(unsigned char *data, int length);
+
void free_epointlist(struct epoint_list *epointlist);
void free_epointid(unsigned int epoint_id);
struct epoint_list *epointlist_new(unsigned int epoint_id);