Restore build on FreeBSD.
[getmangos.git] / dep / ACE_wrappers / ace / FIFO_Send.h
blobcc0fc282f83f92a96dc47da75665a77811690465
1 // -*- C++ -*-
3 //==========================================================================
4 /**
5 * @file FIFO_Send.h
7 * $Id: FIFO_Send.h 80826 2008-03-04 14:51:23Z wotte $
9 * @author Doug Schmidt
11 //==========================================================================
14 #ifndef ACE_FIFO_SEND_H
15 #define ACE_FIFO_SEND_H
17 #include /**/ "ace/pre.h"
19 #include "ace/FIFO.h"
21 #if !defined (ACE_LACKS_PRAGMA_ONCE)
22 # pragma once
23 #endif /* ACE_LACKS_PRAGMA_ONCE */
25 #include "ace/os_include/os_fcntl.h"
26 #include "ace/Default_Constants.h"
28 ACE_BEGIN_VERSIONED_NAMESPACE_DECL
30 /**
31 * @class ACE_FIFO_Send
33 * @brief Sender side for the bytestream C++ wrapper for UNIX FIFOs
35 class ACE_Export ACE_FIFO_Send : public ACE_FIFO
37 public:
38 // = Initialization methods.
39 /// Default constructor.
40 ACE_FIFO_Send (void);
42 /// Open up a bytestream named pipe for writing.
43 ACE_FIFO_Send (const ACE_TCHAR *rendezvous,
44 int flags = O_WRONLY,
45 mode_t perms = ACE_DEFAULT_FILE_PERMS,
46 LPSECURITY_ATTRIBUTES sa = 0);
48 /// Open up a bytestream named pipe for writing.
49 int open (const ACE_TCHAR *rendezvous,
50 int flags = O_WRONLY,
51 mode_t perms = ACE_DEFAULT_FILE_PERMS,
52 LPSECURITY_ATTRIBUTES sa = 0);
54 /// Send @a buf of up to @a len bytes.
55 ssize_t send (const void *buf, size_t len);
57 /// Send @a buf of exactly @a len bytes (block until done).
58 ssize_t send_n (const void *buf, size_t len);
60 /// Dump the state of an object.
61 void dump (void) const;
63 /// Declare the dynamic allocation hooks.
64 ACE_ALLOC_HOOK_DECLARE;
67 ACE_END_VERSIONED_NAMESPACE_DECL
69 #if defined (__ACE_INLINE__)
70 #include "ace/FIFO_Send.inl"
71 #endif /* __ACE_INLINE__ */
73 #include /**/ "ace/post.h"
75 #endif /* ACE_FIFO_SEND_H */