1 /* 2 * SObjectizer-5 3 */ 4 5 /*! 6 * \file 7 * \brief Implementation of some helpers for message tracing. 8 * 9 * \since 10 * v.5.5.22 11 */ 12 13 #include <so_5/impl/msg_tracing_helpers.hpp> 14 15 namespace so_5 { 16 17 namespace impl { 18 19 namespace msg_tracing_helpers { 20 21 namespace details { 22 23 // 24 // actual_trace_data_t 25 // 26 27 optional<current_thread_id_t> tid() const28actual_trace_data_t::tid() const noexcept 29 { 30 return m_tid; 31 } 32 33 optional<const agent_t *> agent() const34actual_trace_data_t::agent() const noexcept 35 { 36 return m_agent; 37 } 38 39 optional<std::type_index> msg_type() const40actual_trace_data_t::msg_type() const noexcept 41 { 42 return m_msg_type; 43 } 44 45 optional<so_5::msg_tracing::msg_source_t> msg_source() const46actual_trace_data_t::msg_source() const noexcept 47 { 48 return m_msg_source; 49 } 50 51 optional<so_5::msg_tracing::message_or_signal_flag_t> message_or_signal() const52actual_trace_data_t::message_or_signal() const noexcept 53 { 54 return m_message_or_signal; 55 } 56 57 optional<so_5::msg_tracing::message_instance_info_t> message_instance_info() const58actual_trace_data_t::message_instance_info() const noexcept 59 { 60 return m_message_instance_info; 61 } 62 63 optional<so_5::msg_tracing::compound_action_description_t> compound_action() const64actual_trace_data_t::compound_action() const noexcept 65 { 66 return m_compound_action; 67 } 68 69 optional<const so_5::impl::event_handler_data_t *> event_handler_data_ptr() const70actual_trace_data_t::event_handler_data_ptr() const noexcept 71 { 72 return m_event_handler_data_ptr; 73 } 74 75 void set_tid(current_thread_id_t tid)76actual_trace_data_t::set_tid( current_thread_id_t tid ) noexcept 77 { 78 m_tid = tid; 79 } 80 81 void set_agent(const agent_t * agent)82actual_trace_data_t::set_agent( const agent_t * agent ) noexcept 83 { 84 m_agent = agent; 85 } 86 87 void set_msg_type(const std::type_index & msg_type)88actual_trace_data_t::set_msg_type( 89 const std::type_index & msg_type ) noexcept 90 { 91 m_msg_type = msg_type; 92 } 93 94 void set_msg_source(so_5::msg_tracing::msg_source_t info)95actual_trace_data_t::set_msg_source( 96 so_5::msg_tracing::msg_source_t info ) noexcept 97 { 98 m_msg_source = info; 99 } 100 101 void set_message_or_signal(so_5::msg_tracing::message_or_signal_flag_t flag)102actual_trace_data_t::set_message_or_signal( 103 so_5::msg_tracing::message_or_signal_flag_t flag ) noexcept 104 { 105 m_message_or_signal = flag; 106 } 107 108 void set_message_instance_info(so_5::msg_tracing::message_instance_info_t info)109actual_trace_data_t::set_message_instance_info( 110 so_5::msg_tracing::message_instance_info_t info ) noexcept 111 { 112 m_message_instance_info = info; 113 } 114 115 void set_compound_action(so_5::msg_tracing::compound_action_description_t desc)116actual_trace_data_t::set_compound_action( 117 so_5::msg_tracing::compound_action_description_t desc ) noexcept 118 { 119 m_compound_action = desc; 120 } 121 122 void set_event_handler_data_ptr(const so_5::impl::event_handler_data_t * ptr)123actual_trace_data_t::set_event_handler_data_ptr( 124 const so_5::impl::event_handler_data_t * ptr ) noexcept 125 { 126 m_event_handler_data_ptr = ptr; 127 } 128 129 } /* namespace details */ 130 131 } /* namespace msg_tracing_helpers */ 132 133 } /* namespace impl */ 134 135 } /* namespace so_5 */ 136 137