Revision dd31cb03 doc/classdiagrams/pubsub.uml

View differences:

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