.. _program_listing_file__tmp_ws_src_fastrtps_include_fastdds_dds_core_condition_WaitSet.hpp: Program Listing for File WaitSet.hpp ==================================== |exhale_lsh| :ref:`Return to documentation for file ` (``/tmp/ws/src/fastrtps/include/fastdds/dds/core/condition/WaitSet.hpp``) .. |exhale_lsh| unicode:: U+021B0 .. UPWARDS ARROW WITH TIP LEFTWARDS .. code-block:: cpp // Copyright 2021 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 _FASTDDS_WAIT_SET_HPP_ #define _FASTDDS_WAIT_SET_HPP_ #include #include #include #include #include using eprosima::fastrtps::types::ReturnCode_t; namespace eprosima { namespace fastdds { namespace dds { // Forward declaration of implementation details namespace detail { struct WaitSetImpl; } // namespace detail class WaitSet { public: RTPS_DllAPI WaitSet(); RTPS_DllAPI ~WaitSet(); WaitSet( const WaitSet&) = delete; WaitSet( WaitSet&&) = delete; WaitSet& operator = ( const WaitSet&) = delete; WaitSet& operator = ( WaitSet&&) = delete; RTPS_DllAPI ReturnCode_t attach_condition( const Condition& cond); RTPS_DllAPI ReturnCode_t detach_condition( const Condition& cond); RTPS_DllAPI ReturnCode_t wait( ConditionSeq& active_conditions, const fastrtps::Duration_t timeout) const; RTPS_DllAPI ReturnCode_t get_conditions( ConditionSeq& attached_conditions) const; private: std::unique_ptr impl_; }; } // namespace dds } // namespace fastdds } // namespace eprosima #endif // _FASTDDS_WAIT_SET_HPP_