-
- Downloads
[Core] Changed MessageBroker subscription handling and Module creation and handling
- modules are instanciated as shared pointers and so have to be stored somewhere in order to keep the module active. This explicity asks the user to keep track of the module. - Implemented responsibility delegation from MessageBroker to subscriber to maintain subscription active. This is achieved by creating an object of type Subscription and then returning to the user. This object that is returned as a unique_ptr will unsubscribe automatically from the message broker preventing the program to crash when a module is deleted and it didn't manually unsubscribe as it happened before.
Showing
- src/shared/Core/MessageBroker/MessageBroker.cpp 17 additions, 25 deletionssrc/shared/Core/MessageBroker/MessageBroker.cpp
- src/shared/Core/MessageBroker/MessageBroker.h 13 additions, 17 deletionssrc/shared/Core/MessageBroker/MessageBroker.h
- src/shared/Core/MessageBroker/Subscription.h 28 additions, 0 deletionssrc/shared/Core/MessageBroker/Subscription.h
- src/shared/Core/SkywardHubCore.cpp 1 addition, 1 deletionsrc/shared/Core/SkywardHubCore.cpp
- src/shared/Core/Window/Window.cpp 15 additions, 18 deletionssrc/shared/Core/Window/Window.cpp
- src/shared/Core/Window/Window.h 8 additions, 5 deletionssrc/shared/Core/Window/Window.h
- src/shared/Modules/ARPStateViewer/ARPStateViewer.cpp 3 additions, 8 deletionssrc/shared/Modules/ARPStateViewer/ARPStateViewer.cpp
- src/shared/Modules/ARPStateViewer/ARPStateViewer.h 3 additions, 0 deletionssrc/shared/Modules/ARPStateViewer/ARPStateViewer.h
- src/shared/Modules/CommandPad/CommandPad.cpp 1 addition, 0 deletionssrc/shared/Modules/CommandPad/CommandPad.cpp
- src/shared/Modules/CompactCommandPad/CompactCommandPad.cpp 2 additions, 0 deletionssrc/shared/Modules/CompactCommandPad/CompactCommandPad.cpp
- src/shared/Modules/FileStream/FileStreamModule.cpp 27 additions, 24 deletionssrc/shared/Modules/FileStream/FileStreamModule.cpp
- src/shared/Modules/FileStream/FileStreamModule.h 4 additions, 1 deletionsrc/shared/Modules/FileStream/FileStreamModule.h
- src/shared/Modules/Graph/Graph.cpp 3 additions, 4 deletionssrc/shared/Modules/Graph/Graph.cpp
- src/shared/Modules/Graph/Graph.h 3 additions, 0 deletionssrc/shared/Modules/Graph/Graph.h
- src/shared/Modules/IncomingMessagesViewer/IncomingMessagesViewerModule.cpp 24 additions, 14 deletions...s/IncomingMessagesViewer/IncomingMessagesViewerModule.cpp
- src/shared/Modules/IncomingMessagesViewer/IncomingMessagesViewerModule.h 2 additions, 1 deletion...les/IncomingMessagesViewer/IncomingMessagesViewerModule.h
- src/shared/Modules/MainStateViewer/MainStateViewer.cpp 3 additions, 8 deletionssrc/shared/Modules/MainStateViewer/MainStateViewer.cpp
- src/shared/Modules/MainStateViewer/MainStateViewer.h 2 additions, 0 deletionssrc/shared/Modules/MainStateViewer/MainStateViewer.h
- src/shared/Modules/Mavlink/BaseMavlinkModule.cpp 4 additions, 5 deletionssrc/shared/Modules/Mavlink/BaseMavlinkModule.cpp
- src/shared/Modules/ModuleInfo.cpp 3 additions, 2 deletionssrc/shared/Modules/ModuleInfo.cpp
Loading
Please register or sign in to comment