Cleanup: Make interface name be part of Port class
[lcr.git] / port.h
diff --git a/port.h b/port.h
index 90b7239..af9610f 100644 (file)
--- a/port.h
+++ b/port.h
@@ -149,9 +149,14 @@ struct port_settings {
        int no_seconds;
 };
 
+#define BRIDGE_BUFFER 4096
+
 struct port_bridge_member {
        struct port_bridge_member *next;
        class Port *port;
+       unsigned char buffer[BRIDGE_BUFFER];
+       int write_p;                            /* points to write position in buffer */
+       int min_space;                          /* minimum space to calculate how much delay can be removed */
 };
 
 /* port bridge instance */
@@ -159,6 +164,10 @@ struct port_bridge {
        struct port_bridge *next;               /* next bridge node */
        unsigned int bridge_id;                 /* unique ID to identify bridge */
        struct port_bridge_member *first;       /* list of ports that are bridged */
+       signed long sum_buffer[BRIDGE_BUFFER];
+       int read_p;                             /* points to read position in buffer */
+       struct lcr_timer timer;                 /* clock to transmit sum data */
+       int sample_count;                       /* counter of samples since last delay check */
 };
 
 extern struct port_bridge *p_bridge_first;
@@ -168,7 +177,7 @@ class Port
 {
        public:
        /* methods */
-       Port(int type, const char *portname, struct port_settings *settings);
+       Port(int type, const char *portname, struct port_settings *settings, struct interface *interface);
        virtual ~Port();
        class Port *next;                       /* next port in list */
        int p_type;                             /* type of port */
@@ -179,6 +188,7 @@ class Port
        virtual void update_load(void);
 
        struct port_settings p_settings;
+       char p_interface_name[64];
        
        /* tone */
        char p_tone_dir[256];                   /* name of current directory */
@@ -208,7 +218,6 @@ class Port
        /* audio bridging */
        struct port_bridge *p_bridge;           /* linked to a port bridge or NULL */
        void bridge(unsigned int bridge_id);    /* join a bridge */
-       class Port *bridge_remote(void);        /* get remote port */
        int bridge_tx(unsigned char *data, int len); /* used to transmit data to remote port */
        virtual int bridge_rx(unsigned char *data, int len); /* function to be inherited, so data is received */