27 #ifndef EMBB_MTAPI_QUEUE_ATTRIBUTES_H_ 28 #define EMBB_MTAPI_QUEUE_ATTRIBUTES_H_ 30 #include <embb/mtapi/c/mtapi.h> 31 #include <embb/mtapi/internal/check_status.h> 48 mtapi_status_t status;
49 mtapi_queueattr_init(&attributes_, &status);
50 internal::CheckStatus(status);
63 mtapi_status_t status;
64 mtapi_boolean_t st = state ? MTAPI_TRUE : MTAPI_FALSE;
65 mtapi_queueattr_set(&attributes_, MTAPI_QUEUE_GLOBAL,
66 &st,
sizeof(st), &status);
67 internal::CheckStatus(status);
81 mtapi_status_t status;
82 mtapi_boolean_t st = state ? MTAPI_TRUE : MTAPI_FALSE;
83 mtapi_queueattr_set(&attributes_, MTAPI_QUEUE_ORDERED,
84 &st,
sizeof(st), &status);
85 internal::CheckStatus(status);
100 mtapi_status_t status;
101 mtapi_boolean_t st = state ? MTAPI_TRUE : MTAPI_FALSE;
102 mtapi_queueattr_set(&attributes_, MTAPI_QUEUE_RETAIN,
103 &st,
sizeof(st), &status);
104 internal::CheckStatus(status);
118 mtapi_status_t status;
119 mtapi_boolean_t st = state ? MTAPI_TRUE : MTAPI_FALSE;
120 mtapi_queueattr_set(&attributes_, MTAPI_QUEUE_DOMAIN_SHARED,
121 &st,
sizeof(st), &status);
122 internal::CheckStatus(status);
134 mtapi_uint_t priority
136 mtapi_status_t status;
137 mtapi_queueattr_set(&attributes_, MTAPI_QUEUE_PRIORITY,
138 &priority,
sizeof(priority), &status);
139 internal::CheckStatus(status);
152 mtapi_status_t status;
153 mtapi_queueattr_set(&attributes_, MTAPI_QUEUE_LIMIT,
154 &limit,
sizeof(limit), &status);
155 internal::CheckStatus(status);
171 mtapi_queue_attributes_t attributes_;
177 #endif // EMBB_MTAPI_QUEUE_ATTRIBUTES_H_ Definition: lock_free_mpmc_queue.h:40
QueueAttributes & SetLimit(mtapi_uint_t limit)
Sets the limit (capacity) of a Queue.
Definition: queue_attributes.h:149
QueueAttributes & SetDomainShared(bool state)
Sets the domain shared property of a Queue.
Definition: queue_attributes.h:115
QueueAttributes & SetRetain(bool state)
Sets the retain property of a Queue.
Definition: queue_attributes.h:97
QueueAttributes & SetGlobal(bool state)
Sets the global property of a Queue.
Definition: queue_attributes.h:60
QueueAttributes()
Constructs a QueueAttributes object.
Definition: queue_attributes.h:47
QueueAttributes & SetOrdered(bool state)
Sets the ordered property of a Queue.
Definition: queue_attributes.h:78
mtapi_queue_attributes_t const & GetInternal() const
Returns the internal representation of this object.
Definition: queue_attributes.h:166
QueueAttributes & SetPriority(mtapi_uint_t priority)
Sets the priority of a Queue.
Definition: queue_attributes.h:133
Contains attributes of a Queue.
Definition: queue_attributes.h:41