Skip to main content

Pin Class

RAII in-use marker for a retained entry; the entry cannot be released while any of its Pins is alive. More...

Declaration

class moveit_pro::behaviors::BoundedRetentionQueue::Pin { ... }

Included Headers

#include <bounded_retention_queue.hpp>

Friends Index

classBoundedRetentionQueue

Public Constructors Index

Pin ()=default
Pin (const Pin &)=delete
Pin (Pin &&other) noexcept

Private Constructors Index

Pin (BoundedRetentionQueue *queue, std::shared_ptr< std::atomic< int > > pins)

Public Destructor Index

~Pin ()

Public Operators Index

Pin &operator= (const Pin &)=delete
Pin &operator= (Pin &&other) noexcept

Private Member Attributes Index

BoundedRetentionQueue *queue_ = nullptr
std::shared_ptr< std::atomic< int > >pins_

Description

RAII in-use marker for a retained entry; the entry cannot be released while any of its Pins is alive.

Movable, not copyable. A default-constructed Pin pins nothing. Destroy (or overwrite) the Pin when done using the owner's retained data; Pins must not outlive their queue.

Definition at line 50 of file bounded_retention_queue.hpp.

Friends

BoundedRetentionQueue

friend class BoundedRetentionQueue

Definition at line 61 of file bounded_retention_queue.hpp.

Public Constructors

Pin()

moveit_pro::behaviors::BoundedRetentionQueue::Pin::Pin ()
default

Definition at line 53 of file bounded_retention_queue.hpp.

Pin()

moveit_pro::behaviors::BoundedRetentionQueue::Pin::Pin (const Pin &)
delete

Definition at line 54 of file bounded_retention_queue.hpp.

Pin()

moveit_pro::behaviors::BoundedRetentionQueue::Pin::Pin (Pin && other)
noexcept

Declaration at line 56 of file bounded_retention_queue.hpp, definition at line 21 of file bounded_retention_queue.cpp.

Private Constructors

Pin()

moveit_pro::behaviors::BoundedRetentionQueue::Pin::Pin (BoundedRetentionQueue * queue, std::shared_ptr< std::atomic< int > > pins)

Declaration at line 62 of file bounded_retention_queue.hpp, definition at line 16 of file bounded_retention_queue.cpp.

Public Destructor

~Pin()

moveit_pro::behaviors::BoundedRetentionQueue::Pin::~Pin ()

Declaration at line 58 of file bounded_retention_queue.hpp, definition at line 40 of file bounded_retention_queue.cpp.

Public Operators

operator=()

Pin & moveit_pro::behaviors::BoundedRetentionQueue::Pin::operator= (const Pin &)
delete

Definition at line 55 of file bounded_retention_queue.hpp.

operator=()

BoundedRetentionQueue::Pin & moveit_pro::behaviors::BoundedRetentionQueue::Pin::operator= (Pin && other)
noexcept

Declaration at line 57 of file bounded_retention_queue.hpp, definition at line 26 of file bounded_retention_queue.cpp.

Private Member Attributes

pins_

std::shared_ptr<std::atomic<int> > moveit_pro::behaviors::BoundedRetentionQueue::Pin::pins_

Definition at line 65 of file bounded_retention_queue.hpp.

queue_

BoundedRetentionQueue* moveit_pro::behaviors::BoundedRetentionQueue::Pin::queue_ = nullptr

Definition at line 64 of file bounded_retention_queue.hpp.


The documentation for this class was generated from the following files:


Generated via doxygen2docusaurus 2.2.2 by Doxygen 1.9.8.