1#![deny(unsafe_code)]
6#![warn(missing_docs)]
7
8mod error;
9mod format;
10mod options;
11mod traits;
12
13#[cfg(feature = "io-pcd")]
14pub mod pcd;
16
17#[cfg(feature = "io-ply")]
18pub mod ply;
20
21#[cfg(feature = "io-las")]
22pub mod las;
24
25#[cfg(feature = "io-e57")]
26pub mod e57;
28
29#[cfg(feature = "io-copc")]
30pub mod copc;
32
33pub use error::IoError;
34pub use format::{
35 detect_point_cloud_format, read_point_cloud_file, read_point_cloud_file_with_format,
36 write_point_cloud_file, write_point_cloud_file_with_format, PointCloudFileFormat,
37};
38pub use options::{ReadOptions, WriteOptions};
39pub use traits::{PointReader, PointSink, PointStream, PointWriter};
40
41#[cfg(feature = "io-pcd")]
42pub use pcd::{
43 infer_field_semantic, read_pcd, read_pcd_file, schema_from_pcd_fields, write_pcd,
44 write_pcd_file, PcdDataKind, PcdFieldSpec, PcdHeader, PcdReader, PcdType, PcdWriteFormat,
45 PcdWriter,
46};
47
48#[cfg(feature = "io-ply")]
49pub use ply::{
50 infer_property_semantic, ply_property_from_field, read_ply, read_ply_file,
51 schema_from_ply_properties, write_ply, write_ply_file, PlyFormat, PlyHeader, PlyProperty,
52 PlyPropertyKind, PlyReader, PlyWriteFormat, PlyWriter,
53};
54
55#[cfg(feature = "io-las")]
56pub use las::{
57 infer_las_field_semantic, read_las, read_las_file, schema_for_las_header,
58 schema_from_point_cloud, write_las, write_las_file, LasReader, LasWriteFormat, LasWriter,
59};
60
61#[cfg(feature = "io-e57")]
62pub use e57::{
63 e57_prototype_from_schema, read_e57, read_e57_file, schema_for_e57_pointcloud,
64 schema_from_point_cloud as e57_schema_from_point_cloud, write_e57, write_e57_file, E57Reader,
65 E57Writer,
66};
67
68#[cfg(feature = "io-copc")]
69pub use copc::{
70 copc_level_for_resolution, read_copc, read_copc_file, read_copc_file_in_bounds,
71 read_copc_file_info, read_copc_file_with_query, write_copc, write_copc_file,
72 write_copc_file_with_params, CopcBounds, CopcFileInfo, CopcQuery, CopcReader, CopcWriter,
73 CopcWriterParams,
74};
75
76#[cfg(feature = "io-copc-http")]
77pub use copc::{read_copc_url, read_copc_url_info, read_copc_url_with_query, HttpByteSource};