Back to index

salome-kernel  6.5.0
Public Member Functions | Protected Member Functions | Static Protected Member Functions | Private Member Functions | Private Attributes
CorbaWCWithCopyReceiver< T, TCorba, TSeqCorba, CorbaSender, servForT, ptrForT > Class Template Reference

Receiver used for transfert with CORBA when copy is required both remotely and locally. More...

#include <Receivers.hxx>

Inheritance diagram for CorbaWCWithCopyReceiver< T, TCorba, TSeqCorba, CorbaSender, servForT, ptrForT >:
Inheritance graph
[legend]
Collaboration diagram for CorbaWCWithCopyReceiver< T, TCorba, TSeqCorba, CorbaSender, servForT, ptrForT >:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 CorbaWCWithCopyReceiver (CorbaSender mySender)
 ~CorbaWCWithCopyReceiver ()
T * getValue (long &size)

Protected Member Functions

virtual T * getValue (long &size, servForTsender)

Static Protected Member Functions

static T * getLocalValue (long &size, ptrForT *servant)

Private Member Functions

T * getDistValue (long &size)

Private Attributes

CorbaSender _mySender

Detailed Description

template<class T, class TCorba, class TSeqCorba, class CorbaSender, class servForT, class ptrForT>
class CorbaWCWithCopyReceiver< T, TCorba, TSeqCorba, CorbaSender, servForT, ptrForT >

Receiver used for transfert with CORBA when copy is required both remotely and locally.

Definition at line 84 of file Receivers.hxx.


Constructor & Destructor Documentation

template<class T , class TCorba , class TSeqCorba , class CorbaSender , class servForT , class ptrForT >
CorbaWCWithCopyReceiver< T, TCorba, TSeqCorba, CorbaSender, servForT, ptrForT >::CorbaWCWithCopyReceiver ( CorbaSender  mySender)

Definition at line 123 of file Receivers.cxx.

                                                                                                                     :_mySender(mySender){
}
template<class T , class TCorba , class TSeqCorba , class CorbaSender , class servForT , class ptrForT >
CorbaWCWithCopyReceiver< T, TCorba, TSeqCorba, CorbaSender, servForT, ptrForT >::~CorbaWCWithCopyReceiver ( )

Definition at line 127 of file Receivers.cxx.

                                                                                                  {
  _mySender->release();
}

Member Function Documentation

template<class T , class TCorba , class TSeqCorba , class CorbaSender , class servForT , class ptrForT >
T * CorbaWCWithCopyReceiver< T, TCorba, TSeqCorba, CorbaSender, servForT, ptrForT >::getDistValue ( long &  size) [private, virtual]

Implements Receiver< T, servForT, ptrForT >.

Definition at line 132 of file Receivers.cxx.

                                                                                                   {
  size=_mySender->getSize();
  long n;
  T *ret=new T[size];
  T *iter=ret;
  for(long i=0;i<size;i+=TAILLE_SPLIT)
    {
      if(size-i>TAILLE_SPLIT)
        n=TAILLE_SPLIT;
      else
        n=size-i;
      TSeqCorba seq=_mySender->sendPart(i,n);
      TCorba *seqd=seq->get_buffer(0);
      for(long j=0;j<n;j++)
      *iter++=*seqd++;
    }
  return ret;
}
static T* Receiver< T, servForT , ptrForT >::getLocalValue ( long &  size,
ptrForT *  servant 
) [inline, static, protected, inherited]
virtual T* Receiver< T, servForT , ptrForT >::getValue ( long &  size,
servForT  sender 
) [protected, virtual, inherited]
template<class T , class TCorba , class TSeqCorba , class CorbaSender , class servForT , class ptrForT >
T * CorbaWCWithCopyReceiver< T, TCorba, TSeqCorba, CorbaSender, servForT, ptrForT >::getValue ( long &  size) [virtual]

Implements Receiver< T, servForT, ptrForT >.

Definition at line 152 of file Receivers.cxx.

Here is the call graph for this function:


Member Data Documentation

template<class T , class TCorba , class TSeqCorba , class CorbaSender , class servForT , class ptrForT >
CorbaSender CorbaWCWithCopyReceiver< T, TCorba, TSeqCorba, CorbaSender, servForT, ptrForT >::_mySender [private]

Definition at line 87 of file Receivers.hxx.


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