Repository navigation
Conversation
A program that hosts the core attaches FreezeFrameCapture to its own fault events and gets freeze frames in the fault detail, read through the same plugin data path as GET /{entity}/data. The ROS node keeps its parameters and frames and feeds the same class from the fault manager's events topic.
…ateway-core-10-core-freeze-frames # Conflicts: # src/ros2_medkit_gateway/README.md
FaultEventFanOut subscribes upstream once and gives each consumer its own branch, so the fault SSE stream and the freeze-frame capture can share a host's single FaultEventSource. The ROS-free check drives both from one source and requires the confirmation in the SSE stream and as a freeze frame.
…s deleted The branch is held by pointer and registered by address, so copying or moving it is never valid.
…ateway-core-10-core-freeze-frames
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Pull Request
Summary
FreezeFrameCapturein the core captures the data of the entity a fault belongs to when the fault is confirmed, and serves it throughFreezeFrameSource(environment_dataof the fault). It is fed by aFaultEventSourceand reads data the way the data route does. The node'sEntityFreezeFrameCaptureis now an adapter over it and keeps its parameters and behaviour.FaultEventFanOutlets oneFaultEventSourceserve several subscribers, for example the fault SSE stream and the capture, becausesubscribereplaces an earlier callback.Issue
Type
Testing
scripts/check_cores_without_ros/run.sh: a confirmation captures the value at the moment of confirmation, the bound evicts the oldest fault, and one event source shared through the fan-out reaches both the SSE stream and the capture../scripts/test.sh integ --packages-select ros2_medkit_integration_testscovers the node path (test_entity_freeze_frame,test_standing_fault_freeze_frame).Checklist