Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback > Class Template Reference

#include <bulkDataSendRecvImpl.h>

Inheritance diagram for BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >:

Inheritance graph
[legend]
Collaboration diagram for BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 BulkDataSendRecvImpl (const ACE_CString &name, maci::ContainerServices *containerServices)
virtual ~BulkDataSendRecvImpl ()
void cleanUp ()
virtual void connect (bulkdata::BulkDataReceiver_ptr receiverObj_p)
virtual void disconnect ()
virtual void startSend ()
virtual void paceData ()
virtual void stopSend ()
virtual void openReceiver ()
bulkdata::BulkDataReceiverConfig * getReceiverConfig ()
virtual void closeReceiver ()
virtual ACSErr::CompletiongetCbStatus (CORBA::ULong flowNumber)
virtual void setTimeout (CORBA::ULong flowNumber, CORBA::ULong timeout)
virtual void setRecvName (const char *recvName)
virtual void subscribeNotification (ACS::CBvoid_ptr notifCb)

Private Attributes

AcsBulkdata::BulkDataSender<
TSenderCallback > 
sender
AcsBulkdata::BulkDataReceiver<
TReceiverCallback > 
receiver
maci::ContainerServicescontainerServices_p
CDB::DAL_ptr dal_p
CDB::DAO_ptr dao_p

template<class TReceiverCallback, class TSenderCallback = BulkDataSenderDefaultCallback>
class BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >


Constructor & Destructor Documentation

template<class TReceiverCallback, class TSenderCallback = BulkDataSenderDefaultCallback>
BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >::BulkDataSendRecvImpl const ACE_CString &  name,
maci::ContainerServices containerServices
 

Constructor

Parameters:
poa poa which will activate this and also all other components
name component name

template<class TReceiverCallback, class TSenderCallback = BulkDataSenderDefaultCallback>
virtual BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >::~BulkDataSendRecvImpl  )  [virtual]
 

Destructor


Member Function Documentation

template<class TReceiverCallback, class TSenderCallback = BulkDataSenderDefaultCallback>
void BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >::cleanUp  )  [virtual]
 

Called after the last functional call to the component has finished. The component should then orderly release resources etc. If this method is overwritten in a subclass, the developer has to make sure that all cleanup performed by the implementation of the base class take place. The best way to do this is to call the implementation of the base itself explicitly, as would be done implicitly in a destructor chain.

Returns:
void *

*

Reimplemented from acscomponent::ACSComponentImpl.

template<class TReceiverCallback, class TSenderCallback = BulkDataSenderDefaultCallback>
virtual void BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >::closeReceiver  )  [virtual]
 

Exceptions:
ACSBulkDataError::AVCloseReceiverErrorEx 

template<class TReceiverCallback, class TSenderCallback = BulkDataSenderDefaultCallback>
virtual void BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >::connect bulkdata::BulkDataReceiver_ptr  receiverObj_p  )  [virtual]
 

Negotiate and initialize connection with the SendRecv object.

Parameters:
receiver reference of the Receiver Component.
Exceptions:
ACSBulkDataError::AVConnectErrorEx 
Returns:
void

template<class TReceiverCallback, class TSenderCallback = BulkDataSenderDefaultCallback>
virtual void BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >::disconnect  )  [virtual]
 

Exceptions:
ACSBulkDataError::AVDisconnectErrorEx 

template<class TReceiverCallback, class TSenderCallback = BulkDataSenderDefaultCallback>
virtual ACSErr::Completion* BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >::getCbStatus CORBA::ULong  flowNumber  )  [inline, virtual]
 

Exceptions:
ACSBulkDataError::AVInvalidFlowNumberEx 

template<class TReceiverCallback, class TSenderCallback = BulkDataSenderDefaultCallback>
bulkdata::BulkDataReceiverConfig* BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >::getReceiverConfig  ) 
 

Exceptions:
ACSBulkDataError::AVReceiverConfigErrorEx 

template<class TReceiverCallback, class TSenderCallback = BulkDataSenderDefaultCallback>
virtual void BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >::openReceiver  )  [virtual]
 

Opens connection creating an out-of-bound channel using TAO A/V services. It creates the Receiver Stream End Point and Flow End Point for the connection with the Sender. The Receiver Stream End Point can be retrieved as an attribute.

Exceptions:
ACSBulkDataError::AVOpenReceiverErrorEx 
Returns:
void

template<class TReceiverCallback, class TSenderCallback = BulkDataSenderDefaultCallback>
virtual void BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >::paceData  )  [virtual]
 

Sends data to the Receiver calling the receive_frame() method on the Receiver side. This method must be overriden by the user to send his own data.

Parameters:
size buffer size of the sent data.
Exceptions:
ACSBulkDataError::AVPaceDataErrorEx 
Returns:
void

template<class TReceiverCallback, class TSenderCallback = BulkDataSenderDefaultCallback>
virtual void BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >::setRecvName const char *  recvName  )  [inline, virtual]
 

Exceptions:
ACSBulkDataError::AVSetReceiverNameErrorEx 

template<class TReceiverCallback, class TSenderCallback = BulkDataSenderDefaultCallback>
virtual void BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >::setTimeout CORBA::ULong  flowNumber,
CORBA::ULong  timeout
[inline, virtual]
 

Exceptions:
ACSBulkDataError::AVInvalidFlowNumberEx 

template<class TReceiverCallback, class TSenderCallback = BulkDataSenderDefaultCallback>
virtual void BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >::startSend  )  [virtual]
 

Calls the Receiver handle_start() method once the connection is established.

Exceptions:
ACSBulkDataError::AVStartSendErrorEx 
Returns:
void

template<class TReceiverCallback, class TSenderCallback = BulkDataSenderDefaultCallback>
virtual void BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >::stopSend  )  [virtual]
 

Calls the Receiver handle_stop() method.

Exceptions:
ACSBulkDataError::AVStopSendErrorEx 
Returns:
void

template<class TReceiverCallback, class TSenderCallback = BulkDataSenderDefaultCallback>
virtual void BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >::subscribeNotification ACS::CBvoid_ptr  notifCb  )  [inline, virtual]
 

Exceptions:
ACSBulkDataError::AVNotificationMechanismErrorEx 


Member Data Documentation

template<class TReceiverCallback, class TSenderCallback = BulkDataSenderDefaultCallback>
maci::ContainerServices* BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >::containerServices_p [private]
 

template<class TReceiverCallback, class TSenderCallback = BulkDataSenderDefaultCallback>
CDB::DAL_ptr BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >::dal_p [private]
 

template<class TReceiverCallback, class TSenderCallback = BulkDataSenderDefaultCallback>
CDB::DAO_ptr BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >::dao_p [private]
 

template<class TReceiverCallback, class TSenderCallback = BulkDataSenderDefaultCallback>
AcsBulkdata::BulkDataReceiver<TReceiverCallback> BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >::receiver [private]
 

template<class TReceiverCallback, class TSenderCallback = BulkDataSenderDefaultCallback>
AcsBulkdata::BulkDataSender<TSenderCallback> BulkDataSendRecvImpl< TReceiverCallback, TSenderCallback >::sender [private]
 


The documentation for this class was generated from the following file:
Generated on Thu Apr 30 02:36:11 2009 for ACS C++ API by doxygen 1.3.8