message_definition_t::message_definition_t(
const std::string bus,
uint32_t id,
- bool is_fd,
- message_format_t format,
+ uint32_t flags,
frequency_clock_t frequency_clock,
bool force_send_changed,
- const std::vector<std::shared_ptr<signal_t> >& signals)
+ const vect_ptr_signal_t& signals)
: parent_{nullptr},
bus_{bus},
id_{id},
- is_fd_(is_fd),
- format_{format},
+ flags_{flags},
frequency_clock_{frequency_clock},
force_send_changed_{force_send_changed},
last_value_{CAN_MESSAGE_SIZE},
uint32_t id,
const std::string name,
uint32_t length,
- bool is_fd,
- message_format_t format,
+ uint32_t flags,
frequency_clock_t frequency_clock,
bool force_send_changed,
- const std::vector<std::shared_ptr<signal_t> >& signals)
+ const vect_ptr_signal_t& signals)
: parent_{nullptr},
bus_{bus},
id_{id},
name_{name},
length_{length},
- is_fd_(is_fd),
- format_{format},
+ flags_{flags},
frequency_clock_{frequency_clock},
force_send_changed_{force_send_changed},
last_value_{CAN_MESSAGE_SIZE},
.get_can_device_name(bus_);
}
+const std::string message_definition_t::get_name() const{
+ return name_;
+}
+
uint32_t message_definition_t::get_id() const
{
- return id_;
+ return ((id_ & CAN_SFF_MASK) != id_) ? id_ | CAN_EFF_FLAG : id_;
}
bool message_definition_t::is_fd() const
{
- return is_fd_;
+ return (flags_ & CAN_PROTOCOL_WITH_FD_FRAME);
}
bool message_definition_t::is_j1939() const
{
- if(format_ == message_format_t::J1939)
- {
- return true;
- }
- else
- {
- return false;
- }
+ return (flags_ & J1939_PROTOCOL);
+}
+
+bool message_definition_t::is_isotp() const
+{
+ return (flags_ & ISOTP_PROTOCOL);
}
-std::vector<std::shared_ptr<signal_t>>& message_definition_t::get_signals()
+vect_ptr_signal_t& message_definition_t::get_signals()
{
return signals_;
}
return length_;
}
-message_format_t message_definition_t::get_format() const
+uint32_t message_definition_t::get_flags() const
{
- return format_;
-}
\ No newline at end of file
+ return flags_;
+}
+
+bool message_definition_t::frame_layout_is_bigendian() const{
+ return (flags_ & FRAME_LAYOUT_IS_BIGENDIAN);
+}