mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2026-01-03 11:09:08 -05:00
spa/buffer: rename SPA_MEMBER to SPA_PTROFF
SPA_MEMBER is misleading, all we're doing here is pointer+offset and a type-casting the result. Rename to SPA_PTROFF which is more expressive (and has the same number of characters so we don't need to re-indent).
This commit is contained in:
parent
e598d0a422
commit
2405f0942b
92 changed files with 248 additions and 227 deletions
|
|
@ -43,61 +43,61 @@ struct spa_pod_frame {
|
|||
|
||||
static inline bool spa_pod_is_inside(const void *pod, uint32_t size, const void *iter)
|
||||
{
|
||||
return SPA_POD_BODY(iter) <= SPA_MEMBER(pod, size, void) &&
|
||||
SPA_MEMBER(iter, SPA_POD_SIZE(iter), void) <= SPA_MEMBER(pod, size, void);
|
||||
return SPA_POD_BODY(iter) <= SPA_PTROFF(pod, size, void) &&
|
||||
SPA_PTROFF(iter, SPA_POD_SIZE(iter), void) <= SPA_PTROFF(pod, size, void);
|
||||
}
|
||||
|
||||
static inline void *spa_pod_next(const void *iter)
|
||||
{
|
||||
return SPA_MEMBER(iter, SPA_ROUND_UP_N(SPA_POD_SIZE(iter), 8), void);
|
||||
return SPA_PTROFF(iter, SPA_ROUND_UP_N(SPA_POD_SIZE(iter), 8), void);
|
||||
}
|
||||
|
||||
static inline struct spa_pod_prop *spa_pod_prop_first(const struct spa_pod_object_body *body)
|
||||
{
|
||||
return SPA_MEMBER(body, sizeof(struct spa_pod_object_body), struct spa_pod_prop);
|
||||
return SPA_PTROFF(body, sizeof(struct spa_pod_object_body), struct spa_pod_prop);
|
||||
}
|
||||
|
||||
static inline bool spa_pod_prop_is_inside(const struct spa_pod_object_body *body,
|
||||
uint32_t size, const struct spa_pod_prop *iter)
|
||||
{
|
||||
return SPA_POD_CONTENTS(struct spa_pod_prop, iter) <= SPA_MEMBER(body, size, void) &&
|
||||
SPA_MEMBER(iter, SPA_POD_PROP_SIZE(iter), void) <= SPA_MEMBER(body, size, void);
|
||||
return SPA_POD_CONTENTS(struct spa_pod_prop, iter) <= SPA_PTROFF(body, size, void) &&
|
||||
SPA_PTROFF(iter, SPA_POD_PROP_SIZE(iter), void) <= SPA_PTROFF(body, size, void);
|
||||
}
|
||||
|
||||
static inline struct spa_pod_prop *spa_pod_prop_next(const struct spa_pod_prop *iter)
|
||||
{
|
||||
return SPA_MEMBER(iter, SPA_ROUND_UP_N(SPA_POD_PROP_SIZE(iter), 8), struct spa_pod_prop);
|
||||
return SPA_PTROFF(iter, SPA_ROUND_UP_N(SPA_POD_PROP_SIZE(iter), 8), struct spa_pod_prop);
|
||||
}
|
||||
|
||||
static inline struct spa_pod_control *spa_pod_control_first(const struct spa_pod_sequence_body *body)
|
||||
{
|
||||
return SPA_MEMBER(body, sizeof(struct spa_pod_sequence_body), struct spa_pod_control);
|
||||
return SPA_PTROFF(body, sizeof(struct spa_pod_sequence_body), struct spa_pod_control);
|
||||
}
|
||||
|
||||
static inline bool spa_pod_control_is_inside(const struct spa_pod_sequence_body *body,
|
||||
uint32_t size, const struct spa_pod_control *iter)
|
||||
{
|
||||
return SPA_POD_CONTENTS(struct spa_pod_control, iter) <= SPA_MEMBER(body, size, void) &&
|
||||
SPA_MEMBER(iter, SPA_POD_CONTROL_SIZE(iter), void) <= SPA_MEMBER(body, size, void);
|
||||
return SPA_POD_CONTENTS(struct spa_pod_control, iter) <= SPA_PTROFF(body, size, void) &&
|
||||
SPA_PTROFF(iter, SPA_POD_CONTROL_SIZE(iter), void) <= SPA_PTROFF(body, size, void);
|
||||
}
|
||||
|
||||
static inline struct spa_pod_control *spa_pod_control_next(const struct spa_pod_control *iter)
|
||||
{
|
||||
return SPA_MEMBER(iter, SPA_ROUND_UP_N(SPA_POD_CONTROL_SIZE(iter), 8), struct spa_pod_control);
|
||||
return SPA_PTROFF(iter, SPA_ROUND_UP_N(SPA_POD_CONTROL_SIZE(iter), 8), struct spa_pod_control);
|
||||
}
|
||||
|
||||
#define SPA_POD_ARRAY_BODY_FOREACH(body, _size, iter) \
|
||||
for ((iter) = (__typeof__(iter))SPA_MEMBER((body), sizeof(struct spa_pod_array_body), void); \
|
||||
(iter) < (__typeof__(iter))SPA_MEMBER((body), (_size), void); \
|
||||
(iter) = (__typeof__(iter))SPA_MEMBER((iter), (body)->child.size, void))
|
||||
for ((iter) = (__typeof__(iter))SPA_PTROFF((body), sizeof(struct spa_pod_array_body), void); \
|
||||
(iter) < (__typeof__(iter))SPA_PTROFF((body), (_size), void); \
|
||||
(iter) = (__typeof__(iter))SPA_PTROFF((iter), (body)->child.size, void))
|
||||
|
||||
#define SPA_POD_ARRAY_FOREACH(obj, iter) \
|
||||
SPA_POD_ARRAY_BODY_FOREACH(&(obj)->body, SPA_POD_BODY_SIZE(obj), iter)
|
||||
|
||||
#define SPA_POD_CHOICE_BODY_FOREACH(body, _size, iter) \
|
||||
for ((iter) = (__typeof__(iter))SPA_MEMBER((body), sizeof(struct spa_pod_choice_body), void); \
|
||||
(iter) < (__typeof__(iter))SPA_MEMBER((body), (_size), void); \
|
||||
(iter) = (__typeof__(iter))SPA_MEMBER((iter), (body)->child.size, void))
|
||||
for ((iter) = (__typeof__(iter))SPA_PTROFF((body), sizeof(struct spa_pod_choice_body), void); \
|
||||
(iter) < (__typeof__(iter))SPA_PTROFF((body), (_size), void); \
|
||||
(iter) = (__typeof__(iter))SPA_PTROFF((iter), (body)->child.size, void))
|
||||
|
||||
#define SPA_POD_CHOICE_FOREACH(obj, iter) \
|
||||
SPA_POD_CHOICE_BODY_FOREACH(&(obj)->body, SPA_POD_BODY_SIZE(obj), iter)
|
||||
|
|
@ -132,7 +132,7 @@ static inline void *spa_pod_from_data(void *data, size_t maxsize, off_t offset,
|
|||
void *pod;
|
||||
if (size < sizeof(struct spa_pod) || offset + size > maxsize)
|
||||
return NULL;
|
||||
pod = SPA_MEMBER(data, offset, void);
|
||||
pod = SPA_PTROFF(data, offset, void);
|
||||
if (SPA_POD_SIZE(pod) > size)
|
||||
return NULL;
|
||||
return pod;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue