[doc] Add positioner_class_diagram_simple.plant
This is a simplified, and somewhat more readable version of positioner_class_diagram.uxf.
This commit is contained in:
parent
759db45a50
commit
36966148f3
|
@ -11,8 +11,8 @@ List of figures provided with the OwlPS distribution
|
|||
- PNG conversion command (assuming ``plantuml`` is an alias for
|
||||
``java -jar /path/to/plantuml.jar``):
|
||||
``` plantuml -tpng owlps_sequence_diagram.plant
|
||||
PlantUML also allow to generate SVG or EPS (which in turn can be
|
||||
converted to PDF with [Inkscape http://inkscape.org/] or
|
||||
PlantUML also allows one to generate SVG or EPS (which in turn can
|
||||
be converted to PDF with [Inkscape http://inkscape.org/] or
|
||||
[epstopdf http://ctan.org/pkg/epstopdf], respectively).
|
||||
|
||||
: **OwlPS Positioner's input and output facilities**
|
||||
|
@ -27,6 +27,13 @@ List of figures provided with the OwlPS distribution
|
|||
- PDF conversion command:
|
||||
``` umlet -action=convert -format=pdf -filename=positioner_class_diagram.uxf
|
||||
|
||||
: **OwlPS Positioner's simplified class diagram**
|
||||
- File name: ``positioner_class_diagram_simple.plant``
|
||||
- Format: [PlantUML http://plantuml.sourceforge.net/]
|
||||
- PNG conversion command (see the explanations for the aggregation
|
||||
sequence diagram above):
|
||||
``` plantuml -tpng positioner_class_diagram_simple.plant
|
||||
|
||||
: **OwlPS Positioner's internal process**
|
||||
- File name: ``positioner_process.dot``
|
||||
- Format: [Graphviz http://www.graphviz.org/]
|
||||
|
|
|
@ -0,0 +1,208 @@
|
|||
@startuml
|
||||
|
||||
'''''''''''''''''''
|
||||
' Syntax reminder '
|
||||
'''''''''''''''''''
|
||||
'
|
||||
' <|-- ' Extension
|
||||
' *-- ' Composition
|
||||
' o-- ' Agregation
|
||||
'
|
||||
' Orientation of the links:
|
||||
' 2 dashes: vertical
|
||||
' 1 dash: horizontal
|
||||
|
||||
|
||||
''''''''''''''
|
||||
' Parameters '
|
||||
''''''''''''''
|
||||
|
||||
hide empty members
|
||||
|
||||
title (Somewhat simplified) OwlPS Positioner's class diagram
|
||||
|
||||
|
||||
''''''''''''''
|
||||
' Executable '
|
||||
''''''''''''''
|
||||
|
||||
class "owlps-positionerd" as owlps_positionerd << (X, orchid) executable >>
|
||||
|
||||
owlps_positionerd *-- Positioning
|
||||
|
||||
|
||||
'''''''''''''''''''''
|
||||
' Utilitary classes '
|
||||
'''''''''''''''''''''
|
||||
|
||||
' Note: for the sake of clarity, PosUtil and posexcept are not
|
||||
' associated with the other classes, but they should actually be
|
||||
' linked with pretty much all of them.
|
||||
|
||||
package "Utilitary classes" {
|
||||
class PosUtil << static >>
|
||||
note top
|
||||
The functions of <i>PosUtil</i> are
|
||||
used by too many classes to
|
||||
link them all in this diagram
|
||||
end note
|
||||
|
||||
class posexcept
|
||||
note bottom
|
||||
<i>posexcept</i> is the super-class of
|
||||
a bunch of exception classes that
|
||||
do not appear in this diagram
|
||||
end note
|
||||
|
||||
' Text file reading and writing
|
||||
class TextFileWriter
|
||||
class TextFileReader
|
||||
CSVFileReader <|-- TextFileReader
|
||||
}
|
||||
|
||||
|
||||
'''''''''''''''''''''''''
|
||||
' Configuration classes '
|
||||
'''''''''''''''''''''''''
|
||||
|
||||
package "Configuration classes" {
|
||||
class Configuration << static >>
|
||||
UserInterface ..> Configuration
|
||||
}
|
||||
|
||||
owlps_positionerd *-- UserInterface
|
||||
Configuration <.. Positioning
|
||||
|
||||
|
||||
''''''''''''''''''''''
|
||||
' Data input classes '
|
||||
''''''''''''''''''''''
|
||||
|
||||
package "Data input classes" {
|
||||
class InputDataReader
|
||||
MobilesReaderCSV <.. InputDataReader
|
||||
CapturePointsReaderCSV <.. InputDataReader
|
||||
TopologyReaderCSV <.. InputDataReader
|
||||
}
|
||||
|
||||
owlps_positionerd *-- InputDataReader
|
||||
UserInterface --> InputDataReader
|
||||
|
||||
CSVFileReader <-- MobilesReaderCSV
|
||||
CSVFileReader <-- CapturePointsReaderCSV
|
||||
CSVFileReader <-- TopologyReaderCSV
|
||||
|
||||
|
||||
'''''''''''''''''
|
||||
' Input classes '
|
||||
'''''''''''''''''
|
||||
|
||||
package "Input classes" {
|
||||
class Input
|
||||
|
||||
abstract InputMedium --* Input
|
||||
InputCSV --|> InputMedium
|
||||
InputUDPSocket --|> InputMedium
|
||||
|
||||
abstract InputLogMedium --* Input
|
||||
InputLogCSV --|> InputLogMedium
|
||||
}
|
||||
|
||||
Input --* Positioning
|
||||
InputMedium <-- InputDataReader
|
||||
|
||||
CSVFileReader <-- InputCSV
|
||||
TextFileWriter <-- InputLogCSV
|
||||
|
||||
|
||||
'''''''''''''''''''''''''''''''''
|
||||
' Positioning algorithm classes '
|
||||
'''''''''''''''''''''''''''''''''
|
||||
|
||||
package "Positioning algorithm classes" {
|
||||
abstract PositioningAlgorithm
|
||||
|
||||
RealPosition --|> PositioningAlgorithm
|
||||
|
||||
abstract TrilaterationAlgorithm --|> PositioningAlgorithm
|
||||
InterlinkNetworks --|> TrilaterationAlgorithm
|
||||
FBCM --|> TrilaterationAlgorithm
|
||||
abstract TrilaterationMethod <-- TrilaterationAlgorithm
|
||||
MinMax --|> TrilaterationMethod
|
||||
|
||||
abstract CartographyAlgorithm --|> PositioningAlgorithm
|
||||
NSS --|> CartographyAlgorithm
|
||||
|
||||
FRBHMBasic --|> FBCM
|
||||
FRBHMBasic --|> NSS
|
||||
}
|
||||
|
||||
PositioningAlgorithm <.. Positioning
|
||||
|
||||
|
||||
''''''''''''''''''
|
||||
' Output classes '
|
||||
''''''''''''''''''
|
||||
|
||||
package "Output classes" {
|
||||
class Output
|
||||
abstract OutputMedium --* Output
|
||||
OutputCSV --|> OutputMedium
|
||||
OutputTerminal --|> OutputMedium
|
||||
abstract OutputNetworkSocket --|> OutputMedium
|
||||
OutputUDPSocket --|> OutputNetworkSocket
|
||||
OutputTCPSocketEvAAL --|> OutputNetworkSocket
|
||||
}
|
||||
|
||||
Output --* Positioning
|
||||
TextFileWriter <-- OutputCSV
|
||||
|
||||
|
||||
''''''''''''''''
|
||||
' Data classes '
|
||||
''''''''''''''''
|
||||
|
||||
package "Data classes" {
|
||||
class Stock << static >>
|
||||
|
||||
' Points
|
||||
class Point3D
|
||||
Waypoint --|> Point3D
|
||||
ReferencePoint --|> Point3D
|
||||
ReferencePoint --o Stock
|
||||
|
||||
' Deployment area
|
||||
Building --o Stock
|
||||
Area --o Building
|
||||
Waypoint --o Stock
|
||||
Waypoint -- Area
|
||||
Waypoint -- Building
|
||||
|
||||
' Devices
|
||||
WifiDevice <|-- Mobile
|
||||
Mobile --o Stock
|
||||
WifiDevice <|-- CapturePoint
|
||||
CapturePoint --o Stock
|
||||
|
||||
' Requests & results
|
||||
Request <-- InputMedium
|
||||
Mobile <-- Request
|
||||
Timestamp --* Request
|
||||
Measurement --* Request
|
||||
Measurement -- CapturePoint
|
||||
Result -- Request
|
||||
Result *-- Point3D
|
||||
ResultList *-- Result
|
||||
CalibrationRequest --|> Request
|
||||
ReferencePoint -- CalibrationRequest
|
||||
Direction --* CalibrationRequest
|
||||
}
|
||||
|
||||
owlps_positionerd o-- Stock
|
||||
ReferencePoint <-- Positioning
|
||||
ResultList <-- Output
|
||||
|
||||
|
||||
@enduml
|
||||
|
||||
' vim: tw=0
|
Loading…
Reference in New Issue