Skip to main content

Crate oxigdal_embedded

Crate oxigdal_embedded 

Source
Expand description

§OxiGDAL Embedded

Embedded systems support for OxiGDAL providing no_std compatible geospatial processing for ARM, RISC-V, ESP32, and other embedded targets.

§Features

  • no_std compatibility with optional alloc support
  • Static memory pools for predictable allocation behavior
  • Target-specific optimizations (ARM, RISC-V, ESP32)
  • Low-power operation modes
  • Real-time constraints support
  • Minimal binary footprint

§Usage

use oxigdal_embedded::memory_pool::StaticPool;
use oxigdal_embedded::minimal::MinimalRasterMeta;

// Create a static memory pool for no_std environments
static POOL: StaticPool<4096> = StaticPool::new();

// Use minimal raster metadata for constrained resources
let meta = MinimalRasterMeta::new(256, 256, 3, 1);
assert_eq!(meta.total_size(), 256 * 256 * 3);

§Architecture

The crate is organized into:

  • alloc/ - Custom allocators for no_std environments
  • memory_pool - Static memory pool implementations
  • target/ - Target-specific optimizations
  • power - Power management utilities
  • realtime - Real-time scheduling support
  • minimal - Minimal feature set for ultra-constrained environments

Modules§

alloc_utils
Custom allocator implementations for no_std environments
buffer
Fixed-size buffer implementations for embedded systems
config
Configuration for embedded systems
error
Error types for embedded OxiGDAL operations
memory_pool
Static memory pool implementations for no_std environments
minimal
Minimal feature set for ultra-constrained environments
power
Power management for embedded systems
prelude
Prelude module containing commonly used types and traits
realtime
Real-time scheduling and deadline management
sync
Synchronization primitives for embedded systems
target
Target-specific optimizations and support