00001 /* 00002 * 00003 * 00004 * Distributed under the OpenDDS License. 00005 * See: http://www.opendds.org/license.html 00006 */ 00007 00008 #ifndef OPENDDS_DCPS_DW_PERIODIC_MONITOR_IMPL_H 00009 #define OPENDDS_DCPS_DW_PERIODIC_MONITOR_IMPL_H 00010 00011 #include "monitor_export.h" 00012 #include "dds/DCPS/MonitorFactory.h" 00013 #include "monitorTypeSupportImpl.h" 00014 00015 #if !defined (ACE_LACKS_PRAGMA_ONCE) 00016 #pragma once 00017 #endif /* ACE_LACKS_PRAGMA_ONCE */ 00018 00019 namespace OpenDDS { 00020 namespace DCPS { 00021 00022 class DWPeriodicMonitorImpl : public Monitor { 00023 public: 00024 DWPeriodicMonitorImpl(DataWriterImpl* dw, 00025 OpenDDS::DCPS::DataWriterPeriodicReportDataWriter_ptr dw_per_writer); 00026 virtual ~DWPeriodicMonitorImpl(); 00027 virtual void report(); 00028 00029 private: 00030 DataWriterImpl* dw_; 00031 OpenDDS::DCPS::DataWriterPeriodicReportDataWriter_var dw_per_writer_; 00032 }; 00033 00034 } // namespace DCPS 00035 } // namespace OpenDDS 00036 00037 #endif /* OPENDDS_DCPS_DW_PERIODIC_MONITOR_IMPL_H */