Adding negotiation of speech codecs between GSM and SIP when using rtp-bridge
[lcr.git] / gsm_bs.h
index 45bf083..b60c02c 100644 (file)
--- a/gsm_bs.h
+++ b/gsm_bs.h
@@ -1,19 +1,17 @@
-extern "C" {
-#include <openbsc/gsm_data.h>
-#include <openbsc/mncc.h>
-}
 
 /* GSM port class */
 class Pgsm_bs : public Pgsm
 {
        public:
-       Pgsm_bs(int type, struct mISDNport *mISDNport, char *portname, struct port_settings *settings, int channel, int exclusive, int mode);
+       Pgsm_bs(int type, char *portname, struct port_settings *settings, struct interface *interface);
        ~Pgsm_bs();
 
-       unsigned char *p_m_g_dtmf; /* DTMF tone generation (MS only) */
-       int p_m_g_dtmf_index; /* DTMF tone generation index */
+       unsigned char *p_g_dtmf; /* DTMF tone generation (MS only) */
+       int p_g_dtmf_index; /* DTMF tone generation index */
 
+       void select_payload_type(struct gsm_mncc *mncc, unsigned char *payload_types, int *payloads, int max_payloads);
        void setup_ind(unsigned int msg_type, unsigned int callref, struct gsm_mncc *mncc);
+       void call_conf_ind(unsigned int msg_type, unsigned int callref, struct gsm_mncc *gsm);
        void start_dtmf_ind(unsigned int msg_type, unsigned int callref, struct gsm_mncc *mncc);
        void stop_dtmf_ind(unsigned int msg_type, unsigned int callref, struct gsm_mncc *mncc);
        void hold_ind(unsigned int msg_type, unsigned int callref, struct gsm_mncc *mncc);
@@ -22,11 +20,8 @@ class Pgsm_bs : public Pgsm
        int message_epoint(unsigned int epoint_id, int message_id, union parameter *param);
 };
 
-int handle_gsm_bs(void);
 int gsm_bs_conf(struct gsm_conf *gsm_conf, char *conf_error);
 int gsm_bs_exit(int rc);
-int gsm_bs_init(void);
+int gsm_bs_init(struct interface *interface);
 
-extern "C" {
-int mncc_send(struct gsm_network *instance, int msg_type, void *data);
-};
+int message_bsc(struct lcr_gsm *lcr_gsm, int msg_type, void *arg);