Main Page | Class Hierarchy | Class List | File List | Class Members

ConferenceRoom Class Reference

#include <conferenceroom.h>

Collaboration diagram for ConferenceRoom:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 ConferenceRoom (Manager &mgr, PString &thisRoomId)
 ~ConferenceRoom ()
void CloseThisId ()
PString GetStatusInfo ()
PString GetDurationInfo ()
PString GetRoomId ()
void RemoveMember (PString memberId)
PStringList AddNewMember (PString memberId)
virtual void PrintOn (ostream &strm) const
PINDEX GetParticipantCount ()
PStringList GetParticipantNames ()

Protected Member Functions

virtual void OnReleaseThreadMain (PThread &, INT)
void Clear ()

Protected Attributes

Managermanager
PMutex memberListLock
PStringList memberList
PString roomId
PTime lastEmptyTime

Detailed Description

A class the combines the PSafeOjbect structure from PWLib with a handler for maintaining one conference room.

This provides a list of members, who can share audio between them. Audio from one member of this conference room will not go to a member of a difference conference room.


Constructor & Destructor Documentation

ConferenceRoom::ConferenceRoom Manager mgr,
PString &  thisRoomId
 

Constructor, which adds a message module to this class

ConferenceRoom::~ConferenceRoom  ) 
 

Destructor


Member Function Documentation

PStringList ConferenceRoom::AddNewMember PString  memberId  ) 
 

Add a member to this list of members.

Returns:
the list of members in this room, prior to addition.

void ConferenceRoom::Clear  )  [protected]
 

Cause this conference room to be cleared. Only called when the memberList has gone empty

void ConferenceRoom::CloseThisId  ) 
 

Close this id off

PString ConferenceRoom::GetDurationInfo  ) 
 

Get information (in a textual form) of how long this room has been active

PINDEX ConferenceRoom::GetParticipantCount  ) 
 

Report the number of participants in this conference room

PStringList ConferenceRoom::GetParticipantNames  ) 
 

Report the list of who is in this conference room

PString ConferenceRoom::GetRoomId  )  [inline]
 

Report the ID as used by this conference room

PString ConferenceRoom::GetStatusInfo  ) 
 

Get the status information for this room

void ConferenceRoom::OnReleaseThreadMain PThread &  ,
INT 
[protected, virtual]
 

This ConferenceRoom, on discovering the last member has gone, has to be deleted. Consequently, a short lived thread is created to cause this room to close. The short lived thread calls this method

void ConferenceRoom::PrintOn ostream &  strm  )  const [virtual]
 

pretty print information this ConferenceRoom

Parameters:
strm  Stream to output text representation

void ConferenceRoom::RemoveMember PString  memberId  ) 
 

Remove a member from this list of members


Member Data Documentation

PTime ConferenceRoom::lastEmptyTime [protected]
 

The time at which we were last detected as being empty. Once this room has been empty for five seconds, we are regarded as deadmeat, and are deleted.

Manager& ConferenceRoom::manager [protected]
 

Link to our control manager

PStringList ConferenceRoom::memberList [protected]
 

List of members who are curently in this conference room

PMutex ConferenceRoom::memberListLock [protected]
 

Mutex which provides thread safe access to the list of room members

PString ConferenceRoom::roomId [protected]
 

The id of this conference room


The documentation for this class was generated from the following files:
Generated on Sun Jan 29 19:49:30 2006 for Sofa Switch Multipoint Conf. Utility by  doxygen 1.4.4