robotmem_ros.node module
robotmem ROS 2 Node — SDK 薄包装.
7 Service + 1 Topic (perception stream) + Ready signal.
- class robotmem_ros.node.PerceptionBuffer(mem: robotmem.sdk.RobotMemory, batch_size: int = 50, flush_interval: float = 1.0)
Bases:
object批量写入 + seq 丢失检测 + 背压告警(线程安全)
- add(msg: robotmem_msgs.msg.PerceptionData)
L1: seq 丢失检测 + 入 buffer(共享状态全部在锁内)
- flush()
外部调用 flush(Timer / shutdown)
- get_stats() dict
线程安全的 stats 快照
- log_stats()
周期 stats 日志(Node Timer 调用)
- class robotmem_ros.node.RobotMemNode(*args: Any, **kwargs: Any)
Bases:
Noderobotmem ROS 2 Node
- destroy_node()
关闭顺序: ready=false → flush → close perception → close main → stats
- robotmem_ros.node.main(args=None)
- robotmem_ros.node.ros_error_boundary(func)
ROS Service 回调错误边界 — 对标 @mcp_error_boundary