1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
// SPDX-License-Identifier: EPL-2.0
//! # traci-rs
//!
//! A pure-Rust client library for the [SUMO](https://sumo.dlr.de) TraCI
//! (Traffic Control Interface) protocol.
//!
//! ## Quick start
//!
//! ```no_run
//! use traci_rs::TraciClient;
//!
//! fn main() -> Result<(), traci_rs::TraciError> {
//! let mut client = TraciClient::connect("127.0.0.1", 8813)?;
//! client.set_order(1)?;
//!
//! // Advance the simulation one step
//! client.simulation_step(0.0)?;
//!
//! // Query all vehicles
//! let ids = client.vehicle.get_id_list(&mut client)?;
//! for id in &ids {
//! let pos = client.vehicle.get_position(&mut client, id)?;
//! println!("{}: ({}, {})", id, pos.x, pos.y);
//! }
//!
//! client.close()?;
//! Ok(())
//! }
//! ```
pub
pub use TraciClient;
pub use TraciError;
pub use *;
pub use SubscribedKinematics;
// Re-export scope types so users can name them in generic helpers.
pub use VehicleScope;
pub use PersonScope;
pub use SimulationScope;
pub use TrafficLightScope;
pub use VehicleTypeScope;
pub use EdgeScope;
pub use LaneScope;
pub use JunctionScope;
pub use RouteScope;