|
template<typename S = T, typename = ForPublisherOnly<S, T>> |
| Sample (cxx::unique_ptr< T > &&sampleUniquePtr, PublisherInterface< T, H > &publisher) noexcept |
| Constructor for a Sample used by the Publisher. More...
|
|
template<typename S = T, typename = ForSubscriberOnly<S, T>> |
| Sample (cxx::unique_ptr< T > &&sampleUniquePtr) noexcept |
| Constructor for a Sample used by the Subscriber. More...
|
|
Sample< T, H > & | operator= (Sample< T, H > &&rhs) noexcept=default |
|
| Sample (Sample< T, H > &&rhs) noexcept=default |
|
| Sample (const Sample< T, H > &)=delete |
|
Sample< T, H > & | operator= (const Sample< T, H > &)=delete |
|
T * | operator-> () noexcept |
| Transparent access to the encapsulated type. More...
|
|
const T * | operator-> () const noexcept |
| Transparent read-only access to the encapsulated type. More...
|
|
T & | operator* () noexcept |
| Provides a reference to the encapsulated type. More...
|
|
const T & | operator* () const noexcept |
| Provides a const reference to the encapsulated type. More...
|
|
| operator bool () const noexcept |
| Indicates whether the sample is valid, i.e. refers to allocated memory. More...
|
|
T * | get () noexcept |
| Mutable access to the encapsulated type loaned to the sample. More...
|
|
const T * | get () const noexcept |
| Read-only access to the encapsulated type loaned to the sample. More...
|
|
ConditionalConstChunkHeader_t * | getChunkHeader () noexcept |
| Retrieve the ChunkHeader of the underlying memory chunk loaned to the sample. More...
|
|
const mepoo::ChunkHeader * | getChunkHeader () const noexcept |
| Retrieve the ChunkHeader of the underlying memory chunk loaned to the sample. More...
|
|
template<typename R = H, typename = HasUserHeader<R, H>> |
R & | getUserHeader () noexcept |
| Retrieve the user-header of the underlying memory chunk loaned to the sample. More...
|
|
template<typename R = H, typename = HasUserHeader<R, H>> |
const R & | getUserHeader () const noexcept |
| Retrieve the user-header of the underlying memory chunk loaned to the sample. More...
|
|
template<typename S = T, typename = ForPublisherOnly<S, T>> |
void | publish () noexcept |
| Publish the sample via the publisher from which it was loaned and automatically release ownership to it. More...
|
|
template<typename T, typename H = cxx::add_const_conditionally_t<mepoo::NoUserHeader, T>>
class iox::popo::Sample< T, H >
The Sample class is a mutable abstraction over types which are written to loaned shared memory. These samples are publishable to the iceoryx system.
template<typename T , typename H >
template<typename S , typename >
Publish the sample via the publisher from which it was loaned and automatically release ownership to it.
Only available for non-const type T.