XORDE  v1.0
eXtensible Operational Robotic Development Environment
XORDE module development API

Introduction

This document describes how to create the XORDE module, declare your own components and make them functional.

Description

XORDE consists of the core and modules. Module is the components pack united in the separate application or shared library.
There are internal and external modules. Internal modules implemented as shared libraries directly connected to the core (at least as it is planned). The external ones connects via WebSocket from their own applications. They can be local or remote (running on the another machine). To create your own external module you should derive from ModuleBaseAppONB class. To make the module visible to the core...

Warning
I don't know what to do :c try connect maybe...

All modules have the list of components. Each component is the functional unit of the system. It has meta-description and set of ONB objects.

ONB object is the fundamental unit of ONB protocol and is intended to exchange data between components. Object is bound to component's variable and contains its name, type description and meta-values associated with the variable.

To create component derive from ComponentBase, then write description in the constructor, create objects and bind it to the member variables. At last use ModuleBaseONB::declareComponent() in the module constructor to make the component visible to the core.

See also
ModuleBaseONB, ModuleBaseAppONB, ComponentBase, ONBObject