21 template<
class ProcessingRules>
inline
23 : processing_rules(proc_rules) {
29 msg_processor<ProcessingRules>::read_msg_into_buff(SktT &src_skt, msg_buffer_t &buff)
noexcept(
false) {
30 return src_skt.
template read<msg_details_t>(buff);
34 template<
class SktT,
class LatencyTimestamps>
35 inline typename std::enable_if<
std::is_class<
typename LatencyTimestamps::period>::value,
bool>::
type
38 if (!read_msg_into_buff(src_skt, buff)) {
39 const typename LatencyTimestamps::period t(ts);
40 return processing_rules.process_msg(buff, src_skt, dest_skt);
47 template<
class SktT,
class ClientCxn,
class LatencyTimestamps>
48 inline typename std::enable_if<
std::is_class<
typename LatencyTimestamps::period>::value,
bool>::
type
51 if (!read_msg_into_buff(src_skt, buff)) {
52 const typename LatencyTimestamps::period t(ts);
53 return processing_rules.process_msg(buff, src_skt, dest_cxn);
59 template<
class ProcessingRules>
inline std::string
61 std::ostringstream ss;
63 <<ppd::api_threading_traits<ppd::platform_api, ppd::sequential_mode>::demangle_name(
typeid(*
this))
64 <<
",\nprocessing_rules: "<<processing_rules;
68 template<
class ProcessingRules>
inline std::ostream &
69 operator<<(
std::ostream &os,
msg_processor<ProcessingRules>
const &ec)
noexcept(
false) {