Public Member Functions | Public Attributes | Private Attributes

ACE_Sig_Set Class Reference

Provide a C++ wrapper for the C sigset_t interface. More...

#include <Signal.h>

List of all members.

Public Member Functions

 ACE_Sig_Set (sigset_t *sigset)
 ACE_Sig_Set (ACE_Sig_Set *sigset)
 ACE_Sig_Set (int fill=0)
 ~ACE_Sig_Set (void)
int empty_set (void)
 Create a set that excludes all signals defined by the system.
int fill_set (void)
 Create a set that includes all signals defined by the system.
int sig_add (int signo)
 Adds the individual signal specified by signo to the set.
int sig_del (int signo)
 Deletes the individual signal specified by signo from the set.
int is_member (int signo) const
 Checks whether the signal specified by signo is in the set.
 operator sigset_t * ()
 Returns a pointer to the underlying sigset_t.
sigset_t sigset (void) const
 Returns a copy of the underlying sigset_t.
void dump (void) const
 Dump the state of an object.

Public Attributes

 ACE_ALLOC_HOOK_DECLARE
 Declare the dynamic allocation hooks.

Private Attributes

sigset_t sigset_
 Set of signals.

Detailed Description

Provide a C++ wrapper for the C sigset_t interface.

Handle signals via a more elegant C++ interface (e.g., doesn't require the use of global variables or global functions in an application).

Definition at line 45 of file Signal.h.


Constructor & Destructor Documentation

ACE_Sig_Set::ACE_Sig_Set ( sigset_t *  sigset  ) 

Initialize <sigset_> with sigset. If sigset == 0 then fill the set.

Definition at line 14 of file Signal.inl.

     : sigset_ ()
{
  ACE_TRACE ("ACE_Sig_Set::ACE_Sig_Set");

  if (ss == 0)
    ACE_OS::sigfillset (&this->sigset_);
  else
    // Structure assignment.
    this->sigset_ = *ss;
}

ACE_Sig_Set::ACE_Sig_Set ( ACE_Sig_Set sigset  ) 

Initialize <sigset_> with sigset. If sigset == 0 then fill the set.

Definition at line 39 of file Signal.inl.

     : sigset_ ()
{
  ACE_TRACE ("ACE_Sig_Set::ACE_Sig_Set");

  if (ss == 0)
    ACE_OS::sigfillset (&this->sigset_);
  else
    this->sigset_ = ss->sigset_;
}

ACE_Sig_Set::ACE_Sig_Set ( int  fill = 0  ) 

If fill == 0 then initialize the <sigset_> to be empty, else full.

Definition at line 27 of file Signal.inl.

     : sigset_ ()
{
  ACE_TRACE ("ACE_Sig_Set::ACE_Sig_Set");

  if (fill)
    ACE_OS::sigfillset (&this->sigset_);
  else
    ACE_OS::sigemptyset (&this->sigset_);
}

ACE_Sig_Set::~ACE_Sig_Set ( void   ) 

Definition at line 27 of file Signal.cpp.

{
  ACE_TRACE ("ACE_Sig_Set::~ACE_Sig_Set");
  ACE_OS::sigemptyset (&this->sigset_);
}


Member Function Documentation

void ACE_Sig_Set::dump ( void   )  const

Dump the state of an object.

Definition at line 60 of file Signal.cpp.

{
#if defined (ACE_HAS_DUMP)
  ACE_TRACE ("ACE_Sig_Set::dump");
#endif /* ACE_HAS_DUMP */
}

int ACE_Sig_Set::empty_set ( void   ) 

Create a set that excludes all signals defined by the system.

Definition at line 51 of file Signal.inl.

{
  ACE_TRACE ("ACE_Sig_Set::empty_set");
  return ACE_OS::sigemptyset (&this->sigset_);
}

int ACE_Sig_Set::fill_set ( void   ) 

Create a set that includes all signals defined by the system.

Definition at line 58 of file Signal.inl.

{
  ACE_TRACE ("ACE_Sig_Set::fill_set");
  return ACE_OS::sigfillset (&this->sigset_);
}

int ACE_Sig_Set::is_member ( int  signo  )  const

Checks whether the signal specified by signo is in the set.

Definition at line 79 of file Signal.inl.

{
  ACE_TRACE ("ACE_Sig_Set::is_member");
  return ACE_OS::sigismember (const_cast<sigset_t *> (&this->sigset_), signo);
}

ACE_Sig_Set::operator sigset_t * ( void   ) 

Returns a pointer to the underlying sigset_t.

Definition at line 86 of file Signal.inl.

{
  ACE_TRACE ("ACE_Sig_Set::operator sigset_t *");
  return &this->sigset_;
}

int ACE_Sig_Set::sig_add ( int  signo  ) 

Adds the individual signal specified by signo to the set.

Definition at line 65 of file Signal.inl.

{
  ACE_TRACE ("ACE_Sig_Set::sig_add");
  return ACE_OS::sigaddset (&this->sigset_, signo);
}

int ACE_Sig_Set::sig_del ( int  signo  ) 

Deletes the individual signal specified by signo from the set.

Definition at line 72 of file Signal.inl.

{
  ACE_TRACE ("ACE_Sig_Set::sig_del");
  return ACE_OS::sigdelset (&this->sigset_, signo);
}

sigset_t ACE_Sig_Set::sigset ( void   )  const

Returns a copy of the underlying sigset_t.

Definition at line 93 of file Signal.inl.

{
  ACE_TRACE ("ACE_Sig_Set::sigset");
  return this->sigset_;
}


Member Data Documentation

Declare the dynamic allocation hooks.

Definition at line 88 of file Signal.h.

sigset_t ACE_Sig_Set::sigset_ [private]

Set of signals.

Definition at line 92 of file Signal.h.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines