Core ==== Core is the ROS-facing API surface: namespace discovery, topic inspection, publish/subscribe, image helpers, parameter handling, and service calls. Image, CompressedImage, and PointCloud2 topics carry their data as native protobuf bytes in both directions. Other ROS messages use the generic structured representation. .. tab-set:: :sync-group: sdk-language .. tab-item:: Python :sync: python .. automodule:: olo.core :no-members: **Client interfaces** .. autoclass:: olo.core.Core :members: .. autoclass:: olo.core.CoreHandle :members: .. autoclass:: olo.core.Publisher :members: .. autoclass:: olo.core.Subscription :members: **Types** .. autoclass:: olo.core.RobotNamespaces :members: .. autoclass:: olo.core.TopicInfo :members: .. autoclass:: olo.core.ServiceInfo :members: .. autoclass:: olo.core.Image :members: .. tab-item:: TypeScript :sync: typescript Import from ``olo/core``: **Client interfaces** - :doc:`Core ` — service wrapper for low-level Core RPCs. - :doc:`CoreHandle ` — namespace-scoped helper for common robot operations. - :doc:`Publisher ` — reusable topic publisher. - :doc:`Subscription ` — async iterable subscription stream. **Types** - :doc:`TopicInfo ` — topic name and ROS message type. - :doc:`ServiceInfo ` — service name and ROS service type. - :doc:`RosMessage ` — ROS-shaped object; binary sensor fields are ``Uint8Array`` values. - :doc:`Image ` — dependency-free image payload. - :doc:`CallOptions ` — per-call timeout options. - ``ParamNative`` — native value union for ROS parameters. - :doc:`RobotNamespaces ` — namespace discovery result and default-resolution helper. **Images and namespaces** - :doc:`imageMessageToFrame ` - :doc:`compressedMessageToFrame ` - :doc:`imageToMessage ` - :doc:`compressedImageToMessage ` - :doc:`normalizeRobotNamespace `