|
Static Public Methods |
u_int | major_version (void) |
| e.g., the "5" in ACE 5.1.12.
|
u_int | minor_version (void) |
| e.g., the "1" in ACE 5.1.12.
|
u_int | beta_version (void) |
const ACE_TCHAR * | compiler_name (void) |
| E.g., the "SunPro C++" in SunPro C++ 4.32.0.
|
u_int | compiler_major_version (void) |
| E.g., the "4" in SunPro C++ 4.32.0.
|
u_int | compiler_minor_version (void) |
| E.g., the "32" in SunPro C++ 4.32.0.
|
u_int | compiler_beta_version (void) |
| E.g., the "0" in SunPro C++ 4.32.0.
|
int | out_of_handles (int error) |
int | handle_timed_accept (ACE_HANDLE listener, ACE_Time_Value *timeout, int restart) |
ACE_HANDLE | handle_timed_complete (ACE_HANDLE listener, const ACE_Time_Value *timeout, int is_tli=0) |
int | set_handle_limit (int new_limit=-1) |
int | max_handles (void) |
ACE_TCHAR * | strenvdup (const ACE_TCHAR *str) |
const char * | strend (const char *s) |
char * | strnew (const char *s) |
void | strdelete (char *s) |
| Delete the memory allocated by <strnew>.
|
char * | strndup (const char *str, size_t n) |
char * | strnnew (const char *str, size_t n) |
const wchar_t * | strend (const wchar_t *s) |
wchar_t * | strnew (const wchar_t *s) |
void | strdelete (wchar_t *s) |
wchar_t * | strndup (const wchar_t *str, size_t n) |
wchar_t * | strnnew (const wchar_t *str, size_t n) |
const ACE_TCHAR * | execname (const ACE_TCHAR *pathname) |
const ACE_TCHAR * | basename (const ACE_TCHAR *pathname, ACE_TCHAR delim=ACE_DIRECTORY_SEPARATOR_CHAR) |
const ACE_TCHAR * | dirname (const ACE_TCHAR *pathname, ACE_TCHAR delim=ACE_DIRECTORY_SEPARATOR_CHAR) |
ACE_TCHAR * | timestamp (ACE_TCHAR date_and_time[], int time_len, int return_pointer_to_first_digit=0) |
pid_t | fork (const ACE_TCHAR *program_name=ACE_LIB_TEXT("< unknown >"), int avoid_zombies=0) |
int | daemonize (const ACE_TCHAR pathname[]=ACE_LIB_TEXT("/"), int close_all_handles=ACE_DEFAULT_CLOSE_ALL_HANDLES, const ACE_TCHAR program_name[]=ACE_LIB_TEXT("< unknown >")) |
size_t | round_to_pagesize (off_t length) |
| Rounds the request to a multiple of the page size.
|
size_t | round_to_allocation_granularity (off_t len) |
| Rounds the request to a multiple of the allocation granularity.
|
size_t | format_hexdump (const char *buffer, size_t size, ACE_TCHAR *obuf, size_t obuf_sz) |
u_long | hash_pjw (const char *str) |
| Computes the hash value of <str> using the "Hash PJW" routine.
|
u_long | hash_pjw (const char *str, size_t len) |
| Computes the hash value of <str> using the "Hash PJW" routine.
|
u_long | hash_pjw (const wchar_t *str) |
| Computes the hash value of <str> using the "Hash PJW" routine.
|
u_long | hash_pjw (const wchar_t *str, size_t len) |
| Computes the hash value of <str> using the "Hash PJW" routine.
|
u_long | crc32 (const char *str) |
u_long | crc32 (const char *buf, ACE_UINT32 len) |
u_long | crc32 (iovec *iov, int len) |
u_long | gcd (u_long x, u_long y) |
| Euclid's greatest common divisor algorithm.
|
u_long | minimum_frame_size (u_long period1, u_long period2) |
| Calculates the minimum enclosing frame size for the given values.
|
u_long | is_prime (const u_long n, const u_long min_factor, const u_long max_factor) |
int | map_errno (int error) |
const ACE_TCHAR * | sock_error (int error) |
int | process_active (pid_t pid) |
int | terminate_process (pid_t pid) |
void | unique_name (const void *object, ACE_TCHAR *name, size_t length) |
u_long | log2 (u_long num) |
| Computes the base 2 logarithm of <num>.
|
ACE_TCHAR | nibble2hex (u_int n) |
| Hex conversion utility.
|
u_char | hex2byte (ACE_TCHAR c) |
| Convert a hex character to its byte representation.
|
char | debug (void) |
void | debug (char d) |
int | select (int width, ACE_Handle_Set *readfds, ACE_Handle_Set *writefds=0, ACE_Handle_Set *exceptfds=0, const ACE_Time_Value *timeout=0) |
| Wrapper facade for <select> that uses <ACE_Handle_Set>s.
|
int | select (int width, ACE_Handle_Set &readfds, const ACE_Time_Value *timeout=0) |
int | handle_read_ready (ACE_HANDLE handle, const ACE_Time_Value *timeout) |
| Timed wait for handle to get read ready.
|
int | handle_write_ready (ACE_HANDLE handle, const ACE_Time_Value *timeout) |
| Timed wait for handle to get write ready.
|
int | handle_exception_ready (ACE_HANDLE handle, const ACE_Time_Value *timeout) |
| Timed wait for handle to get exception ready.
|
int | handle_ready (ACE_HANDLE handle, const ACE_Time_Value *timeout, int read_ready, int write_ready, int exception_ready) |
| Timed wait for handle to get read, write, or exception ready.
|
int | enter_recv_timedwait (ACE_HANDLE handle, const ACE_Time_Value *timeout, int &val) |
int | enter_send_timedwait (ACE_HANDLE handle, const ACE_Time_Value *timeout, int &val) |
void | record_and_set_non_blocking_mode (ACE_HANDLE handle, int &val) |
void | restore_non_blocking_mode (ACE_HANDLE handle, int val) |
|
Notes on common parameters:
<handle> is the connected endpoint that will be used for I/O.
<buf> is the buffer to write from or receive into.
<len> is the number of bytes to transfer.
The <timeout> parameter in the following methods indicates how long to blocking trying to transfer data. If <timeout> == 0, then the call behaves as a normal send/recv call, i.e., for blocking sockets, the call will block until action is possible; for non-blocking sockets, EWOULDBLOCK will be returned if no action is immediately possible.
If <timeout> != 0, the call will wait until the relative time specified in *<timeout> elapses.
The "_n()" I/O methods keep looping until all the data has been transferred. These methods also work for sockets in non-blocking mode i.e., they keep looping on EWOULDBLOCK. <timeout> is used to make sure we keep making progress, i.e., the same timeout value is used for every I/O operation in the loop and the timeout is not counted down.
The return values for the "*_n()" methods match the return values from the non "_n()" methods and are specified as follows:
- On complete transfer, the number of bytes transferred is returned.
- On timeout, -1 is returned, errno == ETIME.
- On error, -1 is returned, errno is set to appropriate error.
- On EOF, 0 is returned, errno is irrelevant.
On partial transfers, i.e., if any data is transferred before timeout/error/EOF, <bytes_transferred> will contain the number of bytes transferred.
Methods with <iovec> parameter are I/O vector variants of the I/O operations.
Methods with the extra <flags> argument will always result in <send> getting called. Methods without the extra <flags> argument will result in <send> getting called on Win32 platforms, and <write> getting called on non-Win32 platforms.
|
ssize_t | recv (ACE_HANDLE handle, void *buf, size_t len, int flags, const ACE_Time_Value *timeout=0) |
ssize_t | t_rcv (ACE_HANDLE handle, void *buf, size_t len, int *flags, const ACE_Time_Value *timeout=0) |
ssize_t | recv (ACE_HANDLE handle, void *buf, size_t len, const ACE_Time_Value *timeout=0) |
ssize_t | recvmsg (ACE_HANDLE handle, struct msghdr *msg, int flags, const ACE_Time_Value *timeout=0) |
ssize_t | recvfrom (ACE_HANDLE handle, char *buf, int len, int flags, struct sockaddr *addr, int *addrlen, const ACE_Time_Value *timeout=0) |
ssize_t | recv_n (ACE_HANDLE handle, void *buf, size_t len, int flags, const ACE_Time_Value *timeout=0, size_t *bytes_transferred=0) |
ssize_t | t_rcv_n (ACE_HANDLE handle, void *buf, size_t len, int *flags, const ACE_Time_Value *timeout=0, size_t *bytes_transferred=0) |
ssize_t | recv_n (ACE_HANDLE handle, void *buf, size_t len, const ACE_Time_Value *timeout=0, size_t *bytes_transferred=0) |
ssize_t | recv (ACE_HANDLE handle, size_t n,...) |
| Receive into a variable number of pieces.
|
ssize_t | recvv (ACE_HANDLE handle, iovec *iov, int iovcnt, const ACE_Time_Value *timeout=0) |
ssize_t | recvv_n (ACE_HANDLE handle, iovec *iov, int iovcnt, const ACE_Time_Value *timeout=0, size_t *bytes_transferred=0) |
ssize_t | recv_n (ACE_HANDLE handle, ACE_Message_Block *message_block, const ACE_Time_Value *timeout=0, size_t *bytes_transferred=0) |
ssize_t | send (ACE_HANDLE handle, const void *buf, size_t len, int flags, const ACE_Time_Value *timeout=0) |
ssize_t | t_snd (ACE_HANDLE handle, const void *buf, size_t len, int flags, const ACE_Time_Value *timeout=0) |
ssize_t | send (ACE_HANDLE handle, const void *buf, size_t len, const ACE_Time_Value *timeout=0) |
ssize_t | sendmsg (ACE_HANDLE handle, const struct msghdr *msg, int flags, const ACE_Time_Value *timeout=0) |
ssize_t | sendto (ACE_HANDLE handle, const char *buf, int len, int flags, const struct sockaddr *addr, int addrlen, const ACE_Time_Value *timeout=0) |
ssize_t | send_n (ACE_HANDLE handle, const void *buf, size_t len, int flags, const ACE_Time_Value *timeout=0, size_t *bytes_transferred=0) |
ssize_t | t_snd_n (ACE_HANDLE handle, const void *buf, size_t len, int flags, const ACE_Time_Value *timeout=0, size_t *bytes_transferred=0) |
ssize_t | send_n (ACE_HANDLE handle, const void *buf, size_t len, const ACE_Time_Value *timeout=0, size_t *bytes_transferred=0) |
ssize_t | send (ACE_HANDLE handle, size_t n,...) |
| Varargs variant.
|
ssize_t | sendv (ACE_HANDLE handle, const iovec *iov, int iovcnt, const ACE_Time_Value *timeout=0) |
ssize_t | sendv_n (ACE_HANDLE handle, const iovec *iov, int iovcnt, const ACE_Time_Value *timeout=0, size_t *bytes_transferred=0) |
ssize_t | send_n (ACE_HANDLE handle, const ACE_Message_Block *message_block, const ACE_Time_Value *timeout=0, size_t *bytes_transferred=0) |
ssize_t | read_n (ACE_HANDLE handle, void *buf, size_t len, size_t *bytes_transferred=0) |
ssize_t | write_n (ACE_HANDLE handle, const void *buf, size_t len, size_t *bytes_transferred=0) |
ssize_t | write_n (ACE_HANDLE handle, const ACE_Message_Block *message_block, size_t *bytes_transferred=0) |
ssize_t | readv_n (ACE_HANDLE handle, iovec *iov, int iovcnt, size_t *bytes_transferred=0) |
ssize_t | writev_n (ACE_HANDLE handle, const iovec *iov, int iovcnt, size_t *bytes_transferred=0) |
Private Methods |
| ACE_CLASS_IS_NAMESPACE (ACE) |
Static Private Methods |
ssize_t | recv_i (ACE_HANDLE handle, void *buf, size_t len) |
ssize_t | recv_n_i (ACE_HANDLE handle, void *buf, size_t len, int flags, size_t *bytes_transferred) |
ssize_t | recv_n_i (ACE_HANDLE handle, void *buf, size_t len, int flags, const ACE_Time_Value *timeout, size_t *bytes_transferred) |
ssize_t | t_rcv_n_i (ACE_HANDLE handle, void *buf, size_t len, int *flags, size_t *bytes_transferred) |
ssize_t | t_rcv_n_i (ACE_HANDLE handle, void *buf, size_t len, int *flags, const ACE_Time_Value *timeout, size_t *bytes_transferred) |
ssize_t | recv_n_i (ACE_HANDLE handle, void *buf, size_t len, size_t *bytes_transferred) |
ssize_t | recv_n_i (ACE_HANDLE handle, void *buf, size_t len, const ACE_Time_Value *timeout, size_t *bytes_transferred) |
ssize_t | recvv_n_i (ACE_HANDLE handle, iovec *iov, int iovcnt, size_t *bytes_transferred) |
ssize_t | recvv_n_i (ACE_HANDLE handle, iovec *iov, int iovcnt, const ACE_Time_Value *timeout, size_t *bytes_transferred) |
ssize_t | send_i (ACE_HANDLE handle, const void *buf, size_t len) |
ssize_t | send_n_i (ACE_HANDLE handle, const void *buf, size_t len, int flags, size_t *bytes_transferred) |
ssize_t | send_n_i (ACE_HANDLE handle, const void *buf, size_t len, int flags, const ACE_Time_Value *timeout, size_t *bytes_transferred) |
ssize_t | t_snd_n_i (ACE_HANDLE handle, const void *buf, size_t len, int flags, size_t *bytes_transferred) |
ssize_t | t_snd_n_i (ACE_HANDLE handle, const void *buf, size_t len, int flags, const ACE_Time_Value *timeout, size_t *bytes_transferred) |
ssize_t | send_n_i (ACE_HANDLE handle, const void *buf, size_t len, size_t *bytes_transferred) |
ssize_t | send_n_i (ACE_HANDLE handle, const void *buf, size_t len, const ACE_Time_Value *timeout, size_t *bytes_transferred) |
ssize_t | sendv_n_i (ACE_HANDLE handle, const iovec *iov, int iovcnt, size_t *bytes_transferred) |
ssize_t | sendv_n_i (ACE_HANDLE handle, const iovec *iov, int iovcnt, const ACE_Time_Value *timeout, size_t *bytes_transferred) |
Static Private Attributes |
size_t | pagesize_ = 0 |
| Size of a VM page.
|
size_t | allocation_granularity_ = 0 |
| Size of allocation granularity.
|
u_long | crc_table_ [] |
| CRC table.
|
const ACE_TCHAR | hex_chars_ [] = ACE_LIB_TEXT ("0123456789abcdef") |
| Hex characters.
|
char | debug_ = 0 |
| Are we debugging ACE?
|
This class consolidates all these ACE static methods in a single place in order to manage the namespace better. These methods are put here rather than in ACE_OS in order to separate concerns.