Skip to main content

Crate ng_gateway_sdk

Crate ng_gateway_sdk 

Source

Re-exports§

pub use northward::buffer::DeviceBuffers;
pub use northward::envelope;
pub use northward::extension::ExtensionStore;
pub use northward::extension::ExtensionStoreExt;
pub use northward::mapping;
pub use northward::probe::discover_north_libraries_in_dir;
pub use northward::probe::probe_north_library;
pub use northward::probe::NorthwardProbeInfo;
pub use northward::runtime_api::NorthwardRuntimeApi;
pub use northward::supervised::NorthwardHandle;
pub use northward::supervised::SupervisedPlugin;
pub use northward::EventReceiver;
pub use northward::NorthwardData;
pub use northward::NorthwardEvent;
pub use northward::NorthwardInitContext;
pub use northward::NorthwardPublisher;
pub use northward::Plugin;
pub use northward::PluginConfig;
pub use northward::PluginFactory;
pub use southward::probe::probe_driver_library;
pub use southward::probe::DriverProbeInfo;
pub use southward::supervised::SouthwardHandle;
pub use southward::supervised::SupervisedDriver;
pub use southward::transport::bind_udp_metered;
pub use southward::transport::bind_udp_metered_with_timeout;
pub use southward::transport::connect_serial_metered;
pub use southward::transport::connect_tcp_metered;
pub use southward::transport::connect_tcp_metered_with_timeout;
pub use southward::transport::MeteredStream;
pub use southward::transport::MeteredUdpSocket;
pub use southward::transport::NoopSouthwardTransportMeter;
pub use southward::transport::SerialConnectConfig;
pub use southward::transport::SouthwardTransportMeter;
pub use southward::wire::WireDecode;
pub use southward::wire::WireEncode;
pub use southward::CollectItem;
pub use southward::CollectionGroupKey;
pub use southward::Driver;
pub use southward::DriverConfig;
pub use southward::DriverFactory;
pub use southward::ExecuteOutcome;
pub use southward::ExecuteResult;
pub use southward::RuntimeAction;
pub use southward::RuntimeChannel;
pub use southward::RuntimeDelta;
pub use southward::RuntimeDevice;
pub use southward::RuntimeParameter;
pub use southward::RuntimePoint;
pub use southward::WriteOutcome;
pub use southward::WriteResult;
pub use supervision::ConnectionState;
pub use supervision::FailureKind;
pub use supervision::FailurePhase;
pub use supervision::FailureReport;
pub use supervision::HandleCell;
pub use supervision::Phase;
pub use supervision::RetryBudgetSnapshot;

Modules§

export
Internal re-exports for use in generated symbols/macros to avoid version drift
log
Public log bridge contract for cdylib libraries (drivers + plugins).
mqtt
northward
sdk
Public SDK constants for loader/driver macros to reference.
southward
supervision
Unified supervision foundation for southward drivers and northward plugins.

Macros§

ng_driver_factory
Define and export a driver factory and metadata (UiSchema) for dynamic loading.
ng_plugin_factory
Define and export a northward plugin factory and metadata for dynamic loading.
ui_text
Inline i18n helper for driver metadata (UiSchema)

Structs§

ActionModel
AlarmData
Northward envelope protocol types (re-exported at crate root). Alarm data message
AttributeData
Northward envelope protocol types (re-exported at crate root). Attribute data message
BinaryInfo
ChannelModel
ClientRpcResponse
Northward envelope protocol types (re-exported at crate root). Client RPC response message
Command
Northward envelope protocol types (re-exported at crate root). Command message received from platform
ConnectionPolicy
DeviceConnectedData
Northward envelope protocol types (re-exported at crate root). Device connected data message
DeviceDisconnectedData
Northward envelope protocol types (re-exported at crate root). Device disconnected data message
DeviceModel
DriverEntityTemplate
A flattened view for a specific entity, ready for template generation or import validation
DriverMetrics
Driver metrics
DriverSchemas
EnumItem
Field
FieldError
A single field-level error captured during validation.
FlattenColumn
A single flattened column derived from DriverSchemas
Group
ImportValidationPreview
Public response shape for import preview.
NGValueJsonOptions
JSON encoding options for NGValue.
Parameter
PointMeta
Northward envelope protocol types (re-exported at crate root). Point metadata snapshot for northward consumption.
PointModel
PointValue
A single point update.
QueuePolicy
Northward envelope protocol types (re-exported at crate root).
RetryController
A unified retry budget controller that enforces BOTH:
RetryPolicy
Unified retry policy configuration with exponential backoff and max attempts.
RowMappingContext
Mapping context that provides ambient information for domain conversion.
RpcRequest
Northward envelope protocol types (re-exported at crate root). RPC request message
Rules
ServerRpcResponse
Northward envelope protocol types (re-exported at crate root). Server RPC response message
SouthwardInitContext
Runtime init context for a southbound driver
TelemetryData
Northward envelope protocol types (re-exported at crate root). Telemetry data message
TemplateMetadata
Metadata written into hidden __meta__ sheet alongside the data sheet.
Transform
Logical-layer value transformation rules.
UiProps
Union
UnionCase
ValidatedRow
A row that passed validation (or only with warnings)
ValidationSummary
Overall summary stats for an import validation.
ValueCodec
Protocol-agnostic value coercion utilities. Centralizes scaling, rounding, clamping, and common string/boolean parsing.
When
WritePoint
Northward envelope protocol types (re-exported at crate root). Write-point request (control-plane): a northward plugin asks Gateway to write a single point.
WritePointError
Northward envelope protocol types (re-exported at crate root).
WritePointResponse
Northward envelope protocol types (re-exported at crate root). Write-point response (Gateway -> northward plugin).

Enums§

AccessMode
AlarmSeverity
Northward envelope protocol types (re-exported at crate root). Alarm severity levels
BinaryArch
BinaryJsonEncoding
JSON encoding strategy for binary values.
BinaryOsType
CollectionType
DataPointType
DataType
DeviceState
Device operational state
DriverError
Driver specific errors
DropPolicy
Northward envelope protocol types (re-exported at crate root).
FlattenEntity
Entity kinds for building flattened plans
NGValue
A strongly-typed runtime value for telemetry/attributes.
NGValueCastError
Error returned when converting an NGValue into a concrete Rust primitive.
Node
NorthwardError
Northward communication specific errors
Operator
ReportType
RetryDecision
RuleValue
RuleValue allows a raw value or an object with value and message. This maximizes wire compatibility with frontend needs (custom error messages).
Status
TargetType
Northward envelope protocol types (re-exported at crate root). Command type
TimestampJsonEncoding
JSON encoding strategy for timestamp values.
UiDataType
UiText
ValidationCode
Validation status code for a single field in import flows.
WhenEffect
WritePointErrorKind
Northward envelope protocol types (re-exported at crate root).
WritePointStatus
Northward envelope protocol types (re-exported at crate root).

Traits§

FromValidatedRow
Domain mapping trait for converting a normalized ValidatedRow into a domain model.

Functions§

build_exponential_backoff
Build an ExponentialBackoff from RetryPolicy.
downcast_parameters
Downcast resolved parameters to a concrete protocol parameter type.
ensure_current_platform_from_bytes
ensure_current_platform_from_path
inspect_binary
resolve_action_inputs_typed
Resolve input parameter values with defaulting semantics (unchecked variant).
validate_action_parameters
Validate action parameters including required presence and numeric ranges.
validate_and_resolve_action_inputs
Validate, default and resolve action inputs into strongly-typed NGValues.

Type Aliases§

DriverResult
NorthwardResult
PluginConfigSchemas