OpenViBE Documentation

Skeleton Generator - beta

  • NB: Document based on OpenViBE 0.9.0 (dec-2010).

Introduction

The skeleton-generator is a tool useful for those who want to implement a new driver or plugin. Using the GUI, the developer gives various information that will be automatically integrated in the C++ skeletons, such as driver sampling frequencies or box inputs and outputs. All fields are required, and each one can be explained by pressing the corresponding "help" button.

Once all entries are filled, they are checked and the generation process can be executed. The files produced must be integrated in an OpenViBE project (openvibe-plugins/signal-processing for example).

Important Warnings

The skeleton-generator uses the GNU utility sed to replace tags by user's specific information in template files. To perform these replacements without any problem, the tool checks the information provided. Some particular entries have constraints, for example you cannot use letters in the field "sampling frequencies" of your driver skeleton.

Such constraints are checked before generation, and you will be asked to change any faulty field. However, some fields such as box description are free of restriction. We tried to ensure that every character can be used in such field, but still have some doubts on sed/OS compatibility.

For that reasons, the Skeleton-Generator is given as a beta version. Don't hesitate to report unstability or compatibility issues when using this tool.

How to use it ?

The first interface is simple. You have to enter the developer name and its affiliation. Then choose the skeleton you want to generate : Acquisition Driver or Box Algorithm.

sk-gen-init.png
Fig.1 Skeleton generator dialog window.

For both skeleton generator you will have 3 buttons:

  • Check : verify all fields, and asks for modification if needed.
  • Ok : generate the files. This button is enabled only after successful check process. If you modify some entries, please be sure to check them again.
  • Save & Exit : exit the application and save the current fields for the next time.

Press any "help!" buttons for more details about a field.

Don't forget to read the README file produced ! It explains how to integrate your skeleton in OpenViBE and build it.

The Acquisition Driver Skeleton Generator

This generator is quiet simple : it needs the driver name, the class name (which should be close to the driver name), the maximum and minimum channel count and the different sampling frequencies. Choose the target directory and you're done.

sk-gen-driver.png
Fig.2 Driver Skeleton Generator.

Please read the dedicated tutorials to learn how to implement your new driver.

The Box Algorithm Skeleton Generator

Bulding a new plugin is lot more complicated. Generating the skeleton can be done in five steps, each one one a different tab.

  • Description : basic information,such as box name, category, icon used in the designer, etc.
  • Inputs : add box inputs by specifying name and type
  • Outputs : add box outputs by specifying name and type
  • Settings : add box settings by specifying name, type and default value
  • Algorithms : add input decoders and output encoders. You should add one algorithm per input/output, even if they have the same type.

WARNING : the settings default values are not checked. Please be sure to enter coherent values.

sk-gen-box-description.png
Fig.3 Box description.

The skeleton code is widely commented to help you understand the various possibilities of implementation. For a first tutorial, please read the dedicated pages.

Feel free to ask your questions on the forum. Experienced developers will answer you asap ! Thanks for using OpenViBE.