Main Page   Modules   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members  

at::LeadTwin< w_aide_twin_interface, w_lead_interface > Class Template Reference

#include <at_twin.h>

Inheritance diagram for at::LeadTwin< w_aide_twin_interface, w_lead_interface >:

Inheritance graph
[legend]
List of all members.

Public Methods

virtual void LeadCancel ()=0

Protected Methods

virtual bool LeadAssociate (w_aide_twin_interface *i_aide)=0
virtual void LeadCompleted (TwinTraits::TwinCode i_competion_code)=0
virtual ~LeadTwin ()

Friends

class AideTwin< typename w_aide_twin_interface::t_aide_interface >

Detailed Description

template<typename w_aide_twin_interface, typename w_lead_interface>
class at::LeadTwin< w_aide_twin_interface, w_lead_interface >

The LeadTwin is the initiator of the association.

The w_aide_twin_interface tempate parameter would usually be a AideTwin< w_aide_interface > but the only requirement is that it provides and interface containing the AideCancel method and for correctness does not allow it's destructor to be called.


Constructor & Destructor Documentation

template<typename w_aide_twin_interface, typename w_lead_interface>
virtual at::LeadTwin< w_aide_twin_interface, w_lead_interface >::~LeadTwin   [inline, protected, virtual]
 

Destructors must not be called on the LeadTwin interface.


Member Function Documentation

template<typename w_aide_twin_interface, typename w_lead_interface>
virtual bool at::LeadTwin< w_aide_twin_interface, w_lead_interface >::LeadAssociate w_aide_twin_interface *    i_aide [protected, pure virtual]
 

LeadAssociate is only called by the Aide to associate the the Lead with the appropriate Aide. Hence this method is private.

Implemented in at::LeadTwin_Basic< w_aide_twin_interface, w_lead_interface >.

template<typename w_aide_twin_interface, typename w_lead_interface>
virtual void at::LeadTwin< w_aide_twin_interface, w_lead_interface >::LeadCancel   [pure virtual]
 

LeadCancel is called by anyone to initiate a cancel operation. This will terminate any service currently in progress.

Implemented in at::LeadTwin_Basic< AideTwin< NullTwinInterface >, NotifyLeadInterface >, and at::LeadTwin_Basic< w_aide_twin_interface, w_lead_interface >.

template<typename w_aide_twin_interface, typename w_lead_interface>
virtual void at::LeadTwin< w_aide_twin_interface, w_lead_interface >::LeadCompleted TwinTraits::TwinCode    i_competion_code [protected, pure virtual]
 

LeadCompleted is only called by the Aide to notify that the association is now broken. Hence this method is private.

Implemented in at::LeadTwin_Basic< AideTwin< NullTwinInterface >, NotifyLeadInterface >, and at::LeadTwin_Basic< w_aide_twin_interface, w_lead_interface >.


Friends And Related Function Documentation

template<typename w_aide_twin_interface, typename w_lead_interface>
friend class AideTwin< typename w_aide_twin_interface::t_aide_interface > [friend]
 


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

Generated for Austria by doxygen and MakeXS at Sun Oct 24 17:35:34 PDT 2004