C++/Qt Plugin Development Guide v1.0.0
This guide covers Linux platform (C++/Qt technology stack) plugin development. For the common concepts shared across plugin development (ARCS workflow, installation nodes and program nodes, etc.), please refer to the Plugin Development Guide and choose the development platform that best fits your requirements.
Plugin Template Structure
API
AuboStudio provides API interfaces that users can directly call during plugin development, reducing development time. Based on the usage restrictions of different APIs in installation nodes and program nodes, APIs can be divided into two main categories: domain_api and aubo_cpa_api. Within domain_api, system_api, user_interface_api, and application_api can be used in both installation nodes and program nodes. The program_api in aubo_cpa_api is only usable in program nodes, while installation_api is exclusive to installation nodes. For detailed descriptions of domain_api and aubo_cpa_api, refer to the diagram below.

注意
For detailed information on each interface, please refer to the Appendix: aubo_caps API
API Usage Overview
In the template, both installation nodes and program nodes include three classes: service, contribution, and view. The service class in installation nodes serves to create contribution and view classes. The contribution class contains data-related content, while the view class contains interface-related content. Details are as follows:
Interfaces in the service class of installation nodes:
getTitle、getIcon、createView、configureContribution、createInstallationNodeInterfaces in the service class of program nodes:
getTitle、getIcon、getId、createView、configureContribution、createNodeapi_provider_ interface in the contribution class of installation nodes:
systemApi、userInterfaceApi、installationApiapi_provider_ interface in the contribution class of program nodes:
systemApi、userInterfaceApi、programApiview_api_ interface in both installation nodes and program nodes' view classes:
systemApi、userInterfaceApiAccessing data using DataModel:
- Configuration Data is generally stored in the [/root/arcs_ws/program] folder. When aubo_scope starts, the saved configuration data is loaded into the DataModel.
- The interface DataModelPtr model_{ nullptr } provides a mechanism in both installation and program environments. This interface allows storing data items into the DataModel (currently supporting only specific data types, details in Appendix: aubo_caps API).
- Usage of the interface DataModelPtr model_{ nullptr }:
- Add the header file
#include "aubo_caps++/meta_type.h". - Add
DECLARE_ATTRin the private section of the contribution class.
- Add the header file
