1#![allow(unsafe_code, unreachable_pub)]
2#![doc = include_str!("../README.md")]
3mod com_guard;
34pub use com_guard::ComGuard;
35mod helpers;
36#[cfg(feature = "opc-da-backend")]
37mod inventory;
38#[cfg(feature = "opc-da-backend")]
39mod native_browse;
40mod provider;
41
42#[cfg(feature = "opc-da-backend")]
43#[allow(warnings)]
44mod bindings;
45pub mod com_worker;
46
47#[cfg(feature = "opc-da-backend")]
48#[allow(warnings)]
49mod opc_da;
50
51#[cfg(feature = "opc-da-backend")]
52mod backend;
53
54pub use helpers::{format_hresult, friendly_com_hint, log_opc_error};
56pub use provider::{
57 BrowseCapabilities, BrowseNamespace, BrowseNode, BrowseNodeFilter, BrowseNodeKind,
58 BrowseNodeToken, BrowsePage, BrowsePageRequest, BrowsePageToken, BrowseSessionToken,
59 InventoryCompleted, InventoryControl, InventoryEntry, InventoryEvent, InventoryOptions,
60 InventoryProgress, InventoryStream, OpcProvider, OpcValue, TagValue, WriteResult,
61};
62
63#[cfg(feature = "opc-da-backend")]
64pub use opc_da::{
65 errors::{OpcError, OpcResult},
66 typedefs::{GroupHandle, ItemHandle},
67};
68
69#[cfg(feature = "opc-da-backend")]
71pub use backend::{connector::ComConnector, opc_da::OpcDaClient};
72
73#[cfg(feature = "test-support")]
75pub use provider::MockOpcProvider;