Back to index

salome-kernel  6.5.0
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Static Private Member Functions | Private Attributes
COMMUNICATION_EXPORT Protocol Reference

This class internally builds a receiver associated with the sender given. More...

#include <MatrixClient.hxx>

Collaboration diagram for COMMUNICATION_EXPORT:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 MultiCommException (const char *message)
const char * what () const
const void * getData (long &size) const
int getSizeOf () const
void setOwnerShip (bool own)
bool getOwnerShip () const
void release ()
virtual ~SALOME_Sender_i ()
 SALOME_SenderDouble_i (const double *tabToSend, long lgrTabToSend, bool ownTabToSend=false)
SALOME::TypeOfDataTransmitted getTypeOfDataTransmitted ()
SALOME::SenderDouble_ptr buildOtherWithProtocol (SALOME::TypeOfCommunication type)
virtual ~SALOME_SenderDouble_i ()
 SALOME_SenderInt_i (const int *tabToSend, long lgrTabToSend, bool ownTabToSend=false)
SALOME::TypeOfDataTransmitted getTypeOfDataTransmitted ()
SALOME::SenderInt_ptr buildOtherWithProtocol (SALOME::TypeOfCommunication type)
virtual ~SALOME_SenderInt_i ()
 SALOME_CorbaDoubleNCSender_i (const double *tabToSend, long lgrTabToSend, bool ownTabToSend=false)
 ~SALOME_CorbaDoubleNCSender_i ()
CORBA::ULong getSize ()
SALOME::vectorOfDoublesendPart (CORBA::ULong offset, CORBA::ULong length)
SALOME::vectorOfDoublesend ()
 SALOME_CorbaDoubleCSender_i (const double *tabToSend, long lgrTabToSend, bool ownTabToSend=false)
 ~SALOME_CorbaDoubleCSender_i ()
CORBA::ULong getSize ()
SALOME::vectorOfDoublesendPart (CORBA::ULong offset, CORBA::ULong length)
 SALOME_CorbaLongNCSender_i (const int *tabToSend, long lgrTabToSend, bool ownTabToSend=false)
 ~SALOME_CorbaLongNCSender_i ()
CORBA::ULong getSize ()
SALOME::vectorOfLongsendPart (CORBA::ULong offset, CORBA::ULong length)
SALOME::vectorOfLongsend ()
 SALOME_CorbaLongCSender_i (const int *tabToSend, long lgrTabToSend, bool ownTabToSend=false)
 ~SALOME_CorbaLongCSender_i ()
CORBA::ULong getSize ()
SALOME::vectorOfLongsendPart (CORBA::ULong offset, CORBA::ULong length)
 SALOMEMultiComm ()
 SALOMEMultiComm (SALOME::TypeOfCommunication type)
virtual void setProtocol (SALOME::TypeOfCommunication type)
SALOME::TypeOfCommunication getProtocol () const

Static Public Member Functions

static double * getValue (SALOME::Matrix_ptr distMat, int &columnSize, int &rowSize)
static double * getValue (SALOME::SenderDouble_ptr sender, long &size) throw (MultiCommException)
static int * getValue (SALOME::SenderInt_ptr sender, long &size) throw (MultiCommException)
static SALOME_SenderDouble_ifind (SALOME::SenderDouble_ptr pCorba)
static SALOME_SenderInt_ifind (SALOME::SenderInt_ptr pCorba)
static SALOME::SenderDouble_ptr buildSender (SALOMEMultiComm &multiCommunicator, const double *tab, long lgr, bool ownTab=false) throw (MultiCommException)
static SALOME::SenderInt_ptr buildSender (SALOMEMultiComm &multiCommunicator, const int *tab, long lgr, bool ownTab=false) throw (MultiCommException)
static SALOME::SenderDouble_ptr buildSender (SALOME::TypeOfCommunication NewType, SALOME_SenderDouble_i *src)
static SALOME::SenderInt_ptr buildSender (SALOME::TypeOfCommunication NewType, SALOME_SenderInt_i *src)

Protected Member Functions

 SALOME_Sender_i (const void *tabToSend, long lgrTabToSend, int sizeOf, bool ownTabToSend=false)

Protected Attributes

const void * _tabToSend
 Pointer to the generic array to transmit.
long _lgrTabToSend
 Length of the generic array to transmit.
int _sizeOf
 it represents the sizeof() of each component of the generic array:
Practically in terms of bytes the size to be transmitted is _lgrTabToSend*_sizeOf
bool _ownTabToSend
 Indicates if _tabToSend has to be deallocated.
SALOME::TypeOfCommunication _type

Static Private Member Functions

static double * getValueOneShot (SALOME::SenderDouble_ptr sender, long &size) throw (MultiCommException)
static int * getValueOneShot (SALOME::SenderInt_ptr sender, long &size) throw (MultiCommException)

Private Attributes

std::string _message

Detailed Description

This class internally builds a receiver associated with the sender given.

This class implements the factory pattern of GoF by making a sender by giving an array and a communicator.It completely hides the type of sender from the user.

Class is designed to ease the use of multi communication.

Servant class for CORBA sender for int* when copy of array _tabToSend is required, that is to say int and CORBA::Long are NOT binary equal.

Servant class for CORBA sender for int* when no copy of array _tabToSend is required, that is to say int and CORBA::Long are binary equal.

Servant class for CORBA sender for double* when copy of array _tabToSend is required, that is to say double and CORBA::Double are NOT binary equal.

Servant class for CORBA sender for double* when no copy of array _tabToSend is required, that is to say double and CORBA::Double are binary equal.

Generic servant class for senders that factorizes all the common methods and attributes necessary to senders.

