iso::com::Messenger Class Reference

#include <iso_com_messenger.h>

List of all members.

Public Member Functions

 Messenger ()
 create messenger
virtual ~Messenger ()
 destructor
QList< base::String > senderNames () const
 return sender names
bool checkSender (const base::String &pSenderName) const
 check sender
Sendersender (const base::String &pSenderName) throw (ComException)
 retrieve sender
Format senderFormat (Sender *pSender)
 return sender format
Format senderFormat (const base::String &pSenderName) const throw (ComException)
 return sender format
Protocol senderProtocol (const base::String &pSenderName) const throw (ComException)
 return sender protocol
base::String senderIP (const base::String &pSenderName) const throw (ComException)
 return sender ip
unsigned int senderPort (const base::String &pSenderName) const throw (ComException)
 return sender ip
void addSender (Sender *pSender) throw (ComException)
 add sender
void createSender (const base::String &pSenderName, const base::String &pReceiverName) throw (ComException)
 create direct sender
void createSender (const base::String &pSenderName, const base::String &pReceiverIP, unsigned int pReceiverPort, Protocol pComProt, Format pComForm) throw (ComException)
 create network sender
virtual void removeSender (const base::String &pSenderName) throw (ComException)
 remove sender
virtual void removeSenders ()
 remove all senders
QList< base::String > receiverNames () const
 return receiver names
bool checkReceiver (const base::String &pReceiverName) const
 check receiver
Receiverreceiver (const base::String &pReceiverName) throw (ComException)
 retrieve receiver
Format receiverFormat (const base::String &pReceiverName) const throw (ComException)
 return receiver format
Protocol receiverProtocol (const base::String &pReceiverName) const throw (ComException)
 return receiver protocol
unsigned int receiverPort (const base::String &pReceiverName) const throw (ComException)
 return receiver port
void addReceiver (Receiver *pReceiver) throw (ComException)
 add receiver
void createReceiver (const base::String &pReceiverName) throw (ComException)
 create direct receiver
void createReceiver (const base::String &pReceiverName, unsigned int pListeningPort, Protocol pComProt, Format pComForm) throw (ComException)
 create network receiver
virtual void removeReceiver (const base::String &pReceiverName) throw (ComException)
 remove receiver
virtual void removeReceivers ()
 remove all receivers
void registerMessageListener (const base::String &pReceiverName, MessageListener &pMessageListener) throw (ComException)
 register message listener
void send (const Message &pMessage)
 send message
void send (const base::String &pSenderName, const Message &pMessage) throw (ComException)
 send message
void receive ()
 calls receive on all receivers
bool messageAvailable (const base::String &pReceiverName) const throw (ComException)
 check if receiver has available message
Message message (const base::String &pReceiverName, int pTimeOut) throw (ComException)
 retrieve message from receiver
void clearMessage (const base::String &pReceiverName) const throw (ComException)
 remove available message
virtual void update ()
 update messenger

Protected Member Functions

void updateMessageListeners ()
 message listeners

Protected Attributes

QHash< base::String, Sender * > mSenders
QHash< base::String, Receiver * > mReceivers
 message sender repository
QMultiHash< Receiver *, MessageListener * > mMessageListeners
 message receiver repository


Constructor & Destructor Documentation

Messenger::Messenger (  ) 

create messenger

Messenger::~Messenger (  )  [virtual]

destructor


Member Function Documentation

QList< base::String > Messenger::senderNames (  )  const

return sender names

Returns:
sender names

bool Messenger::checkSender ( const base::String &  pSenderName  )  const

check sender

Parameters:
pSenderName name of sender
Returns:
true if sender is found, false otherwise

Sender * Messenger::sender ( const base::String &  pSenderName  )  throw (ComException)

retrieve sender

Parameters:
pSenderName name of sender
Returns:
sender
Exceptions:
ComException sender not found

Format Messenger::senderFormat ( Sender pSender  ) 

return sender format

Parameters:
pSender sender
Returns:
sender format

Format Messenger::senderFormat ( const base::String &  pSenderName  )  const throw (ComException)

return sender format

Parameters:
pSenderName name of sender
Returns:
sender format
Exceptions:
ComException sender not found

Protocol Messenger::senderProtocol ( const base::String &  pSenderName  )  const throw (ComException)

return sender protocol

Parameters:
pSenderName name of sender
Returns:
sender protocol
Exceptions:
ComException sender not found

base::String Messenger::senderIP ( const base::String &  pSenderName  )  const throw (ComException)

return sender ip

Parameters:
pSenderName name of sender
Returns:
sender ip
Exceptions:
ComException sender not found

unsigned int Messenger::senderPort ( const base::String &  pSenderName  )  const throw (ComException)

return sender ip

Parameters:
pSenderName name of sender
Returns:
sender ip
Exceptions:
ComException sender not found

void Messenger::addSender ( Sender pSender  )  throw (ComException)

add sender

Parameters:
pSender sender
Exceptions:
ComException Exception sender with identical name already registered

void Messenger::createSender ( const base::String &  pSenderName,
const base::String &  pReceiverName 
) throw (ComException)

create direct sender

Parameters:
pSenderName name of direct sender
pReceiverName name of direct receiver
Remarks:
a receiver that posssesses the supplied name must already have been stored previously
Exceptions:
ComException failed to create direct sender

