C++ wrapper facade for the socket fd_set abstraction.  
More...
#include <Handle_Set.h>
| Public Types | |
| enum | { MAXSIZE = ACE_DEFAULT_SELECT_REACTOR_SIZE } | 
| Public Member Functions | |
| ACE_Handle_Set (void) | |
| Constructor, initializes the bitmask to all 0s. | |
| ACE_Handle_Set (const fd_set &mask) | |
| void | reset (void) | 
| Initialize the bitmask to all 0s and reset the associated fields. | |
| int | is_set (ACE_HANDLE handle) const | 
| void | set_bit (ACE_HANDLE handle) | 
| void | clr_bit (ACE_HANDLE handle) | 
| int | num_set (void) const | 
| Returns a count of the number of enabled bits. | |
| ACE_HANDLE | max_set (void) const | 
| Returns the number of the large bit. | |
| void | sync (ACE_HANDLE max) | 
| operator fd_set * () | |
| fd_set * | fdset (void) | 
| void | dump (void) const | 
| Dump the state of an object. | |
| Public Attributes | |
| ACE_ALLOC_HOOK_DECLARE | |
| Declare the dynamic allocation hooks. | |
| Private Types | |
| enum | { WORDSIZE = NFDBITS, NUM_WORDS = howmany (MAXSIZE, NFDBITS), NBITS = 256 } | 
| Private Member Functions | |
| void | set_max (ACE_HANDLE max) | 
| Static Private Member Functions | |
| static int | count_bits (u_long n) | 
| Private Attributes | |
| int | size_ | 
| Size of the set, i.e., a count of the number of enabled bits. | |
| ACE_HANDLE | max_handle_ | 
| Current max handle. | |
| fd_set | mask_ | 
| Bitmask. | |
| Static Private Attributes | |
| static const char | nbits_ [NBITS] | 
| Friends | |
| class | ACE_Handle_Set_Iterator | 
C++ wrapper facade for the socket fd_set abstraction. 
This abstraction is a very efficient wrapper facade over fd_set. In particular, no range checking is performed, so it's important not to set or clear bits that are outside the ACE_DEFAULT_SELECT_REACTOR_SIZE. 
| ACE_Handle_Set::ACE_Handle_Set | ( | void | ) | 
Constructor, initializes the bitmask to all 0s.
| ACE_Handle_Set::ACE_Handle_Set | ( | const fd_set & | mask | ) | 
Constructor, initializes the handle set from a given mask.
| void ACE_Handle_Set::clr_bit | ( | ACE_HANDLE | handle | ) |  [inline] | 
Disables the handle. No range checking is performed so handle must be less than ACE_DEFAULT_SELECT_REACTOR_SIZE. 
| int ACE_Handle_Set::count_bits | ( | u_long | n | ) |  [static, private] | 
Counts the number of bits enabled in N. Uses a table lookup to speed up the count.
| void ACE_Handle_Set::dump | ( | void | ) | const | 
Dump the state of an object.
| fd_set * ACE_Handle_Set::fdset | ( | void | ) |  [inline] | 
Returns a pointer to the underlying fd_set. Returns 0 if there are no handle bits set (<size_> == 0). 
| int ACE_Handle_Set::is_set | ( | ACE_HANDLE | handle | ) | const  [inline] | 
Checks whether handle is enabled. No range checking is performed so handle must be less than ACE_DEFAULT_SELECT_REACTOR_SIZE. 
| ACE_HANDLE ACE_Handle_Set::max_set | ( | void | ) | const  [inline] | 
Returns the number of the large bit.
| int ACE_Handle_Set::num_set | ( | void | ) | const  [inline] | 
Returns a count of the number of enabled bits.
| ACE_Handle_Set::operator fd_set * | ( | ) |  [inline] | 
Returns a pointer to the underlying fd_set. Returns 0 if there are no handle bits set (<size_> == 0). 
| void ACE_Handle_Set::reset | ( | void | ) |  [inline] | 
Initialize the bitmask to all 0s and reset the associated fields.
| void ACE_Handle_Set::set_bit | ( | ACE_HANDLE | handle | ) |  [inline] | 
Enables the handle. No range checking is performed so handle must be less than ACE_DEFAULT_SELECT_REACTOR_SIZE. 
| void ACE_Handle_Set::set_max | ( | ACE_HANDLE | max | ) |  [private] | 
Resets the <max_handle_> after a clear of the original <max_handle_>.
| void ACE_Handle_Set::sync | ( | ACE_HANDLE | max | ) | 
Rescan the underlying fd_set up to handle max to find the new <max_handle> (highest bit set) and <size> (how many bits set) values. This is useful for evaluating the changes after the handle set has been manipulated in some way other than member functions; for example, after <select> modifies the fd_set. 
| friend class ACE_Handle_Set_Iterator  [friend] | 
Declare the dynamic allocation hooks.
| fd_set ACE_Handle_Set::mask_  [private] | 
Bitmask.
| ACE_HANDLE ACE_Handle_Set::max_handle_  [private] | 
Current max handle.
| const char ACE_Handle_Set::nbits_  [static, private] | 
{
  0, 1, 1, 2, 1, 2, 2, 3, 1, 2, 2, 3, 2, 3, 3, 4,
  1, 2, 2, 3, 2, 3, 3, 4, 2, 3, 3, 4, 3, 4, 4, 5,
  1, 2, 2, 3, 2, 3, 3, 4, 2, 3, 3, 4, 3, 4, 4, 5,
  2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
  1, 2, 2, 3, 2, 3, 3, 4, 2, 3, 3, 4, 3, 4, 4, 5,
  2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
  2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
  3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
  1, 2, 2, 3, 2, 3, 3, 4, 2, 3, 3, 4, 3, 4, 4, 5,
  2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
  2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
  3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
  2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
  3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
  3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
  4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8}
Table that maps bytes to counts of the enabled bits in each value from 0 to 255.
| int ACE_Handle_Set::size_  [private] | 
Size of the set, i.e., a count of the number of enabled bits.
 1.7.1
 1.7.1