21 #ifndef mia_core_threadedmsg_hh
22 #define mia_core_threadedmsg_hh
63 template <
typename OS>
64 static void set_master_stream(OS& master);
66 template <
typename OS,
typename placeholder>
friend struct __dispatch_set_master_stream;
68 static void do_set_master_stream(std::ostream& master);
90 template <
typename OS,
typename placeholder>
91 struct __dispatch_set_master_stream {
92 static void apply(OS &master){
93 CThreadMsgStream::do_set_master_stream(master);
98 template <
typename placeholder>
101 static_assert(
sizeof(placeholder) == 0,
102 "CThreadMsgStream can't be used as master stream because it would deadlock.");
108 template <
typename OS>
111 __dispatch_set_master_stream<OS, int>::apply(master);