.. _program_listing_file__tmp_ws_src_fastrtps_include_dds_core_cond_detail_StatusConditionImpl.hpp: Program Listing for File StatusConditionImpl.hpp ================================================ |exhale_lsh| :ref:`Return to documentation for file ` (``/tmp/ws/src/fastrtps/include/dds/core/cond/detail/StatusConditionImpl.hpp``) .. |exhale_lsh| unicode:: U+021B0 .. UPWARDS ARROW WITH TIP LEFTWARDS .. code-block:: cpp /* * Copyright 2019, Proyectos y Sistemas de Mantenimiento SL (eProsima). * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * */ #ifndef EPROSIMA_DDS_CORE_COND_TSTATUSCONDITION_IMPL_HPP_ #define EPROSIMA_DDS_CORE_COND_TSTATUSCONDITION_IMPL_HPP_ /* * OMG PSM class declaration */ #include namespace dds { namespace core { namespace cond { template TStatusCondition::TStatusCondition( const dds::core::Entity& /*e*/) // : ::dds::core::cond::TCondition(new detail::StatusCondition(e)) { } template template TStatusCondition::TStatusCondition( const dds::core::Entity& /*e*/, FUN& /*functor*/) // : ::dds::core::cond::TCondition(new detail::StatusCondition(e, functor)) { } template template TStatusCondition::TStatusCondition( const dds::core::Entity& /*e*/, const FUN& /*functor*/) // : ::dds::core::cond::TCondition(new detail::StatusCondition(e, functor)) { } template TStatusCondition::~TStatusCondition() { } template void TStatusCondition::enabled_statuses( const dds::core::status::StatusMask& /*status*/) const { // this->delegate()->set_enabled_statuses(status); } template const dds::core::status::StatusMask TStatusCondition::enabled_statuses() const { // return this->delegate()->get_enabled_statuses(); } template const dds::core::Entity& TStatusCondition::entity() const { // return this->delegate()->get_entity(); } template TCondition::TCondition( /*const TStatusCondition& h*/) { //To implement // if (h.is_nil()) { // /* We got a null object and are not really able to do a typecheck here. */ // /* So, just set a null object. */ // *this = dds::core::null; // } else { // ISOCPP_REPORT_STACK_DDS_BEGIN(h); // this->::dds::core::Reference::impl_ = OSPL_CXX11_STD_MODULE::dynamic_pointer_cast(h.delegate()); // if (h.delegate() != this->::dds::core::Reference::impl_) { // throw dds::core::IllegalOperationError(std::string("Attempted invalid cast: ") + typeid(h).name() + " to " + typeid(*this).name()); // } // } } template TCondition& TCondition::operator =( /*const dds::core::cond::TStatusCondition& rhs*/) { //To implement // if (this != (TCondition*)&rhs) { // if (rhs.is_nil()) { // /* We got a null object and are not really able to do a typecheck here. */ // /* So, just set a null object. */ // *this = dds::core::null; // } else { // TCondition other(rhs); // /* Dont have to copy when the delegate is the same. */ // if (other.delegate() != this->::dds::core::Reference::impl_) { // *this = other; // } // } // } // return *this; } } //namespace cond } //namespace core } //namespace dds #endif //EPROSIMA_DDS_CORE_COND_TSTATUSCONDITION_IMPL_HPP_