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:
Peter Hutterer 2021-05-06 13:41:44 +10:00 committed by Wim Taymans
parent e598d0a422
commit 2405f0942b
92 changed files with 248 additions and 227 deletions

View file

@ -292,7 +292,7 @@ struct pw_impl_node *pw_adapter_new(struct pw_context *context,
spa_list_init(&n->ports);
if (user_data_size > 0)
n->user_data = SPA_MEMBER(n, sizeof(struct node), void);
n->user_data = SPA_PTROFF(n, sizeof(struct node), void);
pw_impl_node_add_listener(node, &n->node_listener, &node_events, n);

View file

@ -72,7 +72,7 @@ struct pw_proxy *pw_core_spa_device_export(struct pw_core *core,
return NULL;
data = pw_proxy_get_user_data(proxy);
data = SPA_MEMBER(data, user_data_size, struct device_data);
data = SPA_PTROFF(data, user_data_size, struct device_data);
data->device = device;
data->proxy = proxy;

View file

@ -798,14 +798,14 @@ do_port_use_buffers(struct impl *impl,
if ((mem = pw_mempool_find_ptr(impl->context->pool, baseptr)) == NULL)
return -EINVAL;
endptr = SPA_MEMBER(baseptr, buffers[i]->n_datas * sizeof(struct spa_chunk), void);
endptr = SPA_PTROFF(baseptr, buffers[i]->n_datas * sizeof(struct spa_chunk), void);
for (j = 0; j < buffers[i]->n_metas; j++) {
endptr = SPA_MEMBER(endptr, SPA_ROUND_UP_N(buffers[i]->metas[j].size, 8), void);
endptr = SPA_PTROFF(endptr, SPA_ROUND_UP_N(buffers[i]->metas[j].size, 8), void);
}
for (j = 0; j < buffers[i]->n_datas; j++) {
struct spa_data *d = buffers[i]->datas;
if (d->type == SPA_DATA_MemPtr)
endptr = SPA_MEMBER(d->data, d->maxsize, void);
endptr = SPA_PTROFF(d->data, d->maxsize, void);
}
m = pw_mempool_import_block(this->client->pool, mem);
@ -1375,7 +1375,7 @@ static int port_init_mix(void *data, struct pw_impl_port_mix *mix)
if (mix->id == SPA_ID_INVALID)
return -errno;
mix->io = SPA_MEMBER(impl->io_areas->map->ptr,
mix->io = SPA_PTROFF(impl->io_areas->map->ptr,
mix->id * sizeof(struct spa_io_buffers), void);
*mix->io = SPA_IO_BUFFERS_INIT;

View file

@ -672,8 +672,8 @@ client_node_port_use_buffers(void *object,
}
memcpy(b, buffers[i].buffer, sizeof(struct spa_buffer));
b->metas = SPA_MEMBER(b, sizeof(struct spa_buffer), struct spa_meta);
b->datas = SPA_MEMBER(b->metas, sizeof(struct spa_meta) * b->n_metas,
b->metas = SPA_PTROFF(b, sizeof(struct spa_buffer), struct spa_meta);
b->datas = SPA_PTROFF(b->metas, sizeof(struct spa_meta) * b->n_metas,
struct spa_data);
pw_log_debug("add buffer mem:%d id:%d offset:%u size:%u %p", mm->block->id,
@ -683,7 +683,7 @@ client_node_port_use_buffers(void *object,
for (j = 0; j < b->n_metas; j++) {
struct spa_meta *m = &b->metas[j];
memcpy(m, &buffers[i].buffer->metas[j], sizeof(struct spa_meta));
m->data = SPA_MEMBER(mm->ptr, offset, void);
m->data = SPA_PTROFF(mm->ptr, offset, void);
offset += SPA_ROUND_UP_N(m->size, 8);
}
@ -692,7 +692,7 @@ client_node_port_use_buffers(void *object,
memcpy(d, &buffers[i].buffer->datas[j], sizeof(struct spa_data));
d->chunk =
SPA_MEMBER(mm->ptr, offset + sizeof(struct spa_chunk) * j,
SPA_PTROFF(mm->ptr, offset + sizeof(struct spa_chunk) * j,
struct spa_chunk);
if (flags & SPA_NODE_BUFFERS_FLAG_ALLOC)
@ -717,7 +717,7 @@ client_node_port_use_buffers(void *object,
j, bm->id, bm->fd, d->maxsize);
} else if (d->type == SPA_DATA_MemPtr) {
int offs = SPA_PTR_TO_INT(d->data);
d->data = SPA_MEMBER(mm->ptr, offs, void);
d->data = SPA_PTROFF(mm->ptr, offs, void);
d->fd = -1;
pw_log_debug(" data %d id:%u -> mem:%p offs:%d maxsize:%d",
j, bid->id, d->data, offs, d->maxsize);
@ -1213,7 +1213,7 @@ static struct pw_proxy *node_export(struct pw_core *core, void *object, bool do_
goto error;
data = pw_proxy_get_user_data(client_node);
data = SPA_MEMBER(data, user_data_size, struct node_data);
data = SPA_PTROFF(data, user_data_size, struct node_data);
data->pool = pw_core_get_mempool(core);
data->node = node;
data->do_free = do_free;

View file

@ -770,7 +770,7 @@ impl_node_port_use_buffers(void *object,
mb[i].buffer = &b->buffer;
mb[i].mem_id = b->memid;
mb[i].offset = SPA_PTRDIFF(baseptr, SPA_MEMBER(mem->map->ptr, mem->map->offset, void));
mb[i].offset = SPA_PTRDIFF(baseptr, SPA_PTROFF(mem->map->ptr, mem->map->offset, void));
mb[i].size = data_size;
for (j = 0; j < buffers[i]->n_metas; j++)

View file

@ -70,25 +70,25 @@ static void transport_setup_area(void *p, struct pw_client_node0_transport *tran
struct pw_client_node0_area *a;
trans->area = a = p;
p = SPA_MEMBER(p, sizeof(struct pw_client_node0_area), struct spa_io_buffers);
p = SPA_PTROFF(p, sizeof(struct pw_client_node0_area), struct spa_io_buffers);
trans->inputs = p;
p = SPA_MEMBER(p, a->max_input_ports * sizeof(struct spa_io_buffers), void);
p = SPA_PTROFF(p, a->max_input_ports * sizeof(struct spa_io_buffers), void);
trans->outputs = p;
p = SPA_MEMBER(p, a->max_output_ports * sizeof(struct spa_io_buffers), void);
p = SPA_PTROFF(p, a->max_output_ports * sizeof(struct spa_io_buffers), void);
trans->input_buffer = p;
p = SPA_MEMBER(p, sizeof(struct spa_ringbuffer), void);
p = SPA_PTROFF(p, sizeof(struct spa_ringbuffer), void);
trans->input_data = p;
p = SPA_MEMBER(p, INPUT_BUFFER_SIZE, void);
p = SPA_PTROFF(p, INPUT_BUFFER_SIZE, void);
trans->output_buffer = p;
p = SPA_MEMBER(p, sizeof(struct spa_ringbuffer), void);
p = SPA_PTROFF(p, sizeof(struct spa_ringbuffer), void);
trans->output_data = p;
p = SPA_MEMBER(p, OUTPUT_BUFFER_SIZE, void);
p = SPA_PTROFF(p, OUTPUT_BUFFER_SIZE, void);
}
static void transport_reset_area(struct pw_client_node0_transport *trans)

View file

@ -151,7 +151,7 @@ static void process(struct impl *impl)
for (i = 0; i < impl->info.channels; i++) {
/* captured samples, with echo from sink */
ds = &cin->buffer->datas[i];
rec[i] = SPA_MEMBER(ds->data, ds->chunk->offset, void);
rec[i] = SPA_PTROFF(ds->data, ds->chunk->offset, void);
size = ds->chunk->size;
stride = ds->chunk->stride;
@ -165,7 +165,7 @@ static void process(struct impl *impl)
/* echo from sink */
ds = &pin->buffer->datas[i];
play[i] = SPA_MEMBER(ds->data, ds->chunk->offset, void);
play[i] = SPA_PTROFF(ds->data, ds->chunk->offset, void);
/* output to sink, just copy */
dd = &pout->buffer->datas[i];

View file

@ -141,7 +141,7 @@ static void capture_process(void *d)
ds = &in->buffer->datas[i];
memcpy(dd->data,
SPA_MEMBER(ds->data, ds->chunk->offset, void),
SPA_PTROFF(ds->data, ds->chunk->offset, void),
ds->chunk->size);
size = SPA_MAX(size, ds->chunk->size);

View file

@ -72,7 +72,7 @@ struct pw_proxy *pw_core_metadata_export(struct pw_core *core,
return NULL;
data = pw_proxy_get_user_data(proxy);
data = SPA_MEMBER(data, user_data_size, struct object_data);
data = SPA_PTROFF(data, user_data_size, struct object_data);
data->object = object;
data->proxy = proxy;

View file

@ -143,7 +143,7 @@ static void flush_timeout(void *data, uint64_t expirations)
spa_ringbuffer_read_data(&impl->buffer, impl->data, MAX_BUFFER,
idx % MAX_BUFFER,
SPA_MEMBER(p, sizeof(struct spa_pod_struct), void), avail);
SPA_PTROFF(p, sizeof(struct spa_pod_struct), void), avail);
spa_ringbuffer_read_update(&impl->buffer, idx + avail);
spa_list_for_each(resource, &impl->global->resource_list, link)

View file

@ -556,7 +556,7 @@ static inline void *begin_write(struct pw_protocol_native_connection *conn, uint
if ((p = connection_ensure_size(conn, buf, impl->hdr_size + size)) == NULL)
return NULL;
return SPA_MEMBER(p, impl->hdr_size, void);
return SPA_PTROFF(p, impl->hdr_size, void);
}
static int builder_overflow(void *data, uint32_t size)
@ -629,7 +629,7 @@ pw_protocol_native_connection_end(struct pw_protocol_native_connection *conn,
if (debug_messages) {
pw_log_debug(">>>>>>>>> out: id:%d op:%d size:%d seq:%d",
buf->msg.id, buf->msg.opcode, size, buf->msg.seq);
spa_debug_pod(0, NULL, SPA_MEMBER(p, impl->hdr_size, struct spa_pod));
spa_debug_pod(0, NULL, SPA_PTROFF(p, impl->hdr_size, struct spa_pod));
}
buf->seq = (buf->seq + 1) & SPA_ASYNC_SEQ_MASK;
@ -717,7 +717,7 @@ int pw_protocol_native_connection_flush(struct pw_protocol_native_connection *co
outfds);
size -= sent;
data = SPA_MEMBER(data, sent, void);
data = SPA_PTROFF(data, sent, void);
n_fds -= outfds;
fds += outfds;
to_close += outfds;

View file

@ -401,15 +401,15 @@ struct spa_pod_prop_body0 {
/* v2 iterates object as containing spa_pod */
#define SPA_POD_OBJECT_BODY_FOREACH0(body, size, iter) \
for ((iter) = SPA_MEMBER((body), sizeof(struct spa_pod_object_body), struct spa_pod); \
for ((iter) = SPA_PTROFF((body), sizeof(struct spa_pod_object_body), struct spa_pod); \
spa_pod_is_inside(body, size, iter); \
(iter) = spa_pod_next(iter))
#define SPA_POD_PROP_ALTERNATIVE_FOREACH0(body, _size, iter) \
for ((iter) = SPA_MEMBER((body), (body)->value.size + \
for ((iter) = SPA_PTROFF((body), (body)->value.size + \
sizeof(struct spa_pod_prop_body0), __typeof__(*iter)); \
(iter) <= SPA_MEMBER((body), (_size)-(body)->value.size, __typeof__(*iter)); \
(iter) = SPA_MEMBER((iter), (body)->value.size, __typeof__(*iter)))
(iter) <= SPA_PTROFF((body), (_size)-(body)->value.size, __typeof__(*iter)); \
(iter) = SPA_PTROFF((iter), (body)->value.size, __typeof__(*iter)))
#define SPA0_POD_PROP_N_VALUES(b,size) ((size - sizeof(struct spa_pod_prop_body0)) / (b)->value.size)

View file

@ -134,7 +134,7 @@ static struct pw_manager_param *add_param(struct spa_list *params,
p->id = id;
if (param != NULL) {
p->param = SPA_MEMBER(p, sizeof(*p), struct spa_pod);
p->param = SPA_PTROFF(p, sizeof(*p), struct spa_pod);
memcpy(p->param, param, SPA_POD_SIZE(param));
} else {
clear_params(params, id);
@ -836,7 +836,7 @@ void *pw_manager_object_add_data(struct pw_manager_object *obj, const char *id,
spa_list_append(&o->data_list, &d->link);
done:
return SPA_MEMBER(d, sizeof(struct object_data), void);
return SPA_PTROFF(d, sizeof(struct object_data), void);
}
int pw_manager_sync(struct pw_manager *manager)

View file

@ -226,10 +226,10 @@ static int read_arbitrary(struct message *m, const void **val, size_t *length)
static int read_string(struct message *m, char **str)
{
uint32_t n, maxlen = m->length - m->offset;
n = strnlen(SPA_MEMBER(m->data, m->offset, char), maxlen);
n = strnlen(SPA_PTROFF(m->data, m->offset, char), maxlen);
if (n == maxlen)
return -EINVAL;
*str = SPA_MEMBER(m->data, m->offset, char);
*str = SPA_PTROFF(m->data, m->offset, char);
m->offset += n + 1;
return 0;
}
@ -481,7 +481,7 @@ static void write_string(struct message *m, const char *s)
if (s != NULL) {
int len = strlen(s) + 1;
if (ensure_size(m, len) > 0)
strcpy(SPA_MEMBER(m->data, m->length, char), s);
strcpy(SPA_PTROFF(m->data, m->length, char), s);
m->length += len;
}
}

View file

@ -50,7 +50,7 @@ struct module *module_new(struct impl *impl, const struct module_methods *method
module->impl = impl;
module->methods = methods;
spa_hook_list_init(&module->hooks);
module->user_data = SPA_MEMBER(module, sizeof(struct module), void);
module->user_data = SPA_PTROFF(module, sizeof(struct module), void);
return module;
}

View file

@ -226,7 +226,7 @@ static int flush_messages(struct client *client)
desc.offset_lo = 0;
desc.flags = 0;
data = SPA_MEMBER(&desc, client->out_index, void);
data = SPA_PTROFF(&desc, client->out_index, void);
size = sizeof(desc) - client->out_index;
} else if (client->out_index < m->length + sizeof(desc)) {
uint32_t idx = client->out_index - sizeof(desc);
@ -1705,7 +1705,7 @@ static void stream_process(void *data)
spa_ringbuffer_write_data(&stream->ring,
stream->buffer, stream->attr.maxlength,
pd.write_index % stream->attr.maxlength,
SPA_MEMBER(p, buf->datas[0].chunk->offset, void),
SPA_PTROFF(p, buf->datas[0].chunk->offset, void),
SPA_MIN(size, stream->attr.maxlength));
pd.write_index += size;
@ -5532,7 +5532,7 @@ static int do_read(struct client *client)
int res = 0;
if (client->in_index < sizeof(client->desc)) {
data = SPA_MEMBER(&client->desc, client->in_index, void);
data = SPA_PTROFF(&client->desc, client->in_index, void);
size = sizeof(client->desc) - client->in_index;
} else {
uint32_t idx = client->in_index - sizeof(client->desc);
@ -5541,7 +5541,7 @@ static int do_read(struct client *client)
res = -EIO;
goto exit;
}
data = SPA_MEMBER(client->message->data, idx, void);
data = SPA_PTROFF(client->message->data, idx, void);
size = client->message->length - idx;
}
while (true) {
@ -6325,7 +6325,7 @@ error_exit:
void *pw_protocol_pulse_get_user_data(struct pw_protocol_pulse *pulse)
{
return SPA_MEMBER(pulse, sizeof(struct impl), void);
return SPA_PTROFF(pulse, sizeof(struct impl), void);
}
void pw_protocol_pulse_destroy(struct pw_protocol_pulse *pulse)

View file

@ -178,7 +178,7 @@ static struct sample_play *sample_play_new(struct pw_core *core,
p->context = pw_core_get_context(core);
p->main_loop = pw_context_get_main_loop(p->context);
spa_hook_list_init(&p->hooks);
p->user_data = SPA_MEMBER(p, sizeof(struct sample_play), void);
p->user_data = SPA_PTROFF(p, sizeof(struct sample_play), void);
pw_properties_update(props, &sample->props->dict);

View file

@ -226,7 +226,7 @@ static void capture_process(void *data)
while (size > 0) {
res = send(client->source->fd,
SPA_MEMBER(d->data, offset, void),
SPA_PTROFF(d->data, offset, void),
size,
MSG_NOSIGNAL | MSG_DONTWAIT);
if (res < 0) {
@ -270,7 +270,7 @@ static void playback_process(void *data)
offset = 0;
while (size > 0) {
res = recv(client->source->fd,
SPA_MEMBER(d->data, offset, void),
SPA_PTROFF(d->data, offset, void),
size,
MSG_DONTWAIT);
if (res == 0) {

View file

@ -62,7 +62,7 @@ struct pw_proxy *pw_core_endpoint_export(struct pw_core *core,
return NULL;
data = pw_proxy_get_user_data(proxy);
data = SPA_MEMBER(data, user_data_size, struct object_data);
data = SPA_PTROFF(data, user_data_size, struct object_data);
remote_iface = (struct spa_interface*)proxy;
local_iface = (struct spa_interface*)endpoint;
@ -98,7 +98,7 @@ struct pw_proxy *pw_core_endpoint_stream_export(struct pw_core *core,
return NULL;
data = pw_proxy_get_user_data(proxy);
data = SPA_MEMBER(data, user_data_size, struct object_data);
data = SPA_PTROFF(data, user_data_size, struct object_data);
remote_iface = (struct spa_interface*)proxy;
local_iface = (struct spa_interface*)endpoint_stream;
@ -134,7 +134,7 @@ struct pw_proxy *pw_core_endpoint_link_export(struct pw_core *core,
return NULL;
data = pw_proxy_get_user_data(proxy);
data = SPA_MEMBER(data, user_data_size, struct object_data);
data = SPA_PTROFF(data, user_data_size, struct object_data);
remote_iface = (struct spa_interface*)proxy;
local_iface = (struct spa_interface*)endpoint_link;
@ -170,7 +170,7 @@ struct pw_proxy *pw_core_session_export(struct pw_core *core,
return NULL;
data = pw_proxy_get_user_data(proxy);
data = SPA_MEMBER(data, user_data_size, struct object_data);
data = SPA_PTROFF(data, user_data_size, struct object_data);
remote_iface = (struct spa_interface*)proxy;
local_iface = (struct spa_interface*)session;

View file

@ -91,7 +91,7 @@ pw_spa_device_new(struct pw_context *context,
impl->flags = flags;
if (user_data_size > 0)
impl->user_data = SPA_MEMBER(impl, sizeof(struct impl), void);
impl->user_data = SPA_PTROFF(impl, sizeof(struct impl), void);
pw_impl_device_add_listener(this, &impl->device_listener, &device_events, impl);
pw_impl_device_set_implementation(this, impl->device);

View file

@ -124,7 +124,7 @@ pw_spa_node_new(struct pw_context *context,
impl->flags = flags;
if (user_data_size > 0)
impl->user_data = SPA_MEMBER(impl, sizeof(struct impl), void);
impl->user_data = SPA_PTROFF(impl, sizeof(struct impl), void);
pw_impl_node_add_listener(this, &impl->node_listener, &node_events, impl);
if ((res = pw_impl_node_set_implementation(this, impl->node)) < 0)