...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
boost::signals2::slot_base — Base class for slots.
// In header: <boost/signals2/slot_base.hpp> class slot_base { public: // types typedef std::vector<weak_ptr<void> > tracked_container_type; typedef std::vector<shared_ptr<void> > locked_container_type; // tracking bool expired() const; locked_container_type lock() const; const tracked_container_type & tracked_objects() const; };
slot_base
trackingbool expired() const;
Returns: |
|
locked_container_type lock() const;
Returns: |
A container holding shared_ptr s to each of the slot's tracked objects. As long
as the returned container is kept in scope, none of the slot's tracked objects can expire. |
Throws: |
expired_slot if any of the slot's tracked objects have expired. |
const tracked_container_type & tracked_objects() const;
Returns: |
A const reference to the slot's list of tracked objects, in weak_ptr form. |