Zephyr Project API 4.4.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
mpipe_object.h
Go to the documentation of this file.
1/*
2 * Copyright 2025-2026 NXP
3 *
4 * SPDX-License-Identifier: Apache-2.0
5 */
6
12
13#ifndef ZEPHYR_INCLUDE_MPIPE_MPIPE_OBJECT_H_
14#define ZEPHYR_INCLUDE_MPIPE_MPIPE_OBJECT_H_
15
40
41#include <stdint.h>
42
43#include <zephyr/sys/dlist.h>
45
47#define MPIPE_OBJECT_FLAG_BASE BIT(0)
54#define MPIPE_OBJECT_FLAG_BIN BIT(1)
55
57#define MPIPE_PROP_LIST_END -1
58
77 int (*set_property)(struct mpipe_object *self, uint32_t key, const void *val);
79 int (*get_property)(struct mpipe_object *self, uint32_t key, void *val);
80};
81
90
113
135
137
138#endif /* ZEPHYR_INCLUDE_MPIPE_MPIPE_OBJECT_H_ */
Header file for the doubly-linked list API.
struct _dnode sys_dnode_t
Doubly-linked list node structure.
Definition dlist.h:59
int mpipe_object_get_properties(struct mpipe_object *obj,...)
Get multiple properties' values of an mpipe_object.
void mpipe_object_init(struct mpipe_object *obj)
Initialize all fields of mpipe_object to zero.
int mpipe_object_set_properties(struct mpipe_object *obj,...)
Set multiple properties of an mpipe_object.
__UINT32_TYPE__ uint32_t
Definition stdint.h:90
__UINT8_TYPE__ uint8_t
Definition stdint.h:88
Base object structure.
Definition mpipe_object.h:65
struct mpipe_object * container
Parent element that contains this object.
Definition mpipe_object.h:67
uint8_t id
Unique ID given to an object instance.
Definition mpipe_object.h:71
int(* get_property)(struct mpipe_object *self, uint32_t key, void *val)
Function to get property.
Definition mpipe_object.h:79
int(* set_property)(struct mpipe_object *self, uint32_t key, const void *val)
Function to set property.
Definition mpipe_object.h:77
uint32_t flags
Flags of the object, an inheritable bitfield.
Definition mpipe_object.h:73
sys_dnode_t node
Object node to be used in a linked list.
Definition mpipe_object.h:75
Macro utilities.