|
CIRCT 23.0.0git
|


Public Types | |
| using | Base = QueuedDecodeTypeDeserializer< SerialCoordOutputBatch > |
| using | OutputCallback = Base::OutputCallback |
| using | DecodedOutputs = Base::DecodedOutputs |
Public Types inherited from esi::QueuedDecodeTypeDeserializer< SerialCoordOutputBatch > | |
| using | OutputCallback = detail::TypedReadOwnedCallback< SerialCoordOutputBatch > |
| using | DecodedOutputs = std::vector< std::unique_ptr< SerialCoordOutputBatch > > |
Public Member Functions | |
| TypeDeserializer (OutputCallback output) | |
Public Member Functions inherited from esi::QueuedDecodeTypeDeserializer< SerialCoordOutputBatch > | |
| QueuedDecodeTypeDeserializer (OutputCallback output) | |
| virtual | ~QueuedDecodeTypeDeserializer ()=default |
| bool | push (std::unique_ptr< SegmentedMessageData > &msg) |
| Push one raw message into the deserializer. | |
| bool | poke () |
| Retry delivery of any typed outputs which were previously blocked by the client callback. | |
Private Member Functions | |
| DecodedOutputs | decode (std::unique_ptr< SegmentedMessageData > &msg) override |
| Decode one raw message into zero or more typed outputs. | |
Private Attributes | |
| std::vector< Coord > | accumulated |
| std::vector< uint8_t > | partialFrameBytes |
| size_t | remainingCoords = 0 |
Additional Inherited Members |
Definition at line 1936 of file esitester.cpp.
| using SerialCoordOutputBatch::TypeDeserializer::Base = QueuedDecodeTypeDeserializer<SerialCoordOutputBatch> |
Definition at line 1939 of file esitester.cpp.
Definition at line 1941 of file esitester.cpp.
Definition at line 1940 of file esitester.cpp.
|
inlineexplicit |
Definition at line 1943 of file esitester.cpp.
|
inlineoverrideprivatevirtual |
Decode one raw message into zero or more typed outputs.
Implementations must consume msg before returning, even when zero outputs are produced.
Implements esi::QueuedDecodeTypeDeserializer< SerialCoordOutputBatch >.
Definition at line 1947 of file esitester.cpp.
References accumulated, SerialCoordOutputHeader::coordsCount, SerialCoordOutputFrame::data, esi::MessageData::getBytes(), esi::MessageData::getSize(), SerialCoordOutputFrame::header, partialFrameBytes, remainingCoords, SerialCoordOutputData::x, and SerialCoordOutputData::y.
|
private |
Definition at line 1996 of file esitester.cpp.
Referenced by decode().
|
private |
Definition at line 1997 of file esitester.cpp.
Referenced by decode().
|
private |
Definition at line 1998 of file esitester.cpp.
Referenced by decode().