It also performs transfert completely and clean up the objects. This is the only class used client side of an array.

All servant classes for senders have to inheritate from it.


Simply inherite from it your servant class you want to emit data with senders.

Definition at line 31 of file MatrixClient.hxx.


Constructor & Destructor Documentation

virtual COMMUNICATION_EXPORT::~SALOME_Sender_i ( ) [inline, virtual]

Definition at line 63 of file SALOME_Comm_i.hxx.

{}

Member Function Documentation

static SALOME::SenderDouble_ptr COMMUNICATION_EXPORT::buildSender ( SALOMEMultiComm multiCommunicator,
const double *  tab,
long  lgr,
bool  ownTab = false 
) throw (MultiCommException) [static]
static SALOME::SenderInt_ptr COMMUNICATION_EXPORT::buildSender ( SALOMEMultiComm multiCommunicator,
const int *  tab,
long  lgr,
bool  ownTab = false 
) throw (MultiCommException) [static]
static SALOME::SenderDouble_ptr COMMUNICATION_EXPORT::buildSender ( SALOME::TypeOfCommunication  NewType,
SALOME_SenderDouble_i src 
) [static]
static SALOME::SenderInt_ptr COMMUNICATION_EXPORT::buildSender ( SALOME::TypeOfCommunication  NewType,
SALOME_SenderInt_i src 
) [static]
static SALOME_SenderDouble_i* COMMUNICATION_EXPORT::find ( SALOME::SenderDouble_ptr  pCorba) [static]
static SALOME_SenderInt_i* COMMUNICATION_EXPORT::find ( SALOME::SenderInt_ptr  pCorba) [static]
const void* COMMUNICATION_EXPORT::getData ( long &  size) const

Definition at line 61 of file SALOME_Comm_i.hxx.

{ return _ownTabToSend; }

Definition at line 71 of file SALOME_Comm_i.hxx.

{ return SALOME::DOUBLE_; }

Definition at line 82 of file SALOME_Comm_i.hxx.

{ return SALOME::INT_; }
static double* COMMUNICATION_EXPORT::getValue ( SALOME::Matrix_ptr  distMat,
int &  columnSize,
int &  rowSize 
) [static]
static double* COMMUNICATION_EXPORT::getValue ( SALOME::SenderDouble_ptr  sender,
long &  size 
) throw (MultiCommException) [static]
static int* COMMUNICATION_EXPORT::getValue ( SALOME::SenderInt_ptr  sender,
long &  size 
) throw (MultiCommException) [static]
static double* COMMUNICATION_EXPORT::getValueOneShot ( SALOME::SenderDouble_ptr  sender,
long &  size 
) throw (MultiCommException) [static, private]
static int* COMMUNICATION_EXPORT::getValueOneShot ( SALOME::SenderInt_ptr  sender,
long &  size 
) throw (MultiCommException) [static, private]
COMMUNICATION_EXPORT::MultiCommException ( const char *  message)
COMMUNICATION_EXPORT::SALOME_CorbaDoubleCSender_i ( const double *  tabToSend,
long  lgrTabToSend,
bool  ownTabToSend = false 
)
COMMUNICATION_EXPORT::SALOME_CorbaDoubleNCSender_i ( const double *  tabToSend,
long  lgrTabToSend,
bool  ownTabToSend = false 
)
COMMUNICATION_EXPORT::SALOME_CorbaLongCSender_i ( const int *  tabToSend,
long  lgrTabToSend,
bool  ownTabToSend = false 
)
COMMUNICATION_EXPORT::SALOME_CorbaLongNCSender_i ( const int *  tabToSend,
long  lgrTabToSend,
bool  ownTabToSend = false 
)
COMMUNICATION_EXPORT::SALOME_Sender_i ( const void *  tabToSend,
long  lgrTabToSend,
int  sizeOf,
bool  ownTabToSend = false 
) [protected]
COMMUNICATION_EXPORT::SALOME_SenderDouble_i ( const double *  tabToSend,
long  lgrTabToSend,
bool  ownTabToSend = false 
)
COMMUNICATION_EXPORT::SALOME_SenderInt_i ( const int *  tabToSend,
long  lgrTabToSend,
bool  ownTabToSend = false 
)
SALOME::vectorOfDouble* COMMUNICATION_EXPORT::sendPart ( CORBA::ULong  offset,
CORBA::ULong  length 
)
SALOME::vectorOfDouble* COMMUNICATION_EXPORT::sendPart ( CORBA::ULong  offset,
CORBA::ULong  length 
)
SALOME::vectorOfLong* COMMUNICATION_EXPORT::sendPart ( CORBA::ULong  offset,
CORBA::ULong  length 
)
SALOME::vectorOfLong* COMMUNICATION_EXPORT::sendPart ( CORBA::ULong  offset,
CORBA::ULong  length 
)
const char* COMMUNICATION_EXPORT::what ( ) const

Member Data Documentation

Length of the generic array to transmit.

Definition at line 48 of file SALOME_Comm_i.hxx.

std::string COMMUNICATION_EXPORT::_message [private]

Definition at line 32 of file MultiCommException.hxx.

Indicates if _tabToSend has to be deallocated.

Definition at line 54 of file SALOME_Comm_i.hxx.

it represents the sizeof() of each component of the generic array:
Practically in terms of bytes the size to be transmitted is _lgrTabToSend*_sizeOf

Definition at line 52 of file SALOME_Comm_i.hxx.

const void* COMMUNICATION_EXPORT::_tabToSend [protected]

Pointer to the generic array to transmit.

Definition at line 46 of file SALOME_Comm_i.hxx.

Definition at line 37 of file SALOMEMultiComm.hxx.


The documentation for this protocol was generated from the following files: