Creating REDHAWK Projects

This section describes the different types of REDHAWK projects and how to create them using the provided Wizards. Before creating a new project, it is recommended that the IDE be in the REDHAWK perspective so that the proper menus are available.

To create a new REDHAWK project, click File > New > Project, and then select the project type.

The IDE displays the Select a wizard window, which prompts the user to select from multiple project types. Each project type has a custom Wizard to guide users through the initial creation process.

Common Fields

Some basic fields within the new project Wizard are common to all project types and include:

REDHAWK Component Project

The New Component Project Wizard is a three page wizard that walks the user through creating a new REDHAWK component, selecting a programming language, and selecting a code generator. Many of the fields found within the component project wizard are also found within the device project wizard. Fields common to all new project wizards are defined in Common Fields.

Page one of the component wizard contains:

Page two of the wizard defines the component’s implementation, the programming language used and the code generation template.

The content found on this page includes:

Page three of the wizard allows the user to customize the properties of the code generator and template.

Wizard page three contains fields for:

Click Finish to complete the new project creation wizard.

REDHAWK Control Panel Project

The New Control Panel Project Wizard is a two to three page wizard that walks the user through creating a new Plug-in project and optionally, generating a fully functioning project based off of supplied template projects. The New Control Panel Project Wizard is taken directly from the Eclipse New Plug-in Project Wizard and contains identical fields. Refer to the Eclipse documentation for more information.

REDHAWK Device Project

The New Device Project Wizard is a three page wizard that walks the user through creating a new REDHAWK device, selecting a programming language, and selecting a code generator. Many of the fields found within the device project wizard are also found within the component project wizard. Fields common to all new project wizards are defined in Common Fields.

Page one of the wizard contains:

Page two of the wizard defines the device’s implementation, the programming language used and the code generation template.

Wizard page two contains:

Page three of the wizard allows the user to customize the properties of the code generator and template.

Wizard page three contains:

Click Finish to complete the new project creation wizard.

REDHAWK FrontEnd Device Project

The FEI Wizard enables users to quickly create an FrontEnd Interfaces (FEI) compliant RX or TX tuner device. In the wizard, the user specifies the physical properties of the device, including whether the device ingests or outputs GPS and if the device has digital or analog input and output ports. Additionally, the user can choose to augment the required tuner status properties with additional optional properties.

REDHAWK Interface Description Language (IDL) Project

The IDL Project Wizard is a one page wizard that walks the user through creating a new REDHAWK IDL project. Fields common to all new project wizards are defined in Common Fields.

When creating a new IDL project, avoid using reserved names as specified in the Object Management Group Language Mapping Specifications (IDL to Java Language Mapping, Python, and C++).

Page one of the wizard contains:

Click Finish to complete the new project creation wizard.

If you upgrade to REDHAWK version 2.0, and your custom IDL project references the Core Framework (CF) IDLs, compiler errors may be displayed. To resolve the errors, create a new IDL project and import your IDL files into the new project. The new project contains an updated Makefile.am that accounts for changes in the REDHAWK 2.0 IDL files.

REDHAWK Node Project

The New Node Project Wizard is a one to two page wizard that walks the user through creating a new REDHAWK node and optionally, placing devices into the new node. Fields common to all new project wizards are defined in Common Fields.

Page one of the wizard contains:

The wizard may be completed at this point by clicking Finish or the user may continue to the optional second page.

On page two the user chooses what devices/services make up this node. This may be changed after the node’s creation from the Node Editor.

Select Finish to complete the new project creation wizard.

REDHAWK Octave Project

The Octave Wizard enables users to import existing Octave M-files for easy conversion into REDHAWK C++ components. The user imports an existing M-file, as well as any required dependent M-files, and then maps the M-file’s inputs and outputs to REDHAWK ports and properties.

REDHAWK Service Project

The New Service Project Wizard is a three page wizard that walks the user through creating a new REDHAWK service selecting a programming language, and selecting a code generator. Many of the fields found within the service project wizard are also found within the component and device project wizard. Fields common to all new project wizards are defined in Common Fields.

Page one of the wizard contains:

Page two of the wizard defines the service’s implementation, the programming language used and the code generation template.

Wizard page two contains:

Page three of the wizard provides customization to the configuration values of this implementation’s code generation properties and template.

Wizard page three contains:

Select Finish to complete the new project creation wizard.

REDHAWK Shared Library Project

The REDHAWK Shared Library Project Wizard enables users to quickly create a C++ shared library for use in REDHAWK. In the wizard, the user specifies the project name and can then generate a simple set of code files to begin adding in library functions.

REDHAWK Waveform Project

The New Waveform Project Wizard is a one to two page wizard that walks the user through creating a new REDHAWK waveform and optionally, assigning an Assembly Controller. Fields common to all new project wizards are defined in Common Fields.

Page one of the wizard contains:

The user may choose to complete the wizard at this point or continue on to the optional second page. Page two allows the user to set an Assembly Controller for the new waveform. The Assembly Controller may be set, or changed after the waveforms creation from within the Assembly Controller editor.

Click Finish to complete the new project creation wizard.