mirror of
https://github.com/pikvm/ustreamer.git
synced 2026-03-14 11:33:43 +00:00
simplified list declaration
This commit is contained in:
@@ -34,7 +34,7 @@
|
|||||||
#include "rtp.h"
|
#include "rtp.h"
|
||||||
|
|
||||||
|
|
||||||
typedef struct us_janus_client_sx {
|
typedef struct {
|
||||||
janus_callbacks *gw;
|
janus_callbacks *gw;
|
||||||
janus_plugin_session *session;
|
janus_plugin_session *session;
|
||||||
atomic_bool transmit;
|
atomic_bool transmit;
|
||||||
@@ -48,7 +48,7 @@ typedef struct us_janus_client_sx {
|
|||||||
us_ring_s *video_ring;
|
us_ring_s *video_ring;
|
||||||
us_ring_s *audio_ring;
|
us_ring_s *audio_ring;
|
||||||
|
|
||||||
US_LIST_STRUCT(struct us_janus_client_sx);
|
US_LIST_DECLARE;
|
||||||
} us_janus_client_s;
|
} us_janus_client_s;
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -25,9 +25,9 @@
|
|||||||
#include <assert.h>
|
#include <assert.h>
|
||||||
|
|
||||||
|
|
||||||
#define US_LIST_STRUCT(...) \
|
#define US_LIST_DECLARE \
|
||||||
__VA_ARGS__ *prev; \
|
void *prev; \
|
||||||
__VA_ARGS__ *next;
|
void *next;
|
||||||
|
|
||||||
#define US_LIST_ITERATE(x_first, x_item, ...) { \
|
#define US_LIST_ITERATE(x_first, x_item, ...) { \
|
||||||
for (__typeof__(x_first) x_item = x_first; x_item;) { \
|
for (__typeof__(x_first) x_item = x_first; x_item;) { \
|
||||||
@@ -42,7 +42,7 @@
|
|||||||
x_first = x_item; \
|
x_first = x_item; \
|
||||||
} else { \
|
} else { \
|
||||||
__typeof__(x_first) m_last = x_first; \
|
__typeof__(x_first) m_last = x_first; \
|
||||||
for (; m_last->next; m_last = m_last->next); \
|
for (; m_last->next != NULL; m_last = m_last->next); \
|
||||||
x_item->prev = m_last; \
|
x_item->prev = m_last; \
|
||||||
m_last->next = x_item; \
|
m_last->next = x_item; \
|
||||||
} \
|
} \
|
||||||
@@ -57,10 +57,12 @@
|
|||||||
if (x_item->prev == NULL) { \
|
if (x_item->prev == NULL) { \
|
||||||
x_first = x_item->next; \
|
x_first = x_item->next; \
|
||||||
} else { \
|
} else { \
|
||||||
x_item->prev->next = x_item->next; \
|
__typeof__(x_first) m_prev = x_item->prev; \
|
||||||
|
m_prev->next = x_item->next; \
|
||||||
} \
|
} \
|
||||||
if (x_item->next != NULL) { \
|
if (x_item->next != NULL) { \
|
||||||
x_item->next->prev = x_item->prev; \
|
__typeof__(x_first) m_next = x_item->next; \
|
||||||
|
m_next->prev = x_item->prev; \
|
||||||
} \
|
} \
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -36,7 +36,7 @@
|
|||||||
#include "../stream.h"
|
#include "../stream.h"
|
||||||
|
|
||||||
|
|
||||||
typedef struct us_stream_client_sx {
|
typedef struct {
|
||||||
struct us_server_sx *server;
|
struct us_server_sx *server;
|
||||||
struct evhttp_request *request;
|
struct evhttp_request *request;
|
||||||
|
|
||||||
@@ -54,15 +54,15 @@ typedef struct us_stream_client_sx {
|
|||||||
|
|
||||||
us_fps_s *fps;
|
us_fps_s *fps;
|
||||||
|
|
||||||
US_LIST_STRUCT(struct us_stream_client_sx);
|
US_LIST_DECLARE;
|
||||||
} us_stream_client_s;
|
} us_stream_client_s;
|
||||||
|
|
||||||
typedef struct us_snapshot_client_sx {
|
typedef struct {
|
||||||
struct us_server_sx *server;
|
struct us_server_sx *server;
|
||||||
struct evhttp_request *request;
|
struct evhttp_request *request;
|
||||||
ldf request_ts;
|
ldf request_ts;
|
||||||
|
|
||||||
US_LIST_STRUCT(struct us_snapshot_client_sx);
|
US_LIST_DECLARE;
|
||||||
} us_snapshot_client_s;
|
} us_snapshot_client_s;
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
|
|||||||
Reference in New Issue
Block a user