ReadConditionImpl.h

Go to the documentation of this file.
00001 /*
00002  *
00003  *
00004  * Distributed under the OpenDDS License.
00005  * See: http://www.opendds.org/license.html
00006  */
00007 
00008 #ifndef OPENDDS_DCPS_READCONDITIONIMPL_H
00009 #define OPENDDS_DCPS_READCONDITIONIMPL_H
00010 
00011 #include "dds/DdsDcpsSubscriptionC.h"
00012 #include "dds/DCPS/ConditionImpl.h"
00013 
00014 #if !defined (ACE_LACKS_PRAGMA_ONCE)
00015 #pragma once
00016 #endif /* ACE_LACKS_PRAGMA_ONCE */
00017 
00018 namespace OpenDDS {
00019 namespace DCPS {
00020 
00021 class DataReaderImpl;
00022 
00023 class ReadConditionImpl
00024   : public virtual OpenDDS::DCPS::LocalObject<DDS::ReadCondition>
00025   , public virtual ConditionImpl {
00026 public:
00027   ReadConditionImpl(DataReaderImpl* dr, DDS::SampleStateMask sample_states,
00028                     DDS::ViewStateMask view_states, DDS::InstanceStateMask instance_states)
00029   : parent_(dr)
00030   , sample_states_(sample_states)
00031   , view_states_(view_states)
00032   , instance_states_(instance_states) {}
00033 
00034   virtual ~ReadConditionImpl() {}
00035 
00036   CORBA::Boolean get_trigger_value();
00037 
00038   DDS::SampleStateMask get_sample_state_mask();
00039 
00040   DDS::ViewStateMask get_view_state_mask();
00041 
00042   DDS::InstanceStateMask get_instance_state_mask();
00043 
00044   DDS::DataReader_ptr get_datareader();
00045 
00046 protected:
00047   DataReaderImpl* parent_;
00048   DDS::SampleStateMask sample_states_;
00049   DDS::ViewStateMask view_states_;
00050   DDS::InstanceStateMask instance_states_;
00051 };
00052 
00053 } // namespace DCPS
00054 } // namespace OpenDDS
00055 
00056 #endif

Generated on Fri Feb 12 20:05:25 2016 for OpenDDS by  doxygen 1.4.7