aboutsummaryrefslogtreecommitdiffstats
path: root/src/doc/qtivi/src/ivigenerator/generator-usage.qdoc
diff options
context:
space:
mode:
Diffstat (limited to 'src/doc/qtivi/src/ivigenerator/generator-usage.qdoc')
-rw-r--r--src/doc/qtivi/src/ivigenerator/generator-usage.qdoc67
1 files changed, 64 insertions, 3 deletions
diff --git a/src/doc/qtivi/src/ivigenerator/generator-usage.qdoc b/src/doc/qtivi/src/ivigenerator/generator-usage.qdoc
index 956fcaf..688633b 100644
--- a/src/doc/qtivi/src/ivigenerator/generator-usage.qdoc
+++ b/src/doc/qtivi/src/ivigenerator/generator-usage.qdoc
@@ -52,7 +52,7 @@ The options and parameters are:
\li specifies whether the generator should keep track of the changes in the IDL file
and update output on the fly (--no-reload by default)
\row
- \li -f, --format [frontend|backend_simulator|control_panel|<folder>]
+ \li -f, --format [frontend|backend_simulator|control_panel|backend_qtro|server_qtro|<folder>]
\li see below
\row
\li --help
@@ -67,7 +67,7 @@ The options and parameters are:
\li Generation destination folder
\endtable
-At the moment the generator is able to generate 2 kinds of projects given an interface IDL file
+At the moment the generator is able to generate 5 kinds of projects given an interface IDL file
based on the \e {--format} option value.
These are:
\table
@@ -85,7 +85,16 @@ These are:
\li \l {Control Panel} {control_panel}
\target control-panel-template
\li Generates a controller application, consisting of an UI and a C++ plugin, which communicates
- to the simulation backend generated from the same qface file using QtSimulator.
+ to the simulation backend generated from the same qface file using QtSimulator.
+ \row
+ \li \l {QtRemoteObjects Backend} {backend_qtro}
+ \target backend-qtro-template
+ \li Generates a QtRemoteObjects based backend client for the API generated by the "frontend" option.
+ This backend connects to a backend server.
+ \row
+ \li \l {QtRemoteObjects Server} {server_qtro}
+ \target server-qtro-template
+ \li Generates a QtRemoteObjects based backend server stub for the API generated by the "frontend" option.
\row
\li folder path
\li Uses templates inside the folder. A YAML file with the same name as the folder (and .yaml
@@ -363,4 +372,56 @@ for more information.
\li Control UI for this interface. Contains a interface to control every
property and method and log calls to signals.
\endtable
+
+\section2 QtRemoteObjects Backend
+
+The backend_qtro template is only available if the QtRemoteObjects module was found.
+Despite the name, the remote object backend is not the location for the implementation of the actual backend logic, but just a client for connecting to the remote backend server.
+
+\table
+ \header
+ \li File name
+ \li Purpose
+ \row
+ \li "{{module.module_name|lower}}plugin.h/cpp"
+ \li Files defining implementation of QtIvi backend plugin implementing
+ QIviServiceInterface
+ \row
+ \li "{{module.module_name|lower}}.json"
+ \li File containing identifiers of the exposed feature interfaces needed by the Qt plugin
+ system.
+ \row
+ \li "{{module|lower|replace('.', '-')}}.pri"
+ \li Standard Qt .pri file, containing all the generated files that can be used for
+ including the autogenerated files into a qmake project. Also adds the .rep file
+ to the project and calls the remote object compiler.
+ \row
+ \li "{{interface|lower}}backend.h/cpp"
+ \li Files containing the implementation of the remote object backend.
+ Establishes the connection and initializes the remote object replica.
+ \row
+ \li "{{interface|lower}}.rep"
+ \li The input file for Qt’s \l [QtRemoteObjects] {Qt Remote Objects Compiler} {replica compiler} for producing the replica class code.
+\endtable
+
+\section2 QtRemoteObjects server
+
+The server_qtro template is only available if the QtRemoteObjects module was found. The produced code contains merely the source classes to inherit and code for establishing the connection. It is up to the developer to implement the actual backend logic.
+
+\table
+ \header
+ \li File name
+ \li Purpose
+ \row
+ \li "core.h/cpp"
+ \li Code for establishing the connection and starting the remoting for the source objects.
+ \row
+ \li "{{srcBase|lower}}.pri"
+ \li Standard Qt .pri file, containing all the generated files that can be used for
+ including the autogenerated files into a qmake project. Also includes the .rep file
+ to the project and calls the remote object compiler.
+ \row
+ \li "{{interface|lower}}.rep"
+ \li The input file for the Qt’s \l [QtRemoteObjects] {Qt Remote Objects Compiler} {replica compiler} for producing the source class code.
+\endtable
*/