Main Page   Modules   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Related Pages   Examples  

CTBsignalLink Class Reference

Class to represent a connection between signal emitter and receiver.**. More...

#include "CTBsignalBase.hxx"

Collaboration diagram for CTBsignalLink:

Collaboration graph
[legend]
List of all members.

Private Types

typedef CTBsimpleListLink<
CTBsignalLink > 
elink_t
typedef CTBtreeListLink< CTBsignalReceiverBase,
CTBsignalLink > 
rlink_t
typedef CTBsimpleListLink<
CTBsignalLink > 
plink_t

Private Methods

 CTBsignalLink (CTBsignalEmitter &emitter, CTBsignalReceiverBase &receiver, void *p_emitter, CTBuint32 i_mask)
 CTBsignalLink (const CTBsignalLink &rhs, CTBsignalReceiverBase &receiver)
 ~CTBsignalLink ()
void Mark ()
void Unmark ()
bool Busy () const
bool Pending () const
bool Zombie () const
bool Deletable () const
void UnlinkEmitter ()
void UnlinkReceiver ()

Private Attributes

elink_t m_elink
rlink_t m_rlink
plink_t m_plink
int mi_nbusy
void * mp_emitter
CTBuint32 mi_acceptmask
CTBuint32 mi_pendingmask

Friends

class CTBsignalEmitter
class CTBsignalReceiverBase

Detailed Description

Class to represent a connection between signal emitter and receiver.**.

Definition at line 105 of file CTBsignalBase.hxx.


Member Typedef Documentation

typedef CTBsimpleListLink<CTBsignalLink> CTBsignalLink::elink_t [private]
 

Definition at line 133 of file CTBsignalBase.hxx.

typedef CTBtreeListLink<CTBsignalReceiverBase,CTBsignalLink> CTBsignalLink::rlink_t [private]
 

Definition at line 134 of file CTBsignalBase.hxx.

typedef CTBsimpleListLink<CTBsignalLink> CTBsignalLink::plink_t [private]
 

Definition at line 135 of file CTBsignalBase.hxx.


Constructor & Destructor Documentation

CTBsignalLink::CTBsignalLink CTBsignalEmitter & emitter,
CTBsignalReceiverBase & receiver,
void * p_emitter,
CTBuint32 i_mask
[private]
 

Construct from receiver and emitter.

Definition at line 286 of file CTBsignalBase.cxx.

CTBsignalLink::CTBsignalLink const CTBsignalLink & rhs,
CTBsignalReceiverBase & receiver
[private]
 

Copy construct for new receiver.

Definition at line 307 of file CTBsignalBase.cxx.

CTBsignalLink::~CTBsignalLink [private]
 

Destructor.

Definition at line 329 of file CTBsignalBase.cxx.


Member Function Documentation

void CTBsignalLink::Mark [inline, private]
 

Increments busy (or lock) count.

Definition at line 144 of file CTBsignalBase.icc.

Referenced by CTBsignalEmitter::Execute(), and CTBsignalEmitter::~CTBsignalEmitter().

void CTBsignalLink::Unmark [inline, private]
 

Decrements busy (or lock) count.

Definition at line 153 of file CTBsignalBase.icc.

Referenced by CTBsignalEmitter::Execute(), and CTBsignalEmitter::~CTBsignalEmitter().

bool CTBsignalLink::Busy const [inline, private]
 

Returns true if link not busy (or locked).

Definition at line 163 of file CTBsignalBase.icc.

Referenced by Deletable(), CTBsignalReceiverBase::Disconnect(), and CTBsignalEmitter::~CTBsignalEmitter().

bool CTBsignalLink::Pending const [inline, private]
 

Returns true if link has pending signals.

Definition at line 171 of file CTBsignalBase.icc.

Referenced by CTBsignalLink(), Deletable(), CTBsignalEmitter::Execute(), and CTBsignalEmitter::~CTBsignalEmitter().

bool CTBsignalLink::Zombie const [inline, private]
 

Returns true if link is marked for deletion.

Definition at line 179 of file CTBsignalBase.icc.

Referenced by Deletable(), CTBsignalReceiverBase::NConnect(), CTBsignalEmitter::NConnect(), and CTBsignalReceiverBase::operator=().

bool CTBsignalLink::Deletable const [inline, private]
 

Returns true if link can be deleted.

Definition at line 187 of file CTBsignalBase.icc.

Referenced by CTBsignalEmitter::Execute().

void CTBsignalLink::UnlinkEmitter [inline, private]
 

Removes link from emitter list.

Definition at line 195 of file CTBsignalBase.icc.

Referenced by CTBsignalEmitter::~CTBsignalEmitter(), and ~CTBsignalLink().

void CTBsignalLink::UnlinkReceiver [inline, private]
 

Removes link from receiver list.

Definition at line 204 of file CTBsignalBase.icc.

Referenced by CTBsignalReceiverBase::Disconnect(), and ~CTBsignalLink().


Friends And Related Function Documentation

friend class CTBsignalEmitter [friend]
 

Definition at line 107 of file CTBsignalBase.hxx.

friend class CTBsignalReceiverBase [friend]
 

Definition at line 108 of file CTBsignalBase.hxx.


Member Data Documentation

elink_t CTBsignalLink::m_elink [private]
 

list linkage emitter queue.

Definition at line 137 of file CTBsignalBase.hxx.

rlink_t CTBsignalLink::m_rlink [private]
 

list linkage receiver queue.

Definition at line 138 of file CTBsignalBase.hxx.

plink_t CTBsignalLink::m_plink [private]
 

list linkage pending queue.

Definition at line 139 of file CTBsignalBase.hxx.

int CTBsignalLink::mi_nbusy [private]
 

busy level.

Definition at line 140 of file CTBsignalBase.hxx.

void* CTBsignalLink::mp_emitter [private]
 

pointer to emitter.

Definition at line 141 of file CTBsignalBase.hxx.

CTBuint32 CTBsignalLink::mi_acceptmask [private]
 

accepted signal mask.

Definition at line 142 of file CTBsignalBase.hxx.

CTBuint32 CTBsignalLink::mi_pendingmask [private]
 

pending signal mask.

Definition at line 143 of file CTBsignalBase.hxx.


The documentation for this class was generated from the following files:
Generated at Fri Oct 24 18:14:08 2003 for CTBbase by doxygen1.2.9-20010812 written by Dimitri van Heesch, © 1997-2001