Skip to content

Commit

Permalink
iox-eclipse-iceoryx#982 Add StatusPort .puml diagram
Browse files Browse the repository at this point in the history
Signed-off-by: Simon Hoinkis <simon.hoinkis@apex.ai>
  • Loading branch information
mossmaurice committed Feb 3, 2022
1 parent 2c5f6a2 commit 5306043
Show file tree
Hide file tree
Showing 2 changed files with 162 additions and 0 deletions.
51 changes: 51 additions & 0 deletions doc/design/diagrams/status-port/status-port-overview.puml
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
@startuml

title StatusPort overview

skinparam classAttributeIconSize 0

enum ActiveChunk {
FIRST
SECOND
}

class Transaction {
+activeChunk: ActiveChunk
+abaCounter: uint32_t
}

class StatusPortData {
+latestTransaction: std::atomic<Transaction>
+serviceDescription: capro::ServiceDescription
+chunks: SharedChunk[2]
}

class StatusPortReader<T> {
+StatusPortReader(statusPortDataPtr: cxx::not_null<StatusPortData* const)
+take(callable: cxx::function_ref<void(const T&)>): void
' Open question if copyTake() is wanted
'copyTake(callable: cxx::function_ref<void(const T&)>): void)
-getMembers() const: const StatusPortData*
-getMembers(): StatusPortData*
-enableEvent(triggerHandle: iox::popo::TriggerHandle&&, event: const MyTriggerClassEvents): void
-disableEvent(event: const MyTriggerClassEvents): void
' Some more methods need to be implemented in the StatusPortReader to be attachable to a Listener
' See https://github.com/eclipse-iceoryx/iceoryx/blob/master/iceoryx_examples/waitset/ice_waitset_trigger.cpp
' Open question if copyTake() is wanted
'-m_copyOfUserData: T
-m_statusPortDataPtr: StatusPortData*
}


class StatusPortWriter<T> {
+StatusPortWriter(statusPortDataPtr: cxx::not_null<StatusPortData* const)
+store(callable: cxx::function_ref<void(T&)>): void
-getMembers() const: const StatusPortData*
-getMembers(): StatusPortData*
-m_statusPortDataPtr: StatusPortData*
}

StatusPortWriter ..> StatusPortData
StatusPortReader ..> StatusPortData

@enduml
111 changes: 111 additions & 0 deletions doc/design/diagrams/status-port/status-port-overview.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit 5306043

Please sign in to comment.