mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-07-05 03:50:35 +08:00
NetworkCompatibilityChecker: num_failed_nodes moved to NetworkCompatibilityCheckResult
This commit is contained in:
@@ -17,6 +17,12 @@ namespace uavcan
|
||||
struct UAVCAN_EXPORT NetworkCompatibilityCheckResult
|
||||
{
|
||||
NodeID conflicting_node;
|
||||
uint8_t num_failed_nodes;
|
||||
|
||||
NetworkCompatibilityCheckResult()
|
||||
: num_failed_nodes(0)
|
||||
{ }
|
||||
|
||||
bool isOk() const { return !conflicting_node.isValid(); }
|
||||
};
|
||||
|
||||
@@ -40,7 +46,6 @@ class UAVCAN_EXPORT NetworkCompatibilityChecker : Noncopyable
|
||||
NodeIDMask nid_mask_checked_;
|
||||
NetworkCompatibilityCheckResult result_;
|
||||
DataTypeKind checking_dtkind_;
|
||||
uint8_t num_failed_nodes_;
|
||||
bool last_cats_request_ok_;
|
||||
|
||||
INode& getNode() { return ns_sub_.getNode(); }
|
||||
@@ -64,14 +69,11 @@ public:
|
||||
: ns_sub_(node)
|
||||
, cats_cln_(node)
|
||||
, checking_dtkind_(DataTypeKindService)
|
||||
, num_failed_nodes_(0)
|
||||
, last_cats_request_ok_(false)
|
||||
{ }
|
||||
|
||||
int execute();
|
||||
|
||||
uint8_t getNumFailedNodes() const { return num_failed_nodes_; }
|
||||
|
||||
const NetworkCompatibilityCheckResult& getResult() const { return result_; }
|
||||
|
||||
static int publishGlobalDiscoveryRequest(INode& node);
|
||||
|
||||
@@ -132,7 +132,6 @@ int NetworkCompatibilityChecker::checkOneNode(NodeID nid)
|
||||
int NetworkCompatibilityChecker::checkNodes()
|
||||
{
|
||||
(void)nid_mask_checked_.reset();
|
||||
num_failed_nodes_ = 0;
|
||||
result_ = NetworkCompatibilityCheckResult();
|
||||
|
||||
while (result_.isOk())
|
||||
@@ -142,7 +141,7 @@ int NetworkCompatibilityChecker::checkNodes()
|
||||
{
|
||||
UAVCAN_TRACE("NodeInitializer", "Checking nid=%i", int(nid.get()));
|
||||
const int res = checkOneNode(nid);
|
||||
num_failed_nodes_ += (res < 0) ? 1U : 0U;
|
||||
result_.num_failed_nodes += (res < 0) ? 1U : 0U;
|
||||
UAVCAN_TRACE("NodeInitializer", "Checked nid=%i result=%i", int(nid.get()), res);
|
||||
}
|
||||
else { break; }
|
||||
|
||||
@@ -100,7 +100,8 @@ TEST(NetworkCompatibilityChecker, RequestTimeout)
|
||||
ASSERT_EQ(0, ni.execute());
|
||||
|
||||
// The one (and only) node has failed
|
||||
ASSERT_EQ(1, ni.getNumFailedNodes());
|
||||
ASSERT_EQ(1, ni.getResult().num_failed_nodes);
|
||||
ASSERT_TRUE(ni.getResult().isOk());
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user