|
CIRCT 24.0.0git
|
Default deserializer for simple 1:1 typed reads. More...
#include <TypedPorts.h>

Public Types | |
| using | OutputCallback = TypedReadOwnedCallback<T> |
Public Member Functions | |
| PODTypeDeserializer (OutputCallback output, WireInfo wireInfo) | |
| bool | push (std::unique_ptr< SegmentedMessageData > &msg) |
| bool | poke () |
Private Member Functions | |
| bool | pokeLocked () |
Private Attributes | |
| OutputCallback | output |
| WireInfo | wireInfo |
| std::mutex | mutex |
| std::unique_ptr< T > | pendingOutput |
Default deserializer for simple 1:1 typed reads.
This path converts one raw message into one typed value and forwards it to the typed callback. If the callback rejects the decoded object, preserve it until the raw message is retried so the same owned object is presented again.
Definition at line 167 of file TypedPorts.h.
| using esi::detail::PODTypeDeserializer< T >::OutputCallback = TypedReadOwnedCallback<T> |
Definition at line 169 of file TypedPorts.h.
|
inline |
Definition at line 171 of file TypedPorts.h.
|
inline |
Definition at line 194 of file TypedPorts.h.
References mutex, and pokeLocked().
|
inlineprivate |
Definition at line 200 of file TypedPorts.h.
References output, and pendingOutput.
|
inline |
Definition at line 174 of file TypedPorts.h.
References esi::fromMessageData(), esi::detail::getMessageDataRef(), mutex, pendingOutput, pokeLocked(), and wireInfo.
|
private |
Definition at line 210 of file TypedPorts.h.
|
private |
Definition at line 208 of file TypedPorts.h.
Referenced by PODTypeDeserializer(), and pokeLocked().
|
private |
Definition at line 211 of file TypedPorts.h.
Referenced by pokeLocked(), and push().
|
private |
Definition at line 209 of file TypedPorts.h.
Referenced by PODTypeDeserializer(), and push().