Statistics
| Branch: | Revision:

urtware / doc / classdiagrams / overview.uml @ 4d55cea4

History | View | Annotate | Download (3.729 KB)

1
/'
2
µRtWare is a lightweight publish/subscribe middleware for real-time
3
applications. It was developed as part of the software habitat for the
4
Autonomous Mini Robot [1] (AMiRo) but can be used for other purposes as well.
5

    
6
Copyright (C) 2018..2020  Thomas Schöpping et al.
7

    
8
This program is free software: you can redistribute it and/or modify
9
it under the terms of the GNU General Public License as published by
10
the Free Software Foundation, either version 3 of the License, or
11
(at your option) any later version.
12

    
13
This program is distributed in the hope that it will be useful,
14
but WITHOUT ANY WARRANTY; without even the implied warranty of
15
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16
GNU General Public License for more details.
17

    
18
You should have received a copy of the GNU General Public License
19
along with this program.  If not, see <http://www.gnu.org/licenses/>.
20
'/
21

    
22
/'### INTRO ##################################################################'/
23

    
24
@startuml
25

    
26
title **µRtWare**\nOverview\n
27

    
28
!include ../functions.iuml
29

    
30
/'### ENTITIES ###############################################################'/
31

    
32
!startsub ENTITIES
33

    
34
$module("Configuration") {
35
  !includesub config.uml!ENTITIES
36
}
37

    
38
$module("Primitives") {
39
  !includesub primitives.uml!ENTITIES
40
}
41

    
42
$module("OSAL") {
43
  !includesub osal.uml!ENTITIES
44
}
45

    
46
$module("Middleware") {
47
  !includesub urtware.uml!ENTITIES
48
}
49

    
50
!endsub
51

    
52
/'### DEPENDENCIES & LAYOUT ##################################################'/
53

    
54
!startsub DEPENDENCIES
55

    
56
!includesub config.uml!DEPENDENCIES
57

    
58
!includesub primitives.uml!DEPENDENCIES
59
urt_nodestage_t ..> urt_config
60
urt_topicid_t ..> urt_config
61
urt_serviceid_t ..> urt_config
62
urt_delay_t ..> urt_config
63

    
64
!includesub osal.uml!DEPENDENCIES
65
urt_osCondvar_t ..> urt_delay_t
66
urt_osThread_t ..> urt_delay_t
67
urt_osThread_t ..> urt_status_t
68
urt_osTimer_t ..> urt_delay_t
69
urt_osTimer_t ..> urt_status_t
70
urt_events ..> urt_delay_t
71
urt_events ..> urt_status_t
72

    
73
!includesub urtware.uml!DEPENDENCIES
74
urt_core_t "1" *-- "1" urt_osEventSource_t
75
urt_core_t "1" *-- "1" urt_osMutex_t
76
urt_core_t ..> urt_status_t
77
urt_core_t ..> urt_nodestage_t
78
urt_node_t "1" o-- "0..1" urt_osThread_t
79
urt_node_t "1" *-- "1" urt_nodestage_t
80
urt_node_t "1" *-- "1" urt_osEventListener_t
81
urt_node_t "0..*" o-- "1" urt_osThreadFunction_t
82
urt_node_t ..> urt_status_t
83
urt_nodeSetupCallback_t ..> urt_osEventMask_t
84
urt_nodeLoopCallback_t ..> urt_osEventMask_t
85
urt_pubsub_t ..> urt_status_t
86
urt_publisher_t ..> urt_config
87
urt_publisher_t ..> urt_status_t
88
urt_publisher_t ..> urt_delay_t
89
urt_topic_t "1" *-- "1" urt_topicid_t
90
urt_topic_t "1" *-- "1" urt_osMutex_t
91
urt_topic_t "1" *-- "1" urt_osEventSource_t
92
urt_topic_t ..> urt_config
93
urt_topic_t "1" *-- "0..1" urt_osTimer_t
94
urt_topic_t ..> urt_status_t
95
urt_message_t "1" *-- "1" urt_osTime_t
96
urt_message_t "1" *-- "1" urt_osMutex_t
97
urt_message_t "1" *-- "1" urt_osCondvar_t
98
urt_message_t ..> urt_config
99
urt_message_t ..> urt_status_t
100
urt_subscriber_t "1" *-- "1" urt_osEventListener_t
101
urt_subscriber_t "1" *-- "1" urt_osTime_t
102
urt_subscriber_t ..> urt_config
103
urt_subscriber_t "1" *-- "0..2" urt_delay_t
104
urt_subscriber_t ..> urt_status_t
105
urt_hrtdata_t ..> urt_config
106
urt_hrtdata_t "1" *-- "0..1" urt_osTimer_t
107
urt_hrtdata_t "1" *-- "0..5" urt_delay_t
108
urt_frtdata_t ..> urt_config
109
urt_frtdata_t "1" *-- "0..1" urt_osTimer_t
110
urt_frtdata_t "1" *-- "0..5" urt_delay_t
111
urt_srtusefulnessfunc_t ..> urt_delay_t
112
urt_rpc_t ..> urt_status_t
113
urt_rpc_t ..> urt_serviceid_t
114
urt_service_t "1" *-- "1" urt_serviceid_t
115
urt_service_t "1" *-- "1" urt_osMutex_t
116
urt_service_t ..> urt_config
117
urt_service_t "1" *-- "0..2" urt_delay_t
118
urt_service_t ..> urt_status_t
119
urt_servicefunc_t ..> urt_delay_t
120
urt_servicefunc_t ..> urt_status_t
121

    
122
!endsub
123

    
124
/'### OUTRO ##################################################################'/
125

    
126
@enduml
127