Revision dd31cb03 doc/classdiagrams/pubsub.uml
doc/classdiagrams/pubsub.uml | ||
---|---|---|
25 | 25 |
|
26 | 26 |
title **µRtWare**\nPublish-Subscribe System |
27 | 27 |
|
28 |
!include ../functions.iuml
|
|
28 |
!include ./functions.iuml |
|
29 | 29 |
|
30 | 30 |
/'### ENTITIES ###############################################################'/ |
31 | 31 |
|
... | ... | |
46 | 46 |
+ {field} numConsumersLeft : unsigned int |
47 | 47 |
__ |
48 | 48 |
'Initializes a urt_message_t object. |
49 |
+ {method} urtMessageInit (message : urt_message_t*, payload : void*) : urt_status_t
|
|
49 |
+ {method} urtMessageInit (message : urt_message_t*, payload : void*) : void
|
|
50 | 50 |
} |
51 | 51 |
|
52 | 52 |
$group("subscriber") { |
... | ... | |
82 | 82 |
+ {field} maxLatency : urt_delay_t |
83 | 83 |
__ |
84 | 84 |
'Initializes a urt_nrtsubscriber_t object. |
85 |
+ {method} urtNrtSubscriberInit (subscriber : urt_nrtsubscriber_t*) : urt_status_t
|
|
85 |
+ {method} urtNrtSubscriberInit (subscriber : urt_nrtsubscriber_t*) : void
|
|
86 | 86 |
'Tries to subscribe to a topic and optionally contributes a list of messages to the topic. |
87 | 87 |
+ {method} urtNrtSubscriberSubscribe (subscriber : urt_nrtsubscriber_t*, topic : urt_topic_t*, messages : urt_message_t*) : urt_status_t |
88 | 88 |
'Fetches the next message in the buffer, optionally copies the payload and optionally returns the latency. |
... | ... | |
106 | 106 |
+ {field} maxLatency : urt_delay_t |
107 | 107 |
__ |
108 | 108 |
'Initializes a urt_srtsubscriber_t object. |
109 |
+ {method} urtSrtSubscriberInit (subscriber : urt_srtsubscriber_t*) : urt_status_t
|
|
109 |
+ {method} urtSrtSubscriberInit (subscriber : urt_srtsubscriber_t*) : void
|
|
110 | 110 |
'Tries to subscribe to a topic, sets all parameters and optionally contributes a list of messages to the topic. |
111 | 111 |
+ {method} urtSrtSubscriberSubscribe (subscriber : urt_srtsubscriber_t*, topic : urt_topic_t*, messages : urt_message_t*, usefulnesscb : urt_srtusefulnessfunc_t*, cbparams : void*) : urt_status_t |
112 | 112 |
'Fetches the next message in the buffer, optionally copies the payload and optionally returns the latency. |
... | ... | |
134 | 134 |
+ {field} maxLatency : urt_delay_t |
135 | 135 |
__ |
136 | 136 |
'Initializes a urt_frtsubscriber_t object. |
137 |
+ {method} urtFrtSubscriberInit (subscriber : urt_frtsubscriber_t*) : urt_status_t
|
|
137 |
+ {method} urtFrtSubscriberInit (subscriber : urt_frtsubscriber_t*) : void
|
|
138 | 138 |
'Tries to subscribe to a topic, sets all parameters and optionally contributes a list of messages to the topic. |
139 | 139 |
+ {method} urtFrtSubscriberSubscribe (subscriber : urt_frtsubscriber_t*, topic : urt_topic_t*, messages : urt_message_t*, deadline : urt_delay_t, jitter : urt_delay_t) : urt_status_t |
140 | 140 |
'Fetches the next message in the buffer, optionally copies the payload and optionally returns the latency. |
... | ... | |
169 | 169 |
+ {field} expectedRate : urt_delay_t |
170 | 170 |
__ |
171 | 171 |
'Initializes a urt_hrtsubscriber_t object. |
172 |
+ {method} urtHrtSubscriberInit (subscriber : urt_hrtsubscriber_t*) : urt_status_t
|
|
172 |
+ {method} urtHrtSubscriberInit (subscriber : urt_hrtsubscriber_t*) : void
|
|
173 | 173 |
'Tries to subscribe to a topic, sets all parameters and optionally contributes a list of messages to the topic. |
174 | 174 |
+ {method} urtHrtSubscriberSubscribe (subscriber : urt_hrtsubscriber_t*, topic : urt_topic_t*, messages : urt_message_t*, deadline : urt_delay_t, rate : urt_delay_t, jitter : urt_delay_t) : urt_status_t |
175 | 175 |
'Fetches the next message in the buffer, optionally copies the payload and optionally returns the latency. |
... | ... | |
192 | 192 |
+ {field} publishFails : uint64_t |
193 | 193 |
__ |
194 | 194 |
'Initializes a urt_publisher_t object and contributes an optional list of messages. |
195 |
+ {method} urtPublisherInit (publisher : urt_publisher_t*, topic : urt_topic_t*, messages : urt_message_t*) : urt_status_t
|
|
195 |
+ {method} urtPublisherInit (publisher : urt_publisher_t*, topic : urt_topic_t*, messages : urt_message_t*) : void
|
|
196 | 196 |
'Publishes a message via the associated topic. |
197 |
+ {method} urtPublisherPublish (publisher : urt_publisher_t*, payload : void*, n : size_t, t : urt_osTime_t, timeout : urt_delay_t) : urt_status_t
|
|
197 |
+ {method} urtPublisherPublish (publisher : urt_publisher_t*, payload : void*, bytes : size_t, t : urt_osTime_t, timeout : urt_delay_t) : urt_status_t
|
|
198 | 198 |
} |
199 | 199 |
|
200 | 200 |
/' Topic type. '/ |
... | ... | |
209 | 209 |
+ {field} evtSource : urt_osEventSource_t |
210 | 210 |
'Number of HRT subscribers. |
211 | 211 |
+ {field} numHrtSubscribers : unsigned int |
212 |
'List of HRT subscribers, orderd by their expected rate (most critical first). |
|
213 |
+ {field} hrtSubscribers : urt_hrtsubscriber_t* |
|
214 | 212 |
'Condition variable to inform waiting publishers when a blocked message becomes available. |
215 | 213 |
+ {field} hrtReleased : urt_osCondvar_t |
216 | 214 |
'Mandatory message, each Topic holds. |
... | ... | |
218 | 216 |
'Pointer to the latest message. |
219 | 217 |
+ {field} latestMessage : urt_message_t* |
220 | 218 |
.. URT_CFG_PUBSUB_QOS_RATECHECKS == true .. |
219 |
'List of HRT subscribers, orderd by their expected rate (most critical first). |
|
220 |
+ {field} hrtSubscribers : urt_hrtsubscriber_t* |
|
221 | 221 |
'Timer to check for missed rates. |
222 | 222 |
+ {field} qosRateTimer : urt_osTimer_t |
223 | 223 |
.. URT_CFG_PUBSUB_PROFILING == true .. |
224 |
'Variable to count how many (non-hrt) subscribers did not fetch a message before it was reused. |
|
225 |
+ {field} numDiscardedMessages : uint64_t |
|
224 |
'Number of overall published messages on this topic. |
|
225 |
+ {field} numMessagesPublished : uint64_t |
|
226 |
'Variable to count how often (non-hrt) subscribers did not fetch a message before it was reused. |
|
227 |
+ {field} numMessagesDiscarded : uint64_t |
|
226 | 228 |
'Number of overall subscribers. |
227 | 229 |
+ {field} numSubscribers : unsigned int |
228 | 230 |
__ |
Also available in: Unified diff