void Messenger::createSender ( const base::String &  pSenderName,
const base::String &  pReceiverIP,
unsigned int  pReceiverPort,
Protocol  pComProt,
Format  pComForm 
) throw (ComException)

create network sender

Parameters:
pSenderName name of network sender
pReceiverIP IP address of receiver
pReceiverPort port of receiver
pComProt communication protocol (UDP / TCP)
pComForm communication format (Default / OSC)
Exceptions:
ComException failed to create network sender

void Messenger::removeSender ( const base::String &  pSenderName  )  throw (ComException) [virtual]

remove sender

Parameters:
pSenderName name of sender
Exceptions:
failed to remove sender

void Messenger::removeSenders (  )  [virtual]

remove all senders

QList< base::String > Messenger::receiverNames (  )  const

return receiver names

Returns:
receiver names

bool Messenger::checkReceiver ( const base::String &  pReceiverName  )  const

check receiver

Parameters:
pReceiverName name of receiver
Returns:
true if receiver is found, false otherwise

Receiver * Messenger::receiver ( const base::String &  pReceiverName  )  throw (ComException)

retrieve receiver

Parameters:
pReceiverName name of receiver
Returns:
receiver
Exceptions:
ComException receiver not found

Format Messenger::receiverFormat ( const base::String &  pReceiverName  )  const throw (ComException)

return receiver format

Parameters:
pSenderName name of receiver
Returns:
receiver format
Exceptions:
ComException receiver not found

Protocol Messenger::receiverProtocol ( const base::String &  pReceiverName  )  const throw (ComException)

return receiver protocol

Parameters:
pSenderName name of receiver
Returns:
receiver protocol
Exceptions:
ComException receiver not found

unsigned int Messenger::receiverPort ( const base::String &  pReceiverName  )  const throw (ComException)

return receiver port

Parameters:
pReceiverName name of receiver
Returns:
receiver port
Exceptions:
ComException receiver not found

void Messenger::addReceiver ( Receiver pReceiver  )  throw (ComException)

add receiver

Parameters:
pReceiver receiver
Exceptions:
ComException Exception receiver with identical name already registered

void Messenger::createReceiver ( const base::String &  pReceiverName  )  throw (ComException)

create direct receiver

Parameters:
pReceiverName name of direct receiver
Exceptions:
ComException failed to create direct receiver

void Messenger::createReceiver ( const base::String &  pReceiverName,
unsigned int  pListeningPort,
Protocol  pComProt,
Format  pComForm 
) throw (ComException)

create network receiver

Parameters:
pReceiverName name of network receiver
pListeningPort receiver listening port
pComProt communication protocol (UDP / TCP)
pComForm communication format (Default / OSC)
Exceptions:
ComException failed to create network receiver

void Messenger::removeReceiver ( const base::String &  pReceiverName  )  throw (ComException) [virtual]

remove receiver

Parameters:
pReceiverName name of receiver
Exceptions:
failed to remove receiver

void Messenger::removeReceivers (  )  [virtual]

remove all receivers

void Messenger::registerMessageListener ( const base::String &  pReceiverName,
MessageListener pMessageListener 
) throw (ComException)

register message listener

Parameters:
pReceiverName name of receiver
pMessageListener message listener
Exceptions:
ComException receiver not found

void Messenger::send ( const Message pMessage  ) 

send message

Parameters:
pMessage message
Remarks:
sends the same message via all senders

failure in sending produces an error message in the programs verbose output

void Messenger::send ( const base::String &  pSenderName,
const Message pMessage 
) throw (ComException)

send message

Parameters:
pSenderName name of sender
pMessage message
Exceptions:
ComException sender not found
Remarks:
sends message via single specified sender

failure in sending produces an error message in the programs verbose output

void Messenger::receive (  ) 

calls receive on all receivers

bool Messenger::messageAvailable ( const base::String &  pReceiverName  )  const throw (ComException)

check if receiver has available message

Parameters:
pReceiverName name of receiver
Returns:
true if message is available, false otherwise
Exceptions:
ComException receiver not found

Message Messenger::message ( const base::String &  pReceiverName,
int  pTimeOut 
) throw (ComException)

retrieve message from receiver

Parameters:
pReceiverName receiver name
pTimeOut maximum time in milisecs this function will block before returning ( < 0: no timeout, funcion blocks till message is complete)
Returns:
message, message will be empty if timeout is exceeded
Exceptions:
ComException failed to retrieve message

void Messenger::clearMessage ( const base::String &  pReceiverName  )  const throw (ComException)

remove available message

Parameters:
pReceiverName name of receiver
Exceptions:
ComException receiver not found

void Messenger::update (  )  [virtual]

update messenger

Remarks:
calls receive method on all receivers

void Messenger::updateMessageListeners (  )  [protected]

message listeners


Member Data Documentation

QHash<base::String, Sender*> iso::com::Messenger::mSenders [protected]

QHash<base::String, Receiver*> iso::com::Messenger::mReceivers [protected]

message sender repository

QMultiHash< Receiver*, MessageListener* > iso::com::Messenger::mMessageListeners [protected]

message receiver repository


The documentation for this class was generated from the following files:
Generated on Fri Feb 25 13:53:12 2011 for iso_com by  doxygen 1.5.1