OpenDDS  Snapshot(2023/04/28-20:55)
DWPeriodicMonitorImpl.cpp
Go to the documentation of this file.
1 /*
2  *
3  *
4  * Distributed under the OpenDDS License.
5  * See: http://www.opendds.org/license.html
6  */
7 
9 #include "monitorC.h"
10 #include "monitorTypeSupportImpl.h"
12 #include <dds/DdsDcpsInfrastructureC.h>
13 
15 
16 namespace OpenDDS {
17 namespace DCPS {
18 
20  OpenDDS::DCPS::DataWriterPeriodicReportDataWriter_ptr dw_per_writer)
21  : dw_(dw),
22  dw_per_writer_(DataWriterPeriodicReportDataWriter::_duplicate(dw_per_writer))
23 {
24 }
25 
27 {
28 }
29 
30 void
32  if (!CORBA::is_nil(this->dw_per_writer_.in())) {
34  report.dw_id = dw_->get_guid();
35  //report.data_dropped_count = dw_->
36  //report.data_delivered_count = dw_->
37  //report.control_dropped_count = dw_->
38  //report.control_delivered_count = dw_->
39  //report.associations = dw_->
40  this->dw_per_writer_->write(report, DDS::HANDLE_NIL);
41  }
42 }
43 
44 
45 } // namespace DCPS
46 } // namespace OpenDDS
47 
const InstanceHandle_t HANDLE_NIL
T * _duplicate(T *st)
Implements the OpenDDS::DCPS::DataWriterRemote interfaces and DDS::DataWriter interfaces.
DWPeriodicMonitorImpl(DataWriterImpl *dw, OpenDDS::DCPS::DataWriterPeriodicReportDataWriter_ptr dw_per_writer)
#define OPENDDS_END_VERSIONED_NAMESPACE_DECL
OpenDDS::DCPS::DataWriterPeriodicReportDataWriter_var dw_per_writer_
The Internal API and Implementation of OpenDDS.
Definition: AddressCache.h:28
Boolean is_nil(T x)