TAO  2.1.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Private Types | Private Member Functions | Private Attributes | Friends | List of all members
TAO_LF_CH_Event Class Reference

Use the Leader/Follower loop to wait for one specific event in the invocation path. More...

#include <LF_CH_Event.h>

Inheritance diagram for TAO_LF_CH_Event:
Inheritance graph
[legend]
Collaboration diagram for TAO_LF_CH_Event:
Collaboration graph
[legend]

Public Member Functions

 TAO_LF_CH_Event (void)
 Constructor.
virtual ~TAO_LF_CH_Event (void)
 Destructor.
- Public Member Functions inherited from TAO_LF_Event
 TAO_LF_Event (void)
 Constructor.
virtual ~TAO_LF_Event (void)
 Destructor.
virtual int bind (TAO_LF_Follower *follower)
 Bind a follower.
virtual int unbind (TAO_LF_Follower *follower)
 Unbind the follower.
void reset_state (int new_state)
 Reset the state, irrespective of the previous states.
void state_changed (int new_state, TAO_Leader_Follower &lf)
int keep_waiting (void)
 Check if we should keep waiting.

Private Types

typedef
ACE_Hash_Map_Manager_Ex
< TAO_LF_Follower *, int,
ACE_Hash< void * >
, ACE_Equal_To
< TAO_LF_Follower * >
, TAO_SYNCH_MUTEX
HASH_MAP

Private Member Functions

virtual void state_changed_i (int new_state)
 Validate and change the state.
virtual void set_state (int new_state)
 Set the state irrespective of anything.
virtual int bind (TAO_LF_Follower *follower)
virtual int unbind (TAO_LF_Follower *follower)
void validate_state_change (int new_state)

Private Attributes

int prev_state_
 The previous state that the LF_CH_Event was in.
HASH_MAP followers_

Friends

class TAO_LF_Multi_Event
int successful (void) const
int error_detected (void) const
virtual int is_state_final (void)
 Check whether we have reached the final state..

Additional Inherited Members

- Public Types inherited from TAO_LF_Event
enum  {
  LFS_IDLE = 0, LFS_ACTIVE, LFS_CONNECTION_WAIT, LFS_SUCCESS,
  LFS_FAILURE, LFS_TIMEOUT, LFS_CONNECTION_CLOSED
}
- Static Public Member Functions inherited from TAO_LF_Event
static const char * state_name (int st)
- Protected Member Functions inherited from TAO_LF_Event
virtual void state_changed_i (int new_state)=0
 Validate the state change.
- Protected Attributes inherited from TAO_LF_Event
int state_
 The current state.
TAO_LF_Followerfollower_
 The bounded follower.

Detailed Description

Use the Leader/Follower loop to wait for one specific event in the invocation path.

Concrete event types and manipulation class which is used for connection handling purposes.

Member Typedef Documentation

Constructor & Destructor Documentation

TAO_LF_CH_Event::TAO_LF_CH_Event ( void  )

Constructor.

TAO_LF_CH_Event::~TAO_LF_CH_Event ( void  )
virtual

Destructor.

Member Function Documentation

int TAO_LF_CH_Event::bind ( TAO_LF_Follower follower)
privatevirtual
int TAO_LF_CH_Event::error_detected ( void  ) const
virtual

Return 1 if an error was detected while waiting for the event

Implements TAO_LF_Event.

int TAO_LF_CH_Event::is_state_final ( void  )
protectedvirtual

Check whether we have reached the final state..

Implements TAO_LF_Event.

void TAO_LF_CH_Event::set_state ( int  new_state)
privatevirtual

Set the state irrespective of anything.

void TAO_LF_CH_Event::state_changed_i ( int  new_state)
privatevirtual

Validate and change the state.

int TAO_LF_CH_Event::successful ( void  ) const
virtual

Return 1 if the condition was satisfied successfully, 0 if it has not

Implements TAO_LF_Event.

int TAO_LF_CH_Event::unbind ( TAO_LF_Follower follower)
privatevirtual
void TAO_LF_CH_Event::validate_state_change ( int  new_state)
private

Friends And Related Function Documentation

friend class TAO_LF_Multi_Event
friend

The TAO_LF_Multi_Event class is another specialization of TAO_LF_Event, used for aggregating many connection handlers into a single event object. It requires friendship so that it can check the is_state_final() flag on each of its contained connection handlers.

Member Data Documentation

HASH_MAP TAO_LF_CH_Event::followers_
private
int TAO_LF_CH_Event::prev_state_
private

The previous state that the LF_CH_Event was in.


The documentation for this class was generated from the following files: