LCOV - code coverage report
Current view: top level - DCPS - StatusConditionImpl.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 5 5 100.0 %
Date: 2023-04-30 01:32:43 Functions: 3 3 100.0 %

          Line data    Source code
       1             : /*
       2             :  *
       3             :  *
       4             :  * Distributed under the OpenDDS License.
       5             :  * See: http://www.opendds.org/license.html
       6             :  */
       7             : 
       8             : #ifndef OPENDDS_DCPS_STATUSCONDITIONIMPL_H
       9             : #define OPENDDS_DCPS_STATUSCONDITIONIMPL_H
      10             : 
      11             : #include "dds/DdsDcpsInfrastructureC.h"
      12             : #include "ConditionImpl.h"
      13             : 
      14             : #if !defined (ACE_LACKS_PRAGMA_ONCE)
      15             : #pragma once
      16             : #endif /* ACE_LACKS_PRAGMA_ONCE */
      17             : 
      18             : OPENDDS_BEGIN_VERSIONED_NAMESPACE_DECL
      19             : 
      20             : namespace OpenDDS {
      21             : namespace DCPS {
      22             : 
      23             : class EntityImpl;
      24             : 
      25             : class StatusConditionImpl
      26             :   : public virtual OpenDDS::DCPS::LocalObject<DDS::StatusCondition>
      27             :   , public virtual ConditionImpl {
      28             : public:
      29          12 :   explicit StatusConditionImpl(EntityImpl* e)
      30          24 :     : parent_(e)
      31          12 :     , mask_(::OpenDDS::DCPS::DEFAULT_STATUS_MASK)
      32          12 :   {}
      33             : 
      34          24 :   virtual ~StatusConditionImpl() {}
      35             : 
      36             :   CORBA::Boolean get_trigger_value();
      37             : 
      38             :   virtual DDS::StatusMask get_enabled_statuses();
      39             : 
      40             :   virtual DDS::ReturnCode_t set_enabled_statuses(DDS::StatusMask mask);
      41             : 
      42             :   virtual DDS::Entity_ptr get_entity();
      43             : 
      44             : private:
      45             :   /// Deliberately not a _var, don't hold a reference to the parent since
      46             :   /// it is guaranteed to outlive us and we don't want a cyclical reference
      47             :   EntityImpl* parent_;
      48             :   DDS::StatusMask mask_;
      49             : };
      50             : 
      51             : } // namespace DCPS
      52             : } // namespace OpenDDS
      53             : 
      54             : OPENDDS_END_VERSIONED_NAMESPACE_DECL
      55             : 
      56             : #endif

Generated by: LCOV version 1.16