|
Easy Navigation
|
The safety module of easynav_system, on its own: configuration fingerprint, parameter freezer and safety supervisor. More...
#include <sys/resource.h>#include <unistd.h>#include <algorithm>#include <chrono>#include <cmath>#include <cstdlib>#include <filesystem>#include <fstream>#include <iterator>#include <limits>#include <memory>#include <optional>#include <string>#include <utility>#include <vector>#include "gtest/gtest.h"#include "rclcpp/rclcpp.hpp"#include "rclcpp_lifecycle/lifecycle_node.hpp"#include "nav_msgs/msg/odometry.hpp"#include "std_msgs/msg/string.hpp"#include "diagnostic_msgs/msg/diagnostic_status.hpp"#include "easynav_interfaces/msg/heartbeat.hpp"#include "easynav_interfaces/msg/safety_status.hpp"#include "easynav_controller/ControllerNode.hpp"#include "easynav_core/SafetyChannel.hpp"#include "easynav_core/VelocityCommand.hpp"#include "easynav_system/RealTime.hpp"#include "easynav_system/safety/ConfigurationFingerprint.hpp"#include "easynav_system/safety/ParameterFreezer.hpp"#include "easynav_system/safety/SafetySupervisor.hpp"
Classes | |
| class | SafetyModuleTest |
Typedefs | |
| using | Nodes |
| EasyNav nodes by name. | |
Functions | |
| TEST_F (SafetyModuleTest, AnAtomicSetWithOneFrozenChangeIsRejectedWhole) | |
| TEST_F (SafetyModuleTest, AnOldRobotPoseInhibitsMotionInSafetyMode) | |
| TEST_F (SafetyModuleTest, AnOldRobotPoseIsAnErrorOutsideSafetyModeButDoesNotStopTheRobot) | |
| TEST_F (SafetyModuleTest, AnUninitializedParameterChangesTheDump) | |
| TEST_F (SafetyModuleTest, DifferentConfigurationsNeverGiveTheSameDump) | |
| TEST_F (SafetyModuleTest, DisablingTheSafetyStatusOnReconfigureLiftsItsRestrictions) | |
| TEST_F (SafetyModuleTest, DumpDoesNotDependOnDeclarationOrder) | |
| TEST_F (SafetyModuleTest, DumpFileNameIncludesTheNamespace) | |
| TEST_F (SafetyModuleTest, DumpIsReadable) | |
| TEST_F (SafetyModuleTest, DumpListsEveryParameterSortedByNodeAndName) | |
| TEST_F (SafetyModuleTest, DumpListsUninitializedParametersWithoutThrowing) | |
| TEST_F (SafetyModuleTest, FreezingToleratesUninitializedParameters) | |
| TEST_F (SafetyModuleTest, FrozenParametersCannotChange) | |
| TEST_F (SafetyModuleTest, HeartbeatAndRtMonitorParametersAreChecked) | |
| TEST_F (SafetyModuleTest, HeartbeatIsPublishedAtItsPeriodFromTheRtCycle) | |
| TEST_F (SafetyModuleTest, LoadedPluginsComeFromTheTypesParameters) | |
| TEST_F (SafetyModuleTest, LoadedPluginsSkipAnUninitializedTypesParameter) | |
| TEST_F (SafetyModuleTest, LockMemoryFailsToConfigureWithAFiniteMemlockLimit) | |
| TEST_F (SafetyModuleTest, LogDirectoryFollowsRosLogDir) | |
| TEST_F (SafetyModuleTest, MaxPoseAgeIsChecked) | |
| TEST_F (SafetyModuleTest, MemoryLockIsRequestedIndependentlyOfTheSafetyMode) | |
| TEST_F (SafetyModuleTest, NewParametersOnlyWhileConfiguringInSafetyMode) | |
| TEST_F (SafetyModuleTest, NoHeartbeatIfItsPeriodIsZero) | |
| TEST_F (SafetyModuleTest, NoRobotPoseOrNotLocalizedYetOrOffIsNotChecked) | |
| TEST_F (SafetyModuleTest, RtDiagnosticFollowsTheMonitorOutsideSafetyMode) | |
| TEST_F (SafetyModuleTest, SafetyModeFailsToConfigureWithoutRealTimeScheduling) | |
| TEST_F (SafetyModuleTest, SafetyStatusTimeoutIsChecked) | |
| TEST_F (SafetyModuleTest, SaveDumpWritesOnceAndCreatesTheDirectories) | |
| TEST_F (SafetyModuleTest, Sha256MatchesKnownVectors) | |
| TEST_F (SafetyModuleTest, SupervisorChecksTheControllerAgainstTheSafetyLimits) | |
| TEST_F (SafetyModuleTest, SupervisorChecksTheSafetyLimits) | |
| TEST_F (SafetyModuleTest, SupervisorFingerprintsAndFreezesOnlyInSafetyMode) | |
| TEST_F (SafetyModuleTest, SupervisorRequiresTheCommandGuardInSafetyMode) | |
| TEST_F (SafetyModuleTest, SupervisorSavesAndPublishesTheConfiguration) | |
| TEST_F (SafetyModuleTest, TheHeartbeatCarriesTheRtStatus) | |
| TEST_F (SafetyModuleTest, TheHeartbeatIsRequiredInSafetyMode) | |
| TEST_F (SafetyModuleTest, TheRobotPoseAgeIsReportedOnlyOnChanges) | |
| TEST_F (SafetyModuleTest, TheSafetyChannelStateIsWrittenEveryRtCycleAndReportedOnChanges) | |
| TEST_F (SafetyModuleTest, TheSafetyStatusIsRequiredInSafetyMode) | |
| TEST_F (SafetyModuleTest, TooManyLateRtCyclesStopEasyNavInSafetyMode) | |
| TEST_F (SafetyModuleTest, WithoutSafetyStatusThereIsNoRestriction) | |
The safety module of easynav_system, on its own: configuration fingerprint, parameter freezer and safety supervisor.
| using Nodes |
EasyNav nodes by name.
| TEST_F | ( | SafetyModuleTest | , |
| AnAtomicSetWithOneFrozenChangeIsRejectedWhole | ) |
| TEST_F | ( | SafetyModuleTest | , |
| AnOldRobotPoseInhibitsMotionInSafetyMode | ) |
| TEST_F | ( | SafetyModuleTest | , |
| AnOldRobotPoseIsAnErrorOutsideSafetyModeButDoesNotStopTheRobot | ) |
| TEST_F | ( | SafetyModuleTest | , |
| AnUninitializedParameterChangesTheDump | ) |
| TEST_F | ( | SafetyModuleTest | , |
| DifferentConfigurationsNeverGiveTheSameDump | ) |
| TEST_F | ( | SafetyModuleTest | , |
| DisablingTheSafetyStatusOnReconfigureLiftsItsRestrictions | ) |
| TEST_F | ( | SafetyModuleTest | , |
| DumpDoesNotDependOnDeclarationOrder | ) |
| TEST_F | ( | SafetyModuleTest | , |
| DumpFileNameIncludesTheNamespace | ) |
| TEST_F | ( | SafetyModuleTest | , |
| DumpIsReadable | ) |
| TEST_F | ( | SafetyModuleTest | , |
| DumpListsEveryParameterSortedByNodeAndName | ) |
| TEST_F | ( | SafetyModuleTest | , |
| DumpListsUninitializedParametersWithoutThrowing | ) |
| TEST_F | ( | SafetyModuleTest | , |
| FreezingToleratesUninitializedParameters | ) |
| TEST_F | ( | SafetyModuleTest | , |
| FrozenParametersCannotChange | ) |
| TEST_F | ( | SafetyModuleTest | , |
| HeartbeatAndRtMonitorParametersAreChecked | ) |
| TEST_F | ( | SafetyModuleTest | , |
| HeartbeatIsPublishedAtItsPeriodFromTheRtCycle | ) |
| TEST_F | ( | SafetyModuleTest | , |
| LoadedPluginsComeFromTheTypesParameters | ) |
| TEST_F | ( | SafetyModuleTest | , |
| LoadedPluginsSkipAnUninitializedTypesParameter | ) |
| TEST_F | ( | SafetyModuleTest | , |
| LockMemoryFailsToConfigureWithAFiniteMemlockLimit | ) |
| TEST_F | ( | SafetyModuleTest | , |
| LogDirectoryFollowsRosLogDir | ) |
| TEST_F | ( | SafetyModuleTest | , |
| MaxPoseAgeIsChecked | ) |
| TEST_F | ( | SafetyModuleTest | , |
| MemoryLockIsRequestedIndependentlyOfTheSafetyMode | ) |
| TEST_F | ( | SafetyModuleTest | , |
| NewParametersOnlyWhileConfiguringInSafetyMode | ) |
| TEST_F | ( | SafetyModuleTest | , |
| NoHeartbeatIfItsPeriodIsZero | ) |
| TEST_F | ( | SafetyModuleTest | , |
| NoRobotPoseOrNotLocalizedYetOrOffIsNotChecked | ) |
| TEST_F | ( | SafetyModuleTest | , |
| RtDiagnosticFollowsTheMonitorOutsideSafetyMode | ) |
| TEST_F | ( | SafetyModuleTest | , |
| SafetyModeFailsToConfigureWithoutRealTimeScheduling | ) |
| TEST_F | ( | SafetyModuleTest | , |
| SafetyStatusTimeoutIsChecked | ) |
| TEST_F | ( | SafetyModuleTest | , |
| SaveDumpWritesOnceAndCreatesTheDirectories | ) |
| TEST_F | ( | SafetyModuleTest | , |
| Sha256MatchesKnownVectors | ) |
| TEST_F | ( | SafetyModuleTest | , |
| SupervisorChecksTheControllerAgainstTheSafetyLimits | ) |
| TEST_F | ( | SafetyModuleTest | , |
| SupervisorChecksTheSafetyLimits | ) |
| TEST_F | ( | SafetyModuleTest | , |
| SupervisorFingerprintsAndFreezesOnlyInSafetyMode | ) |
| TEST_F | ( | SafetyModuleTest | , |
| SupervisorRequiresTheCommandGuardInSafetyMode | ) |
| TEST_F | ( | SafetyModuleTest | , |
| SupervisorSavesAndPublishesTheConfiguration | ) |
| TEST_F | ( | SafetyModuleTest | , |
| TheHeartbeatCarriesTheRtStatus | ) |
| TEST_F | ( | SafetyModuleTest | , |
| TheHeartbeatIsRequiredInSafetyMode | ) |
| TEST_F | ( | SafetyModuleTest | , |
| TheRobotPoseAgeIsReportedOnlyOnChanges | ) |
| TEST_F | ( | SafetyModuleTest | , |
| TheSafetyChannelStateIsWrittenEveryRtCycleAndReportedOnChanges | ) |
| TEST_F | ( | SafetyModuleTest | , |
| TheSafetyStatusIsRequiredInSafetyMode | ) |
| TEST_F | ( | SafetyModuleTest | , |
| TooManyLateRtCyclesStopEasyNavInSafetyMode | ) |
| TEST_F | ( | SafetyModuleTest | , |
| WithoutSafetyStatusThereIsNoRestriction | ) |