00001
00002
00003
00004
00005
00006 ASYS_INLINE ssize_t
00007 ACE_FIFO_Send_Msg::send (const void *buf, size_t len)
00008 {
00009 ACE_TRACE ("ACE_FIFO_Send_Msg::send");
00010 ACE_Str_Buf send_msg ((char *) buf, ACE_static_cast (int, len));
00011
00012 return this->send (send_msg);
00013 }
00014
00015 #if defined (ACE_HAS_STREAM_PIPES)
00016 ASYS_INLINE ssize_t
00017 ACE_FIFO_Send_Msg::send (const ACE_Str_Buf *data,
00018 const ACE_Str_Buf *cntl,
00019 int flags)
00020 {
00021 ACE_TRACE ("ACE_FIFO_Send_Msg::send");
00022 if (ACE_OS::putmsg (this->get_handle (),
00023 (strbuf *) cntl,
00024 (strbuf *) data,
00025 flags) == -1)
00026 return-1;
00027 else
00028 return (cntl == 0 ? 0 : cntl->len) + (data == 0 ? 0 : data->len);
00029 }
00030
00031 ASYS_INLINE ssize_t
00032 ACE_FIFO_Send_Msg::send (int band,
00033 const ACE_Str_Buf *data,
00034 const ACE_Str_Buf *cntl,
00035 int flags)
00036 {
00037 ACE_TRACE ("ACE_FIFO_Send_Msg::send");
00038
00039 if (ACE_OS::putpmsg (this->get_handle (),
00040 (strbuf *) cntl,
00041 (strbuf *) data,
00042 band,
00043 flags) == -1)
00044 return -1;
00045 else
00046 return (cntl == 0 ? 0 : cntl->len) + (data == 0 ? 0 : data->len);
00047 }
00048 #endif