mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-10-19 20:53:33 +08:00
DataTypeDescriptor got name_
This commit is contained in:
@@ -87,33 +87,49 @@ public:
|
||||
};
|
||||
|
||||
|
||||
struct DataTypeDescriptor
|
||||
class DataTypeDescriptor
|
||||
{
|
||||
DataTypeKind kind_;
|
||||
uint16_t id_;
|
||||
DataTypeSignature signature_;
|
||||
const char* name_;
|
||||
|
||||
public:
|
||||
enum { MaxDataTypeID = Frame::MaxDataTypeID };
|
||||
|
||||
DataTypeKind kind;
|
||||
uint16_t id;
|
||||
DataTypeSignature signature;
|
||||
|
||||
DataTypeDescriptor()
|
||||
: kind(DataTypeKind(0))
|
||||
, id(0)
|
||||
, signature(DataTypeSignature::zero())
|
||||
: kind_(DataTypeKind(0))
|
||||
, id_(0)
|
||||
, signature_(DataTypeSignature::zero())
|
||||
, name_("")
|
||||
{ }
|
||||
|
||||
DataTypeDescriptor(DataTypeKind kind, uint16_t id, const DataTypeSignature& signature)
|
||||
: kind(kind)
|
||||
, id(id)
|
||||
, signature(signature)
|
||||
DataTypeDescriptor(DataTypeKind kind, uint16_t id, const DataTypeSignature& signature, const char* name)
|
||||
: kind_(kind)
|
||||
, id_(id)
|
||||
, signature_(signature)
|
||||
, name_(name)
|
||||
{
|
||||
assert(id <= MaxDataTypeID);
|
||||
assert(kind < NumDataTypeKinds);
|
||||
assert(name);
|
||||
}
|
||||
|
||||
DataTypeKind getKind() const { return kind_; }
|
||||
uint16_t getID() const { return id_; }
|
||||
const DataTypeSignature& getSignature() const { return signature_; }
|
||||
const char* getName() const { return name_; }
|
||||
|
||||
std::string toString() const;
|
||||
|
||||
bool operator!=(const DataTypeDescriptor& rhs) const { return !operator==(rhs); }
|
||||
bool operator==(const DataTypeDescriptor& rhs) const
|
||||
{
|
||||
return (kind == rhs.kind) && (id == rhs.id) && (signature == rhs.signature);
|
||||
return
|
||||
(kind_ == rhs.kind_) &&
|
||||
(id_ == rhs.id_) &&
|
||||
(signature_ == rhs.signature_) &&
|
||||
!std::strcmp(name_, rhs.name_);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -32,7 +32,7 @@ class Dispatcher : Noncopyable
|
||||
bool operator()(const TransferListenerBase* listener) const
|
||||
{
|
||||
assert(listener);
|
||||
return id_ > listener->getDataTypeDescriptor().id;
|
||||
return id_ > listener->getDataTypeDescriptor().getID();
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -95,7 +95,7 @@ class TransferListenerBase : public LinkedListNode<TransferListenerBase>
|
||||
protected:
|
||||
TransferListenerBase(const DataTypeDescriptor& data_type)
|
||||
: data_type_(data_type)
|
||||
, crc_base_(data_type.signature.toTransferCRC())
|
||||
, crc_base_(data_type.getSignature().toTransferCRC())
|
||||
{ }
|
||||
|
||||
virtual ~TransferListenerBase() { }
|
||||
|
||||
@@ -31,7 +31,7 @@ public:
|
||||
: max_transfer_interval_(max_transfer_interval)
|
||||
, data_type_(data_type)
|
||||
, qos_(qos)
|
||||
, crc_base_(data_type.signature.toTransferCRC())
|
||||
, crc_base_(data_type.getSignature().toTransferCRC())
|
||||
, dispatcher_(dispatcher)
|
||||
{ }
|
||||
|
||||
|
||||
Reference in New Issue
Block a user