• Main Page
  • Namespaces
  • Classes
  • Files
  • File List
  • File Members

src/hpp/tdds/core/status/Status.hpp

Go to the documentation of this file.
00001 #ifndef OMG_TDDS_CORE_STATUS_STATUS_HPP_
00002 #define OMG_TDDS_CORE_STATUS_STATUS_HPP_
00003 
00004 /* Copyright 2010, Object Management Group, Inc.
00005  * Copyright 2010, PrismTech, Corp.
00006  * Copyright 2010, Real-Time Innovations, Inc.
00007  * All rights reserved.
00008  *
00009  * Licensed under the Apache License, Version 2.0 (the "License");
00010  * you may not use this file except in compliance with the License.
00011  * You may obtain a copy of the License at
00012  *
00013  *     http://www.apache.org/licenses/LICENSE-2.0
00014  *
00015  * Unless required by applicable law or agreed to in writing, software
00016  * distributed under the License is distributed on an "AS IS" BASIS,
00017  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00018  * See the License for the specific language governing permissions and
00019  * limitations under the License.
00020  */
00021 
00022 #include <tdds/core/corefwd.hpp>
00023 #include <dds/core/Value.hpp>
00024 #include <dds/core/InstanceHandle.hpp>
00025 #include <dds/core/policy/CorePolicy.hpp>
00026 #include <dds/core/policy/QosPolicyCount.hpp>
00027 #include <dds/core/status/State.hpp>
00028 
00029 namespace tdds { namespace core { namespace status {
00030 
00031 template <typename D>
00032 class InconsistentTopicStatus : public dds::core::Value<D> {
00033 public:
00034     InconsistentTopicStatus() : dds::core::Value<D>() { }
00035 
00036 public:
00037     int32_t total_count() const {
00038         return this->delegate().total_count();
00039     }
00040 
00041     int32_t total_count_change() const {
00042         return this->delegate().total_count_change();
00043     }
00044 };
00045 
00046 template <typename D>
00047 class SampleLostStatus : public dds::core::Value<D> {
00048 public:
00049     SampleLostStatus() : dds::core::Value<D>() {}
00050 
00051 public:
00052     int32_t total_count() const {
00053         return this->delegate().total_count();
00054     }
00055 
00056     int32_t total_count_change() const {
00057         return this->delegate().total_count_change();
00058     }
00059 };
00060 
00061 
00062 template <typename D>
00063 class SampleRejectedStatus : public dds::core::Value<D> {
00064 public:
00065         SampleRejectedStatus() : dds::core::Value<D>() { }
00066 
00067 public:
00068     int32_t total_count() const {
00069         return this->delegate().total_count();
00070     }
00071 
00072     int32_t total_count_change() const {
00073         return this->delegate().total_count_change();
00074     }
00075 
00076     const dds::core::status::SampleRejectedState last_reason() const {
00077         return this->delegate().last_reason();
00078     }
00079 
00080     const dds::core::InstanceHandle last_instance_handle() const {
00081         return this->delegate().last_instance_handle();
00082     }
00083 };
00084 
00085 template <typename D>
00086 class LivelinessLostStatus : public dds::core::Value<D> {
00087 public:
00088     LivelinessLostStatus() : dds::core::Value<D>() { }
00089 
00090 public:
00091     int32_t total_count() const {
00092         return this->delegate().total_count();
00093     }
00094 
00095     int32_t total_count_change() const {
00096         return this->delegate().total_count_change();
00097     }
00098 };
00099 
00100 template <typename D>
00101 class LivelinessChangedStatus : public dds::core::Value<D> {
00102 public:
00103     LivelinessChangedStatus() : dds::core::Value<D>() { }
00104 
00105 public:
00106     int32_t alive_count() const {
00107         return this->delegate().alive_count();
00108     }
00109 
00110     int32_t not_alive_count() const {
00111         return this->delegate().not_alive_count();
00112     }
00113 
00114     int32_t alive_count_change() const {
00115         return this->delegate().alive_count();
00116     }
00117 
00118     int32_t not_alive_count_change() const {
00119         return this->delegate().not_alive_count();
00120     }
00121 
00122     const dds::core::InstanceHandle last_publication_handle() const {
00123         return this->delegate().last_instance_handle();
00124     }
00125 };
00126 
00127 template <typename D>
00128 class OfferedDeadlineMissedStatus : public dds::core::Value<D> {
00129 public:
00130     OfferedDeadlineMissedStatus() : dds::core::Value<D>() { }
00131 
00132 public:
00133     int32_t total_count() const {
00134         return this->delegate().total_count();
00135     }
00136 
00137     int32_t total_count_change() const {
00138         return this->delegate().total_count_change();
00139     }
00140 
00141     const dds::core::InstanceHandle last_instance_handle() const {
00142         return this->delegate().last_instance_handle();
00143     }
00144 };
00145 
00146 template <typename D>
00147 class RequestedDeadlineMissedStatus : public dds::core::Value<D> {
00148 public:
00149     RequestedDeadlineMissedStatus() : dds::core::Value<D>() { }
00150 
00151 public:
00152     int32_t total_count() const {
00153         return this->delegate().total_count();
00154     }
00155 
00156     int32_t total_count_change() const {
00157         return this->delegate().total_count_change();
00158     }
00159 
00160     const dds::core::InstanceHandle last_instance_handle() const {
00161         return this->delegate().last_instance_handle();
00162     }
00163 };
00164 
00165 
00166 
00167 template <typename D>
00168 class OfferedIncompatibleQosStatus : public dds::core::Value<D>{
00169 public:
00170     OfferedIncompatibleQosStatus()
00171     : dds::core::Value<D>() { }
00172 
00173 public:
00174     int32_t total_count() const {
00175         return this->delegate().total_count();
00176     }
00177 
00178     int32_t total_count_change() const {
00179         return this->delegate().total_count_change();
00180     }
00181 
00182     dds::core::policy::QosPolicyId last_policy_id() const {
00183         return this->delegate().last_policy_id();
00184     }
00185 
00186     const dds::core::policy::QosPolicyCountSeq policies() const;
00187 
00188     dds::core::policy::QosPolicyCountSeq&
00189     policies(dds::core::policy::QosPolicyCountSeq& dst) const;
00190 };
00191 
00192 template <typename D>
00193 class RequestedIncompatibleQosStatus : public dds::core::Value<D> {
00194 public:
00195     RequestedIncompatibleQosStatus()
00196     : dds::core::Value<D>() { }
00197 
00198 public:
00199     int32_t total_count() const {
00200         return this->delegate().total_count();
00201     }
00202 
00203     int32_t total_count_change() const {
00204         return this->delegate().total_count_change();
00205     }
00206 
00207     dds::core::policy::QosPolicyId last_policy_id() const {
00208         return this->delegate().last_policy_id();
00209     }
00210 
00211     const dds::core::policy::QosPolicyCountSeq policies() const {
00212         return this->delegate().policies();
00213     }
00214 
00215     dds::core::policy::QosPolicyCountSeq&
00216     policies(dds::core::policy::QosPolicyCountSeq& dst) const;
00217 };
00218 
00219 template <typename D>
00220 class PublicationMatchedStatus : public dds::core::Value<D> {
00221 public:
00222     PublicationMatchedStatus() : dds::core::Value<D>() { }
00223 
00224 public:
00225     int32_t total_count() const {
00226         return this->delegate().total_count();
00227     }
00228 
00229     int32_t total_count_change() const {
00230         return this->delegate().total_count_change();
00231     }
00232 
00233     int32_t current_count() const {
00234         return this->delegate().current_count();
00235     }
00236 
00237     int32_t current_count_change() const {
00238         return this->delegate().current_count_change();
00239     }
00240 
00241     const dds::core::InstanceHandle last_subscription_handle() const {
00242         return this->delegate().last_subscription_handle();
00243     }
00244 };
00245 
00246 template <typename D>
00247 class SubscriptionMatchedStatus : public dds::core::Value<D> {
00248 public:
00249     SubscriptionMatchedStatus() : dds::core::Value<D>() { }
00250 
00251 public:
00252     int32_t total_count() const {
00253         return this->delegate().total_count();
00254     }
00255 
00256     int32_t total_count_change() const {
00257         return this->delegate().total_count_change();
00258     }
00259 
00260     int32_t current_count() const {
00261         return this->delegate().current_count();
00262     }
00263 
00264     int32_t current_count_change() const {
00265         return this->delegate().current_count_change();
00266     }
00267 
00268     const dds::core::InstanceHandle last_publication_handle() const {
00269         return this->delegate().last_publication_handle();
00270     }
00271 };
00272 
00273 } } }/* namespace tdds::core::status */
00274 
00275 #endif /* OMG_TDDS_CORE_STATUS_STATUS_HPP_ */

Generated on Tue Nov 9 2010 02:16:21 for dds-psm-cxx-doc by  doxygen 1.7.1