GSDFPacketDcps_impl.cpp
Go to the documentation of this file.
2 #include "gapi.h"
3 #include "gapi_loanRegistry.h"
5 #include "ccpp_DataReader_impl.h"
6 #include "ccpp_DataReaderView_impl.h"
7 
8 
9 extern c_bool
11  c_base base,
14 
15 extern void
17  void *_from,
18  void *_to);
19 
20 // DDS opensplice_dds_comm::GSDFPacket TypeSupportFactory Object Body
21 
22 ::DDS::DataWriter_ptr
24 {
26 }
27 
28 ::DDS::DataReader_ptr
30 {
32 }
33 
34 
35 ::DDS::DataReaderView_ptr
37 {
39 }
40 
41 // DDS opensplice_dds_comm::GSDFPacket TypeSupport Object Body
42 
44  TypeSupport_impl(
50  (gapi_readerCopy) ::DDS::ccpp_DataReaderCopy<opensplice_dds_comm::GSDFPacketSeq, opensplice_dds_comm::GSDFPacket>,
52  opensplice_dds_comm::GSDFPacketTypeSupport::metaDescriptorArrLength)
53 {
54  // Parent constructor takes care of everything.
55 }
56 
58 {
59  // Parent destructor takes care of everything.
60 }
61 
62 ::DDS::ReturnCode_t
64  ::DDS::DomainParticipant_ptr domain,
65  const char * type_name) THROW_ORB_EXCEPTIONS
66 {
67  return TypeSupport_impl::register_type(domain, type_name);
68 }
69 
70 char *
72 {
73  return TypeSupport_impl::get_type_name();
74 }
75 
76 // DDS opensplice_dds_comm::GSDFPacket DataWriter_impl Object Body
77 
79  gapi_dataWriter handle
80 ) : ::DDS::DataWriter_impl(handle)
81 {
82  // Parent constructor takes care of everything.
83 }
84 
86 {
87  // Parent destructor takes care of everything.
88 }
89 
90 ::DDS::InstanceHandle_t
92  const opensplice_dds_comm::GSDFPacket & instance_data) THROW_ORB_EXCEPTIONS
93 {
94  return DataWriter_impl::register_instance(&instance_data);
95 }
96 
97 ::DDS::InstanceHandle_t
99  const GSDFPacket & instance_data,
100  const ::DDS::Time_t & source_timestamp) THROW_ORB_EXCEPTIONS
101 {
102  return DataWriter_impl::register_instance_w_timestamp(&instance_data, source_timestamp);
103 }
104 
105 ::DDS::ReturnCode_t
107  const opensplice_dds_comm::GSDFPacket & instance_data,
108  ::DDS::InstanceHandle_t handle) THROW_ORB_EXCEPTIONS
109 {
110  return DataWriter_impl::unregister_instance(&instance_data, handle);
111 }
112 
113 ::DDS::ReturnCode_t
115  const GSDFPacket & instance_data,
116  ::DDS::InstanceHandle_t handle,
117  const ::DDS::Time_t & source_timestamp) THROW_ORB_EXCEPTIONS
118 {
119  return DataWriter_impl::unregister_instance_w_timestamp(&instance_data, handle, source_timestamp);
120 }
121 
122 ::DDS::ReturnCode_t
124  const opensplice_dds_comm::GSDFPacket & instance_data,
125  ::DDS::InstanceHandle_t handle) THROW_ORB_EXCEPTIONS
126 {
127  return DataWriter_impl::write(&instance_data, handle);
128 }
129 
130 ::DDS::ReturnCode_t
132  const GSDFPacket & instance_data,
133  ::DDS::InstanceHandle_t handle,
134  const ::DDS::Time_t & source_timestamp) THROW_ORB_EXCEPTIONS
135 {
136  return DataWriter_impl::write_w_timestamp(&instance_data, handle, source_timestamp);
137 }
138 
139 ::DDS::ReturnCode_t
141  const opensplice_dds_comm::GSDFPacket & instance_data,
142  ::DDS::InstanceHandle_t handle) THROW_ORB_EXCEPTIONS
143 {
144  return DataWriter_impl::dispose(&instance_data, handle);
145 }
146 
147 ::DDS::ReturnCode_t
149  const GSDFPacket & instance_data,
150  ::DDS::InstanceHandle_t handle,
151  const ::DDS::Time_t & source_timestamp) THROW_ORB_EXCEPTIONS
152 {
153  return DataWriter_impl::dispose_w_timestamp(&instance_data, handle, source_timestamp);
154 }
155 
156 ::DDS::ReturnCode_t
158  const opensplice_dds_comm::GSDFPacket & instance_data,
159  ::DDS::InstanceHandle_t handle) THROW_ORB_EXCEPTIONS
160 {
161  return DataWriter_impl::writedispose(&instance_data, handle);
162 }
163 
164 ::DDS::ReturnCode_t
166  const GSDFPacket & instance_data,
167  ::DDS::InstanceHandle_t handle,
168  const ::DDS::Time_t & source_timestamp) THROW_ORB_EXCEPTIONS
169 {
170  return DataWriter_impl::writedispose_w_timestamp(&instance_data, handle, source_timestamp);
171 }
172 
173 ::DDS::ReturnCode_t
175  GSDFPacket & key_holder,
176  ::DDS::InstanceHandle_t handle) THROW_ORB_EXCEPTIONS
177 {
178  return DataWriter_impl::get_key_value(&key_holder, handle);
179 }
180 
181 ::DDS::InstanceHandle_t
183  const opensplice_dds_comm::GSDFPacket & instance_data) THROW_ORB_EXCEPTIONS
184 {
185  return DataWriter_impl::lookup_instance(&instance_data);
186 }
187 
188 // DDS opensplice_dds_comm::GSDFPacket DataReader_impl Object Body
189 
191  gapi_dataReader handle
192 ) : ::DDS::DataReader_impl(handle, ::DDS::ccpp_DataReaderParallelDemarshallingMain<opensplice_dds_comm::GSDFPacketSeq>)
193 {
194  // Parent constructor takes care of everything.
195 }
196 
198 {
199  // Parent destructor takes care of everything.
200 }
201 
202 
203 ::DDS::ReturnCode_t
205  opensplice_dds_comm::GSDFPacketSeq & received_data,
206  ::DDS::SampleInfoSeq & info_seq,
207  ::DDS::Long max_samples,
208  ::DDS::SampleStateMask sample_states,
209  ::DDS::ViewStateMask view_states,
210  ::DDS::InstanceStateMask instance_states) THROW_ORB_EXCEPTIONS
211 {
212  ::DDS::ReturnCode_t status;
213 
214  status = check_preconditions(received_data, info_seq, max_samples);
215  if ( status == ::DDS::RETCODE_OK ) {
216  status = DataReader_impl::read(&received_data, info_seq, max_samples, sample_states, view_states, instance_states);
217  }
218  return status;
219 }
220 
221 ::DDS::ReturnCode_t
223  opensplice_dds_comm::GSDFPacketSeq & received_data,
224  ::DDS::SampleInfoSeq & info_seq,
225  ::DDS::Long max_samples,
226  ::DDS::SampleStateMask sample_states,
227  ::DDS::ViewStateMask view_states,
228  ::DDS::InstanceStateMask instance_states) THROW_ORB_EXCEPTIONS
229 {
230  ::DDS::ReturnCode_t status;
231 
232  status = check_preconditions(received_data, info_seq, max_samples);
233  if ( status == ::DDS::RETCODE_OK ) {
234  status = DataReader_impl::take(&received_data, info_seq, max_samples, sample_states, view_states, instance_states);
235  }
236  return status;
237 }
238 
239 ::DDS::ReturnCode_t
241  opensplice_dds_comm::GSDFPacketSeq & received_data,
242  ::DDS::SampleInfoSeq & info_seq,
243  ::DDS::Long max_samples,
244  ::DDS::ReadCondition_ptr a_condition) THROW_ORB_EXCEPTIONS
245 {
246  ::DDS::ReturnCode_t status;
247 
248  status = check_preconditions(received_data, info_seq, max_samples);
249  if ( status == ::DDS::RETCODE_OK ) {
250  status = DataReader_impl::read_w_condition(&received_data, info_seq, max_samples, a_condition);
251  }
252  return status;
253 }
254 
255 ::DDS::ReturnCode_t
257  opensplice_dds_comm::GSDFPacketSeq & received_data,
258  ::DDS::SampleInfoSeq & info_seq,
259  ::DDS::Long max_samples,
260  ::DDS::ReadCondition_ptr a_condition) THROW_ORB_EXCEPTIONS
261 {
262  ::DDS::ReturnCode_t status;
263 
264  status = check_preconditions(received_data, info_seq, max_samples);
265  if ( status == ::DDS::RETCODE_OK ) {
266  status = DataReader_impl::take_w_condition(&received_data, info_seq, max_samples, a_condition);
267  }
268  return status;
269 }
270 
271 
272 ::DDS::ReturnCode_t
274  opensplice_dds_comm::GSDFPacket & received_data,
275  ::DDS::SampleInfo & sample_info) THROW_ORB_EXCEPTIONS
276 {
277  return DataReader_impl::read_next_sample(&received_data, sample_info);
278 }
279 
280 
281 ::DDS::ReturnCode_t
283  opensplice_dds_comm::GSDFPacket & received_data,
284  ::DDS::SampleInfo & sample_info) THROW_ORB_EXCEPTIONS
285 {
286  return DataReader_impl::take_next_sample(&received_data, sample_info);
287 }
288 
289 
290 ::DDS::ReturnCode_t
292  opensplice_dds_comm::GSDFPacketSeq & received_data,
293  ::DDS::SampleInfoSeq & info_seq,
294  ::DDS::Long max_samples,
295  ::DDS::InstanceHandle_t a_handle,
296  ::DDS::SampleStateMask sample_states,
297  ::DDS::ViewStateMask view_states,
298  ::DDS::InstanceStateMask instance_states) THROW_ORB_EXCEPTIONS
299 {
300  ::DDS::ReturnCode_t status;
301 
302  status = check_preconditions(received_data, info_seq, max_samples);
303  if ( status == ::DDS::RETCODE_OK ) {
304  status = DataReader_impl::read_instance(&received_data, info_seq, max_samples, a_handle, sample_states, view_states, instance_states);
305  }
306  return status;
307 }
308 
309 ::DDS::ReturnCode_t
311  opensplice_dds_comm::GSDFPacketSeq & received_data,
312  ::DDS::SampleInfoSeq & info_seq,
313  ::DDS::Long max_samples,
314  ::DDS::InstanceHandle_t a_handle,
315  ::DDS::SampleStateMask sample_states,
316  ::DDS::ViewStateMask view_states,
317  ::DDS::InstanceStateMask instance_states) THROW_ORB_EXCEPTIONS
318 {
319  ::DDS::ReturnCode_t status;
320 
321  status = check_preconditions(received_data, info_seq, max_samples);
322  if ( status == ::DDS::RETCODE_OK ) {
323  status = DataReader_impl::take_instance(&received_data, info_seq, max_samples, a_handle, sample_states, view_states, instance_states);
324  }
325  return status;
326 }
327 
328 ::DDS::ReturnCode_t
330  opensplice_dds_comm::GSDFPacketSeq & received_data,
331  ::DDS::SampleInfoSeq & info_seq,
332  ::DDS::Long max_samples,
333  ::DDS::InstanceHandle_t a_handle,
334  ::DDS::SampleStateMask sample_states,
335  ::DDS::ViewStateMask view_states,
336  ::DDS::InstanceStateMask instance_states) THROW_ORB_EXCEPTIONS
337 {
338  ::DDS::ReturnCode_t status;
339 
340  status = check_preconditions(received_data, info_seq, max_samples);
341  if ( status == ::DDS::RETCODE_OK ) {
342  status = DataReader_impl::read_next_instance(&received_data, info_seq, max_samples, a_handle, sample_states, view_states, instance_states);
343  }
344  return status;
345 }
346 
347 ::DDS::ReturnCode_t
349  opensplice_dds_comm::GSDFPacketSeq & received_data,
350  ::DDS::SampleInfoSeq & info_seq,
351  ::DDS::Long max_samples,
352  ::DDS::InstanceHandle_t a_handle,
353  ::DDS::SampleStateMask sample_states,
354  ::DDS::ViewStateMask view_states,
355  ::DDS::InstanceStateMask instance_states) THROW_ORB_EXCEPTIONS
356 {
357  ::DDS::ReturnCode_t status;
358 
359  status = check_preconditions(received_data, info_seq, max_samples);
360  if ( status == ::DDS::RETCODE_OK ) {
361  status = DataReader_impl::take_next_instance(&received_data, info_seq, max_samples, a_handle, sample_states, view_states, instance_states);
362  }
363  return status;
364 }
365 
366 
367 ::DDS::ReturnCode_t
369  opensplice_dds_comm::GSDFPacketSeq & received_data,
370  ::DDS::SampleInfoSeq & info_seq,
371  ::DDS::Long max_samples,
372  ::DDS::InstanceHandle_t a_handle,
373  ::DDS::ReadCondition_ptr a_condition) THROW_ORB_EXCEPTIONS
374 {
375  ::DDS::ReturnCode_t status;
376 
377  status = check_preconditions(received_data, info_seq, max_samples);
378  if ( status == ::DDS::RETCODE_OK ) {
379  status = DataReader_impl::read_next_instance_w_condition(&received_data, info_seq, max_samples, a_handle, a_condition);
380  }
381  return status;
382 }
383 
384 
385 ::DDS::ReturnCode_t
387  opensplice_dds_comm::GSDFPacketSeq & received_data,
388  ::DDS::SampleInfoSeq & info_seq,
389  ::DDS::Long max_samples,
390  ::DDS::InstanceHandle_t a_handle,
391  ::DDS::ReadCondition_ptr a_condition) THROW_ORB_EXCEPTIONS
392 {
393  ::DDS::ReturnCode_t status;
394 
395  status = check_preconditions(received_data, info_seq, max_samples);
396  if ( status == ::DDS::RETCODE_OK ) {
397  status = DataReader_impl::take_next_instance_w_condition(&received_data, info_seq, max_samples, a_handle, a_condition);
398  }
399  return status;
400 }
401 
402 
403 ::DDS::ReturnCode_t
405  opensplice_dds_comm::GSDFPacketSeq & received_data,
406  ::DDS::SampleInfoSeq & info_seq) THROW_ORB_EXCEPTIONS
407 {
408  ::DDS::ReturnCode_t status = ::DDS::RETCODE_OK;
409 
410  if ( received_data.length() > 0 ) {
411  if (received_data.length() == info_seq.length() &&
412  received_data.release() == info_seq.release() ) {
413  if (!received_data.release()) {
414  status = DataReader_impl::return_loan( received_data.get_buffer(),
415  info_seq.get_buffer() );
416 
417  if ( status == ::DDS::RETCODE_OK ) {
418  if ( !received_data.release() ) {
419  opensplice_dds_comm::GSDFPacketSeq::freebuf( received_data.get_buffer(false) );
420  received_data.replace(0, 0, NULL, false);
421  ::DDS::SampleInfoSeq::freebuf( info_seq.get_buffer(false) );
422  info_seq.replace(0, 0, NULL, false);
423  }
424  } else if ( status == ::DDS::RETCODE_NO_DATA ) {
425  if ( received_data.release() ) {
426  status = ::DDS::RETCODE_OK;
427  } else {
428  status = ::DDS::RETCODE_PRECONDITION_NOT_MET;
429  }
430  }
431  }
432  } else {
433  status = ::DDS::RETCODE_PRECONDITION_NOT_MET;
434  }
435  }
436  return status;
437 }
438 
439 
440 ::DDS::ReturnCode_t
442  opensplice_dds_comm::GSDFPacket & key_holder,
443  ::DDS::InstanceHandle_t handle) THROW_ORB_EXCEPTIONS
444 {
445  return DataReader_impl::get_key_value(&key_holder, handle);
446 }
447 
448 ::DDS::InstanceHandle_t
450  const opensplice_dds_comm::GSDFPacket & instance) THROW_ORB_EXCEPTIONS
451 {
452  return DataReader_impl::lookup_instance(&instance);
453 }
454 
455 ::DDS::ReturnCode_t
457  opensplice_dds_comm::GSDFPacketSeq & received_data,
458  ::DDS::SampleInfoSeq & info_seq,
459  ::DDS::Long max_samples)
460 {
461  ::DDS::ReturnCode_t status = ::DDS::RETCODE_PRECONDITION_NOT_MET;
462 
463  if ( received_data.length() == info_seq.length() &&
464  received_data.maximum() == info_seq.maximum() &&
465  received_data.release() == info_seq.release() ) {
466  if ( received_data.maximum() == 0 || received_data.release() ) {
467  if (received_data.maximum() == 0 ||
468  max_samples <= static_cast<DDS::Long>(received_data.maximum()) ||
469  max_samples == ::DDS::LENGTH_UNLIMITED ) {
470  status = ::DDS::RETCODE_OK;
471  }
472  }
473  }
474  return status;
475 }
476 
477 
478 // DDS opensplice_dds_comm::GSDFPacket DataReaderView_impl Object Body
479 
481  gapi_dataReaderView handle
482 ) : ::DDS::DataReaderView_impl(handle)
483 {
484  // Parent constructor takes care of everything.
485 }
486 
488 {
489  // Parent destructor takes care of everything.
490 }
491 
492 
493 ::DDS::ReturnCode_t
495  opensplice_dds_comm::GSDFPacketSeq & received_data,
496  ::DDS::SampleInfoSeq & info_seq,
497  ::DDS::Long max_samples,
498  ::DDS::SampleStateMask sample_states,
499  ::DDS::ViewStateMask view_states,
500  ::DDS::InstanceStateMask instance_states) THROW_ORB_EXCEPTIONS
501 {
502  ::DDS::ReturnCode_t status;
503 
504  status = opensplice_dds_comm::GSDFPacketDataReader_impl::check_preconditions(received_data, info_seq, max_samples);
505  if ( status == ::DDS::RETCODE_OK ) {
506  status = DataReaderView_impl::read(&received_data, info_seq, max_samples, sample_states, view_states, instance_states);
507  }
508  return status;
509 }
510 
511 ::DDS::ReturnCode_t
513  opensplice_dds_comm::GSDFPacketSeq & received_data,
514  ::DDS::SampleInfoSeq & info_seq,
515  ::DDS::Long max_samples,
516  ::DDS::SampleStateMask sample_states,
517  ::DDS::ViewStateMask view_states,
518  ::DDS::InstanceStateMask instance_states) THROW_ORB_EXCEPTIONS
519 {
520  ::DDS::ReturnCode_t status;
521 
522  status = opensplice_dds_comm::GSDFPacketDataReader_impl::check_preconditions(received_data, info_seq, max_samples);
523  if ( status == ::DDS::RETCODE_OK ) {
524  status = DataReaderView_impl::take(&received_data, info_seq, max_samples, sample_states, view_states, instance_states);
525  }
526  return status;
527 }
528 
529 ::DDS::ReturnCode_t
531  opensplice_dds_comm::GSDFPacketSeq & received_data,
532  ::DDS::SampleInfoSeq & info_seq,
533  ::DDS::Long max_samples,
534  ::DDS::ReadCondition_ptr a_condition) THROW_ORB_EXCEPTIONS
535 {
536  ::DDS::ReturnCode_t status;
537 
538  status = opensplice_dds_comm::GSDFPacketDataReader_impl::check_preconditions(received_data, info_seq, max_samples);
539  if ( status == ::DDS::RETCODE_OK ) {
540  status = DataReaderView_impl::read_w_condition(&received_data, info_seq, max_samples, a_condition);
541  }
542  return status;
543 }
544 
545 ::DDS::ReturnCode_t
547  opensplice_dds_comm::GSDFPacketSeq & received_data,
548  ::DDS::SampleInfoSeq & info_seq,
549  ::DDS::Long max_samples,
550  ::DDS::ReadCondition_ptr a_condition) THROW_ORB_EXCEPTIONS
551 {
552  ::DDS::ReturnCode_t status;
553 
554  status = opensplice_dds_comm::GSDFPacketDataReader_impl::check_preconditions(received_data, info_seq, max_samples);
555  if ( status == ::DDS::RETCODE_OK ) {
556  status = DataReaderView_impl::take_w_condition(&received_data, info_seq, max_samples, a_condition);
557  }
558  return status;
559 }
560 
561 
562 ::DDS::ReturnCode_t
564  opensplice_dds_comm::GSDFPacket & received_data,
565  ::DDS::SampleInfo & sample_info) THROW_ORB_EXCEPTIONS
566 {
567  return DataReaderView_impl::read_next_sample(&received_data, sample_info);
568 }
569 
570 
571 ::DDS::ReturnCode_t
573  opensplice_dds_comm::GSDFPacket & received_data,
574  ::DDS::SampleInfo & sample_info) THROW_ORB_EXCEPTIONS
575 {
576  return DataReaderView_impl::take_next_sample(&received_data, sample_info);
577 }
578 
579 
580 ::DDS::ReturnCode_t
582  opensplice_dds_comm::GSDFPacketSeq & received_data,
583  ::DDS::SampleInfoSeq & info_seq,
584  ::DDS::Long max_samples,
585  ::DDS::InstanceHandle_t a_handle,
586  ::DDS::SampleStateMask sample_states,
587  ::DDS::ViewStateMask view_states,
588  ::DDS::InstanceStateMask instance_states) THROW_ORB_EXCEPTIONS
589 {
590  ::DDS::ReturnCode_t status;
591 
592  status = opensplice_dds_comm::GSDFPacketDataReader_impl::check_preconditions(received_data, info_seq, max_samples);
593  if ( status == ::DDS::RETCODE_OK ) {
594  status = DataReaderView_impl::read_instance(&received_data, info_seq, max_samples, a_handle, sample_states, view_states, instance_states);
595  }
596  return status;
597 }
598 
599 ::DDS::ReturnCode_t
601  opensplice_dds_comm::GSDFPacketSeq & received_data,
602  ::DDS::SampleInfoSeq & info_seq,
603  ::DDS::Long max_samples,
604  ::DDS::InstanceHandle_t a_handle,
605  ::DDS::SampleStateMask sample_states,
606  ::DDS::ViewStateMask view_states,
607  ::DDS::InstanceStateMask instance_states) THROW_ORB_EXCEPTIONS
608 {
609  ::DDS::ReturnCode_t status;
610 
611  status = opensplice_dds_comm::GSDFPacketDataReader_impl::check_preconditions(received_data, info_seq, max_samples);
612  if ( status == ::DDS::RETCODE_OK ) {
613  status = DataReaderView_impl::take_instance(&received_data, info_seq, max_samples, a_handle, sample_states, view_states, instance_states);
614  }
615  return status;
616 }
617 
618 ::DDS::ReturnCode_t
620  opensplice_dds_comm::GSDFPacketSeq & received_data,
621  ::DDS::SampleInfoSeq & info_seq,
622  ::DDS::Long max_samples,
623  ::DDS::InstanceHandle_t a_handle,
624  ::DDS::SampleStateMask sample_states,
625  ::DDS::ViewStateMask view_states,
626  ::DDS::InstanceStateMask instance_states) THROW_ORB_EXCEPTIONS
627 {
628  ::DDS::ReturnCode_t status;
629 
630  status = opensplice_dds_comm::GSDFPacketDataReader_impl::check_preconditions(received_data, info_seq, max_samples);
631  if ( status == ::DDS::RETCODE_OK ) {
632  status = DataReaderView_impl::read_next_instance(&received_data, info_seq, max_samples, a_handle, sample_states, view_states, instance_states);
633  }
634  return status;
635 }
636 
637 ::DDS::ReturnCode_t
639  opensplice_dds_comm::GSDFPacketSeq & received_data,
640  ::DDS::SampleInfoSeq & info_seq,
641  ::DDS::Long max_samples,
642  ::DDS::InstanceHandle_t a_handle,
643  ::DDS::SampleStateMask sample_states,
644  ::DDS::ViewStateMask view_states,
645  ::DDS::InstanceStateMask instance_states) THROW_ORB_EXCEPTIONS
646 {
647  ::DDS::ReturnCode_t status;
648 
649  status = opensplice_dds_comm::GSDFPacketDataReader_impl::check_preconditions(received_data, info_seq, max_samples);
650  if ( status == ::DDS::RETCODE_OK ) {
651  status = DataReaderView_impl::take_next_instance(&received_data, info_seq, max_samples, a_handle, sample_states, view_states, instance_states);
652  }
653  return status;
654 }
655 
656 
657 ::DDS::ReturnCode_t
659  opensplice_dds_comm::GSDFPacketSeq & received_data,
660  ::DDS::SampleInfoSeq & info_seq,
661  ::DDS::Long max_samples,
662  ::DDS::InstanceHandle_t a_handle,
663  ::DDS::ReadCondition_ptr a_condition) THROW_ORB_EXCEPTIONS
664 {
665  ::DDS::ReturnCode_t status;
666 
667  status = opensplice_dds_comm::GSDFPacketDataReader_impl::check_preconditions(received_data, info_seq, max_samples);
668  if ( status == ::DDS::RETCODE_OK ) {
669  status = DataReaderView_impl::read_next_instance_w_condition(&received_data, info_seq, max_samples, a_handle, a_condition);
670  }
671  return status;
672 }
673 
674 
675 ::DDS::ReturnCode_t
677  opensplice_dds_comm::GSDFPacketSeq & received_data,
678  ::DDS::SampleInfoSeq & info_seq,
679  ::DDS::Long max_samples,
680  ::DDS::InstanceHandle_t a_handle,
681  ::DDS::ReadCondition_ptr a_condition) THROW_ORB_EXCEPTIONS
682 {
683  ::DDS::ReturnCode_t status;
684 
685  status = opensplice_dds_comm::GSDFPacketDataReader_impl::check_preconditions(received_data, info_seq, max_samples);
686  if ( status == ::DDS::RETCODE_OK ) {
687  status = DataReaderView_impl::take_next_instance_w_condition(&received_data, info_seq, max_samples, a_handle, a_condition);
688  }
689  return status;
690 }
691 
692 
693 ::DDS::ReturnCode_t
695  opensplice_dds_comm::GSDFPacketSeq & received_data,
696  ::DDS::SampleInfoSeq & info_seq) THROW_ORB_EXCEPTIONS
697 {
698  ::DDS::ReturnCode_t status = ::DDS::RETCODE_OK;
699 
700  if ( received_data.length() > 0 ) {
701  if (received_data.length() == info_seq.length() &&
702  received_data.release() == info_seq.release() ) {
703  if (!received_data.release()) {
704  status = DataReaderView_impl::return_loan( received_data.get_buffer(),
705  info_seq.get_buffer() );
706 
707  if ( status == ::DDS::RETCODE_OK ) {
708  if ( !received_data.release() ) {
709  opensplice_dds_comm::GSDFPacketSeq::freebuf( received_data.get_buffer(false) );
710  received_data.replace(0, 0, NULL, false);
711  ::DDS::SampleInfoSeq::freebuf( info_seq.get_buffer(false) );
712  info_seq.replace(0, 0, NULL, false);
713  }
714  } else if ( status == ::DDS::RETCODE_NO_DATA ) {
715  if ( received_data.release() ) {
716  status = ::DDS::RETCODE_OK;
717  } else {
718  status = ::DDS::RETCODE_PRECONDITION_NOT_MET;
719  }
720  }
721  }
722  } else {
723  status = ::DDS::RETCODE_PRECONDITION_NOT_MET;
724  }
725  }
726  return status;
727 }
728 
729 
730 ::DDS::ReturnCode_t
732  opensplice_dds_comm::GSDFPacket & key_holder,
733  ::DDS::InstanceHandle_t handle) THROW_ORB_EXCEPTIONS
734 {
735  return DataReaderView_impl::get_key_value(&key_holder, handle);
736 }
737 
738 ::DDS::InstanceHandle_t
740  const opensplice_dds_comm::GSDFPacket & instance) THROW_ORB_EXCEPTIONS
741 {
742  return DataReaderView_impl::lookup_instance(&instance);
743 }
744 
745 
746 
747 const char * ::opensplice_dds_comm::GSDFPacketTypeSupport::metaDescriptor[] = {"<MetaData version=\"1.0.0\"><Module name=\"opensplice_dds_comm\"><Struct name=\"GSDFPacket\"><Member name=\"packet_source\">",
748 "<Long/></Member><Member name=\"packet_version\"><UShort/></Member><Member name=\"packet_type\"><UShort/>",
749 "</Member><Member name=\"packet_data\"><String/></Member><Member name=\"package_check_sum\"><LongLong/>",
750 "</Member></Struct></Module></MetaData>"};
virtual ::DDS::ReturnCode_t take(GSDFPacketSeq &received_data,::DDS::SampleInfoSeq &info_seq,::DDS::Long max_samples,::DDS::SampleStateMask sample_states,::DDS::ViewStateMask view_states,::DDS::InstanceStateMask instance_states) THROW_ORB_EXCEPTIONS
virtual ::DDS::ReturnCode_t writedispose_w_timestamp(const GSDFPacket &instance_data,::DDS::InstanceHandle_t handle, const ::DDS::Time_t &source_timestamp) THROW_ORB_EXCEPTIONS
virtual ::DDS::ReturnCode_t take_next_sample(GSDFPacket &received_data,::DDS::SampleInfo &sample_info) THROW_ORB_EXCEPTIONS
::DDS::ReturnCode_t check_preconditions(GSDFPacketSeq &received_data,::DDS::SampleInfoSeq &info_seq,::DDS::Long max_samples)
virtual ::DDS::ReturnCode_t return_loan(GSDFPacketSeq &received_data,::DDS::SampleInfoSeq &info_seq) THROW_ORB_EXCEPTIONS
virtual ::DDS::ReturnCode_t read_w_condition(GSDFPacketSeq &received_data,::DDS::SampleInfoSeq &info_seq,::DDS::Long max_samples,::DDS::ReadCondition_ptr a_condition) THROW_ORB_EXCEPTIONS
virtual ::DDS::ReturnCode_t get_key_value(GSDFPacket &key_holder,::DDS::InstanceHandle_t handle) THROW_ORB_EXCEPTIONS
virtual ::DDS::InstanceHandle_t lookup_instance(const GSDFPacket &instance) THROW_ORB_EXCEPTIONS
virtual ::DDS::ReturnCode_t unregister_instance_w_timestamp(const GSDFPacket &instance_data,::DDS::InstanceHandle_t handle, const ::DDS::Time_t &source_timestamp) THROW_ORB_EXCEPTIONS
const char * __opensplice_dds_comm_GSDFPacket__keys(void)
virtual ::DDS::ReturnCode_t write(const GSDFPacket &instance_data,::DDS::InstanceHandle_t handle) THROW_ORB_EXCEPTIONS
static const ::DDS::ULong metaDescriptorArrLength
virtual ::DDS::ReturnCode_t take_w_condition(GSDFPacketSeq &received_data,::DDS::SampleInfoSeq &info_seq,::DDS::Long max_samples,::DDS::ReadCondition_ptr a_condition) THROW_ORB_EXCEPTIONS
virtual ::DDS::ReturnCode_t take(GSDFPacketSeq &received_data,::DDS::SampleInfoSeq &info_seq,::DDS::Long max_samples,::DDS::SampleStateMask sample_states,::DDS::ViewStateMask view_states,::DDS::InstanceStateMask instance_states) THROW_ORB_EXCEPTIONS
virtual ::DDS::ReturnCode_t take_next_instance_w_condition(GSDFPacketSeq &received_data,::DDS::SampleInfoSeq &info_seq,::DDS::Long max_samples,::DDS::InstanceHandle_t a_handle,::DDS::ReadCondition_ptr a_condition) THROW_ORB_EXCEPTIONS
virtual ::DDS::ReturnCode_t get_key_value(GSDFPacket &key_holder,::DDS::InstanceHandle_t handle) THROW_ORB_EXCEPTIONS
virtual ::DDS::ReturnCode_t dispose_w_timestamp(const GSDFPacket &instance_data,::DDS::InstanceHandle_t handle, const ::DDS::Time_t &source_timestamp) THROW_ORB_EXCEPTIONS
virtual ::DDS::ReturnCode_t read(GSDFPacketSeq &received_data,::DDS::SampleInfoSeq &info_seq,::DDS::Long max_samples,::DDS::SampleStateMask sample_states,::DDS::ViewStateMask view_states,::DDS::InstanceStateMask instance_states) THROW_ORB_EXCEPTIONS
virtual ::DDS::InstanceHandle_t register_instance(const GSDFPacket &instance_data) THROW_ORB_EXCEPTIONS
const char * __opensplice_dds_comm_GSDFPacket__name(void)
virtual ::DDS::ReturnCode_t take_w_condition(GSDFPacketSeq &received_data,::DDS::SampleInfoSeq &info_seq,::DDS::Long max_samples,::DDS::ReadCondition_ptr a_condition) THROW_ORB_EXCEPTIONS
virtual ::DDS::ReturnCode_t read_next_instance(GSDFPacketSeq &received_data,::DDS::SampleInfoSeq &info_seq,::DDS::Long max_samples,::DDS::InstanceHandle_t a_handle,::DDS::SampleStateMask sample_states,::DDS::ViewStateMask view_states,::DDS::InstanceStateMask instance_states) THROW_ORB_EXCEPTIONS
c_bool __opensplice_dds_comm_GSDFPacket__copyIn(c_base base, struct opensplice_dds_comm::GSDFPacket *from, struct _opensplice_dds_comm_GSDFPacket *to)
virtual ::DDS::ReturnCode_t read_instance(GSDFPacketSeq &received_data,::DDS::SampleInfoSeq &info_seq,::DDS::Long max_samples,::DDS::InstanceHandle_t a_handle,::DDS::SampleStateMask sample_states,::DDS::ViewStateMask view_states,::DDS::InstanceStateMask instance_states) THROW_ORB_EXCEPTIONS
virtual ::DDS::ReturnCode_t write_w_timestamp(const GSDFPacket &instance_data,::DDS::InstanceHandle_t handle, const ::DDS::Time_t &source_timestamp) THROW_ORB_EXCEPTIONS
virtual ::DDS::ReturnCode_t take_next_instance(GSDFPacketSeq &received_data,::DDS::SampleInfoSeq &info_seq,::DDS::Long max_samples,::DDS::InstanceHandle_t a_handle,::DDS::SampleStateMask sample_states,::DDS::ViewStateMask view_states,::DDS::InstanceStateMask instance_states) THROW_ORB_EXCEPTIONS
virtual ::DDS::InstanceHandle_t register_instance_w_timestamp(const GSDFPacket &instance_data, const ::DDS::Time_t &source_timestamp) THROW_ORB_EXCEPTIONS
virtual ::DDS::ReturnCode_t read_next_instance_w_condition(GSDFPacketSeq &received_data,::DDS::SampleInfoSeq &info_seq,::DDS::Long max_samples,::DDS::InstanceHandle_t a_handle,::DDS::ReadCondition_ptr a_condition) THROW_ORB_EXCEPTIONS
virtual ::DDS::ReturnCode_t read_next_instance(GSDFPacketSeq &received_data,::DDS::SampleInfoSeq &info_seq,::DDS::Long max_samples,::DDS::InstanceHandle_t a_handle,::DDS::SampleStateMask sample_states,::DDS::ViewStateMask view_states,::DDS::InstanceStateMask instance_states) THROW_ORB_EXCEPTIONS
virtual ::DDS::ReturnCode_t dispose(const GSDFPacket &instance_data,::DDS::InstanceHandle_t handle) THROW_ORB_EXCEPTIONS
virtual ::DDS::InstanceHandle_t lookup_instance(const GSDFPacket &instance_data) THROW_ORB_EXCEPTIONS
virtual ::DDS::ReturnCode_t read_next_sample(GSDFPacket &received_data,::DDS::SampleInfo &sample_info) THROW_ORB_EXCEPTIONS
virtual ::DDS::ReturnCode_t read_w_condition(GSDFPacketSeq &received_data,::DDS::SampleInfoSeq &info_seq,::DDS::Long max_samples,::DDS::ReadCondition_ptr a_condition) THROW_ORB_EXCEPTIONS
virtual ::DDS::ReturnCode_t read_next_instance_w_condition(GSDFPacketSeq &received_data,::DDS::SampleInfoSeq &info_seq,::DDS::Long max_samples,::DDS::InstanceHandle_t a_handle,::DDS::ReadCondition_ptr a_condition) THROW_ORB_EXCEPTIONS
virtual ::DDS::InstanceHandle_t lookup_instance(const GSDFPacket &instance) THROW_ORB_EXCEPTIONS
virtual ::DDS::ReturnCode_t take_instance(GSDFPacketSeq &received_data,::DDS::SampleInfoSeq &info_seq,::DDS::Long max_samples,::DDS::InstanceHandle_t a_handle,::DDS::SampleStateMask sample_states,::DDS::ViewStateMask view_states,::DDS::InstanceStateMask instance_states) THROW_ORB_EXCEPTIONS
virtual ::DDS::ReturnCode_t unregister_instance(const GSDFPacket &instance_data,::DDS::InstanceHandle_t handle) THROW_ORB_EXCEPTIONS
virtual ::DDS::ReturnCode_t take_next_instance(GSDFPacketSeq &received_data,::DDS::SampleInfoSeq &info_seq,::DDS::Long max_samples,::DDS::InstanceHandle_t a_handle,::DDS::SampleStateMask sample_states,::DDS::ViewStateMask view_states,::DDS::InstanceStateMask instance_states) THROW_ORB_EXCEPTIONS
virtual ::DDS::ReturnCode_t get_key_value(GSDFPacket &key_holder,::DDS::InstanceHandle_t handle) THROW_ORB_EXCEPTIONS
::DDS::DataWriter_ptr create_datawriter(gapi_dataWriter handle)
::DDS::DataReader_ptr create_datareader(gapi_dataReader handle)
virtual ::DDS::ReturnCode_t read_instance(GSDFPacketSeq &received_data,::DDS::SampleInfoSeq &info_seq,::DDS::Long max_samples,::DDS::InstanceHandle_t a_handle,::DDS::SampleStateMask sample_states,::DDS::ViewStateMask view_states,::DDS::InstanceStateMask instance_states) THROW_ORB_EXCEPTIONS
virtual ::DDS::ReturnCode_t take_next_instance_w_condition(GSDFPacketSeq &received_data,::DDS::SampleInfoSeq &info_seq,::DDS::Long max_samples,::DDS::InstanceHandle_t a_handle,::DDS::ReadCondition_ptr a_condition) THROW_ORB_EXCEPTIONS
virtual ::DDS::ReturnCode_t read(GSDFPacketSeq &received_data,::DDS::SampleInfoSeq &info_seq,::DDS::Long max_samples,::DDS::SampleStateMask sample_states,::DDS::ViewStateMask view_states,::DDS::InstanceStateMask instance_states) THROW_ORB_EXCEPTIONS
void __opensplice_dds_comm_GSDFPacket__copyOut(void *_from, void *_to)
virtual ::DDS::ReturnCode_t return_loan(GSDFPacketSeq &received_data,::DDS::SampleInfoSeq &info_seq) THROW_ORB_EXCEPTIONS
virtual ::DDS::ReturnCode_t writedispose(const GSDFPacket &instance_data,::DDS::InstanceHandle_t handle) THROW_ORB_EXCEPTIONS
virtual ::DDS::ReturnCode_t take_next_sample(GSDFPacket &received_data,::DDS::SampleInfo &sample_info) THROW_ORB_EXCEPTIONS
virtual char * get_type_name() THROW_ORB_EXCEPTIONS
DDS_DCPSUVLSeq< GSDFPacket, struct GSDFPacketSeq_uniq_ > GSDFPacketSeq
virtual ::DDS::ReturnCode_t register_type(::DDS::DomainParticipant_ptr participant, const char *type_name) THROW_ORB_EXCEPTIONS
virtual ::DDS::ReturnCode_t take_instance(GSDFPacketSeq &received_data,::DDS::SampleInfoSeq &info_seq,::DDS::Long max_samples,::DDS::InstanceHandle_t a_handle,::DDS::SampleStateMask sample_states,::DDS::ViewStateMask view_states,::DDS::InstanceStateMask instance_states) THROW_ORB_EXCEPTIONS
::DDS::DataReaderView_ptr create_view(gapi_dataReaderView handle)
virtual ::DDS::ReturnCode_t read_next_sample(GSDFPacket &received_data,::DDS::SampleInfo &sample_info) THROW_ORB_EXCEPTIONS


opensplice_dds_comm
Author(s):
autogenerated on Thu Jun 1 2017 02:43:49