Revision 5c6cb22f src/urt_subscriber.c
src/urt_subscriber.c | ||
---|---|---|
50 | 50 |
* |
51 | 51 |
* @param[in] subscriber The NRT subscriber to initialize. Must not be NULL. |
52 | 52 |
*/ |
53 |
void urtNrtSubscriberInit (urt_nrtsubscriber_t* subscriber) {return;} |
|
53 |
void urtNrtSubscriberInit (urt_nrtsubscriber_t* subscriber) |
|
54 |
{ |
|
55 |
subscriber->base.topic = NULL; |
|
56 |
urtEventListenerInit(subscriber->base.evtListener); |
|
57 |
subscriber->base.lastMessage = NULL; |
|
58 |
subscriber->base.lastMessageTime = 0; |
|
59 |
#if (URT_CFG_PUBSUB_PROFILING) |
|
60 |
subscriber->minLatency = URT_DELAY_INFINITE; |
|
61 |
subscriber->maxLatency = URT_DELAY_IMMEDIATE; |
|
62 |
#endif /* URT_CFG_PUBSUB_PROFILING */ |
|
63 |
return; |
|
64 |
} |
|
54 | 65 |
|
55 | 66 |
/** |
56 | 67 |
* @brief Subscribes the subscriber to a topic. |
... | ... | |
119 | 130 |
* |
120 | 131 |
* @param[in] subscriber The SRT subscriber to initialize. Must not be NULL. |
121 | 132 |
*/ |
122 |
void urtSrtSubscriberInit(urt_srtsubscriber_t* subscriber) {return;} |
|
133 |
void urtSrtSubscriberInit(urt_srtsubscriber_t* subscriber) |
|
134 |
{ |
|
135 |
subscriber->base.topic = NULL; |
|
136 |
urtEventListenerInit(subscriber->base.evtListener); |
|
137 |
subscriber->base.lastMessage = NULL; |
|
138 |
subscriber->base.lastMessageTime = 0; |
|
139 |
#if (URT_CFG_PUBSUB_PROFILING) |
|
140 |
subscriber->base.sumLatencies = 0; |
|
141 |
subscriber->base.numMessagesReceived = 0; |
|
142 |
subscriber->usefulnesscb = NULL; |
|
143 |
subscriber->cbparams = NULL; |
|
144 |
subscriber->minLatency = URT_DELAY_INFINITE; |
|
145 |
subscriber->maxLatency = URT_DELAY_IMMEDIATE; |
|
146 |
#endif /* URT_CFG_PUBSUB_PROFILING */ |
|
147 |
return; |
|
148 |
} |
|
123 | 149 |
|
124 | 150 |
/** |
125 | 151 |
* @brief Subscribes the subscriber to a topic. |
... | ... | |
196 | 222 |
* |
197 | 223 |
* @param[in] subscriber The SRT subscriber to initialize. Must not be NULL. |
198 | 224 |
*/ |
199 |
void urtFrtSubscriberInit(urt_frtsubscriber_t* subscriber){return URT_STATUS_OK;} |
|
225 |
void urtFrtSubscriberInit(urt_frtsubscriber_t* subscriber) |
|
226 |
{ |
|
227 |
subscriber->base.topic = NULL; |
|
228 |
urtEventListenerInit(subscriber->base.evtListener); |
|
229 |
subscriber->base.lastMessage = NULL; |
|
230 |
subscriber->base.lastMessageTime = 0; |
|
231 |
|
|
232 |
#if (URT_CFG_PUBSUB_PROFILING) |
|
233 |
subscriber->base.sumLatencies = 0; |
|
234 |
subscriber->base.numMessagesReceived = 0; |
|
235 |
#endif /* URT_CFG_PUBSUB_PROFILING */ |
|
236 |
|
|
237 |
#if (URT_CFG_PUBSUB_QOS_DEADLINECHECKS) |
|
238 |
subscriber->deadlineOffset = 0; |
|
239 |
#endif /* URT_CFG_PUBSUB_QOS_DEADLINECHECKS */ |
|
240 |
|
|
241 |
#if (URT_CFG_PUBSUB_QOS_JITTERCHECKS) |
|
242 |
subscriber->maxJitter = 0; |
|
243 |
#endif /* URT_CFG_PUBSUB_QOS_JITTERCHECKS */ |
|
244 |
|
|
245 |
#if (URT_CFG_PUBSUB_QOS_JITTERCHECKS || URT_CFG_PUBSUB_PROFILING) |
|
246 |
subscriber->minLatency = URT_DELAY_INFINITE; |
|
247 |
subscriber->maxLatency = URT_DELAY_IMMEDIATE; |
|
248 |
#endif /* URT_CFG_PUBSUB_QOS_JITTERCHECKS || URT_CFG_PUBSUB_PROFILING */ |
|
249 |
return; |
|
250 |
} |
|
251 |
|
|
200 | 252 |
|
201 | 253 |
/** |
202 | 254 |
* @brief Subscribes the subscriber to a topic. |
... | ... | |
260 | 312 |
/** |
261 | 313 |
* @brief Unsubscribes from a subscriber. |
262 | 314 |
* |
263 |
* @param[in] subscriber The NRT subscriber to be unsubscribed. Must not be NULL.
|
|
315 |
* @param[in] subscriber The FRT subscriber to be unsubscribed. Must not be NULL.
|
|
264 | 316 |
* |
265 | 317 |
* @return Returns URT_STATUS_OK on sucess. |
266 | 318 |
* Returns URT_STATUS_UNSUBSCRIBE_NOTOPIC if the subscriber is not associated to a topic. |
... | ... | |
273 | 325 |
* |
274 | 326 |
* @param[in] subscriber The HRT subscriber to initialize. Must not be NULL. |
275 | 327 |
*/ |
276 |
void urtHrtSubscriberInit(urt_hrtsubscriber_t* subscriber){return;} |
|
328 |
void urtHrtSubscriberInit(urt_hrtsubscriber_t* subscriber) |
|
329 |
{ |
|
330 |
subscriber->base.topic = NULL; |
|
331 |
urtEventListenerInit(subscriber->base.evtListener); |
|
332 |
subscriber->base.lastMessage = NULL; |
|
333 |
subscriber->base.lastMessageTime = 0; |
|
334 |
|
|
335 |
#if (URT_CFG_PUBSUB_PROFILING) |
|
336 |
subscriber->base.sumLatencies = 0; |
|
337 |
subscriber->base.numMessagesReceived = 0; |
|
338 |
#endif /* URT_CFG_PUBSUB_PROFILING */ |
|
339 |
|
|
340 |
subscriber->next = NULL; |
|
341 |
|
|
342 |
#if (URT_CFG_PUBSUB_QOS_DEADLINECHECKS) |
|
343 |
subscriber->deadlineOffset = 0; |
|
344 |
urtTimerInit(subscriber->qodDeadlineTimer); |
|
345 |
#endif /* URT_CFG_PUBSUB_QOS_DEADLINECHECKS */ |
|
346 |
|
|
347 |
#if (URT_CFG_PUBSUB_QOS_RATECHECKS) |
|
348 |
subscriber->expectedRate = 0; |
|
349 |
#endif /* URT_CFG_PUBSUB_QOS_RATECHECKS */ |
|
350 |
|
|
351 |
#if (URT_CFG_PUBSUB_QOS_JITTERCHECKS) |
|
352 |
subscriber->maxJitter = 0; |
|
353 |
#endif /* URT_CFG_PUBSUB_QOS_JITTERCHECKS */ |
|
354 |
|
|
355 |
#if (URT_CFG_PUBSUB_QOS_JITTERCHECKS || URT_CFG_PUBSUB_PROFILING) |
|
356 |
subscriber->minLatency = URT_DELAY_INFINITE; |
|
357 |
subscriber->maxLatency = URT_DELAY_IMMEDIATE; |
|
358 |
#endif /* URT_CFG_PUBSUB_QOS_JITTERCHECKS || URT_CFG_PUBSUB_PROFILING */ |
|
359 |
return; |
|
360 |
} |
|
361 |
|
|
277 | 362 |
|
278 | 363 |
/** |
279 | 364 |
* @brief Subscribes the subscriber to a topic. |
280 | 365 |
* |
281 |
* @param[in] subscriber The NRT subscriber which shall subscribe to a topic. Must not be NULL.
|
|
366 |
* @param[in] subscriber The HRT subscriber which shall subscribe to a topic. Must not be NULL.
|
|
282 | 367 |
* @param[in] topic The topic to subscribe to. Must not be NULL. |
283 | 368 |
* @param[in] messages NULL terminated list of messages to contribute to the topic. |
284 | 369 |
* Messages must not be associated to another topic. |
Also available in: Unified diff