| Crates.io | dis_lib |
| lib.rs | dis_lib |
| version | 0.1.0 |
| created_at | 2022-03-31 11:42:01.491747+00 |
| updated_at | 2022-03-31 11:42:01.491747+00 |
| description | An implementation of the Distributed Interactive Simulation protocol in Rust. |
| homepage | |
| repository | https://github.com/zlubsen/dis-rs/dis_lib |
| max_upload_size | |
| id | 559579 |
| size | 183,371 |
dis-lib is an implementation of the Distributed Interactive Simulation (DIS) protocol for Rust. It provides functions to build PDUs in applications, send them out via a network and parse received byte streams into PDUs.
Constructing PDUs is done via builder pattern constructors.
Given a buffer, the lib can return multiple PDUs in multiple DIS versions present in the buffer.
Here is an overview of the DIS features supported by dis-lib. 'Read' means reading a PDU from a byte stream. 'Write' means constructing a PDU in a struct and serializing it to a buffer.
| PDU / function | v6 read | v6 write | v7 read | v7 write |
|---|---|---|---|---|
| PDU Header | V | V | ||
| EntityState PDU | V | V | ||
| FirePdu | ||||
| DetonationPdu | ||||
| CollisionPdu | ||||
| ServiceRequestPdu | ||||
| ResupplyOfferPdu | ||||
| ResupplyReceivedPdu | ||||
| ResupplyCancelPdu | ||||
| RepairCompletePdu | ||||
| RepairResponsePdu | ||||
| CreateEntityPdu | ||||
| RemoveEntityPdu | ||||
| StartResumePdu | ||||
| StopFreezePdu | ||||
| AcknowledgePdu | ||||
| ActionRequestPdu | ||||
| ActionResponsePdu | ||||
| DataQueryPdu | ||||
| SetDataPdu | ||||
| DataPdu | ||||
| EventReportPdu | ||||
| CommentPdu | ||||
| ElectromagneticEmissionPdu | ||||
| DesignatorPdu | ||||
| TransmitterPdu | ||||
| SignalPdu | ||||
| ReceiverPdu | ||||
| AnnounceObjectPdu | ||||
| DeleteObjectPdu | ||||
| DescribeApplicationPdu | ||||
| DescribeEventPdu | ||||
| DescribeObjectPdu | ||||
| RequestEventPdu | ||||
| RequestObjectPdu | ||||
| TimeSpacePositionIndicatorFIPdu | ||||
| AppearanceFIPdu | ||||
| ArticulatedPartsFIPdu | ||||
| FireFIPdu | ||||
| DetonationFIPdu | ||||
| PointObjectStatePdu | ||||
| LinearObjectStatePdu | ||||
| ArealObjectStatePdu | ||||
| EnvironmentPdu | ||||
| TransferControlRequestPdu | ||||
| TransferControlPdu | ||||
| TransferControlAcknowledgePdu | ||||
| IntercomControlPdu | ||||
| IntercomSignalPdu | ||||
| AggregatePdu | ||||
| 'Other' PDU | V | V | ||
| Dead Reckoning Algos |