30 #ifndef _COPY_TO_USER_SPACE_HXX_
31 #define _COPY_TO_USER_SPACE_HXX_
44 template <
bool zerocopy,
typename DataManipulator >
47 template <
class T1,
class T2>
48 static void apply( T1 * & data, T2 & corbaData,
size_t ){
50 typedef typename DataManipulator::InnerType InnerType;
83 InnerType * dataPtr = DataManipulator::getPointer(corbaData,
false);
100 template <
typename DataManipulator>
104 template <
class T1,
class T2>
105 static void apply( T1 * &data, T2 & corbaData,
size_t nRead){
106 typedef typename DataManipulator::InnerType InnerType;
110 InnerType * dataPtr = NULL;
113 dataPtr = DataManipulator::getPointer(corbaData,
false);
114 std::cerr <<
"-------- Copy2UserSpace<false> MARK 1a --dataPtr("<<dataPtr<<
")[0.."<<
115 DataManipulator::size(corbaData) <<
"] : ----------------" << std::endl;
116 std::copy(dataPtr,dataPtr+DataManipulator::size(corbaData),std::ostream_iterator<T1>(std::cerr,
" "));
117 for (
int i=0; i< DataManipulator::size(corbaData); ++i)
118 fprintf(stderr,
"pointer[%d]=%p ",i, dataPtr[i]);
119 std::cerr << std::endl;
123 std::cerr <<
"-------- Copy2UserSpace<false> MARK 1b --data("<<tmpData<<
")[0.."<<
124 DataManipulator::size(corbaData) <<
"] : ----------------" << std::endl;
125 std::copy(tmpData,tmpData+DataManipulator::size(corbaData),std::ostream_iterator<T1>(std::cerr,
" "));
126 for (
int i=0; i< DataManipulator::size(corbaData); ++i)
127 fprintf(stderr,
"pointer[%d]=%p ",i, tmpData[i]);
128 std::cerr << std::endl;
145 std::cerr <<
"-------- Copy2UserSpace<false> MARK 1c --data("<<tmpData<<
")[0.."<<
146 DataManipulator::size(corbaData) <<
"] : ----------------" << std::endl;
147 std::copy(tmpData,tmpData+DataManipulator::size(corbaData),std::ostream_iterator<T1>(std::cerr,
" "));
148 for (
int i=0; i< DataManipulator::size(corbaData); ++i)
149 fprintf(stderr,
"pointer[%d]=%p ",i, tmpData[i]);
150 std::cerr << std::endl;
157 template <
bool rel,
typename DataManipulator >
159 template <
typename T>
162 typedef typename DataManipulator::Type DataType;
173 template <
typename DataManipulator>
176 template <
typename T>
177 static void apply(T * dataPtr) {
delete[] dataPtr; }
bool VerbosityActivated()
Called by any log message macros to decide about log output in Release and Debug mode dynamically rel...
Definition: libSALOMELog.cxx:48
def copy(src, dst)
Definition: pythonpath_reduction.py:35
static void apply(T1 *&data, T2 &corbaData, size_t nRead)
Definition: Copy2UserSpace.hxx:105
Definition: Copy2UserSpace.hxx:45
static void apply(T1 *&data, T2 &corbaData, size_t)
Definition: Copy2UserSpace.hxx:48
static void apply(T *dataPtr)
Definition: Copy2UserSpace.hxx:177
Definition: Copy2UserSpace.hxx:158
static void apply(T *)
Definition: Copy2UserSpace.hxx:160