metaonly interface xdc.tools.product.IProduct

Interface specifying product details

This interface allows products describe themselves for the benefit of development tools such as IDE's. For example, a tool can read the information provided by a product that implements this interface and generate an eclipse plugin that leverages the product's "resources". [ more ... ]
XDCspec summary sourced in xdc/tools/product/IProduct.xdc
metaonly interface IProduct {  ...
XDCspec declarations sourced in xdc/tools/product/IProduct.xdc
 
metaonly interface IProduct {
module-wide constants & types
        String label// Help element description;
        String filePath// Path to help doc;
    };
    };
    metaonly struct UrlDescriptor// URL Descriptor structure {
        String url// Uniform Resource Locator(URL);
        String text// Summary text for the URL;
    };
module-wide config parameters
    config String bundleName// Product bundle name;
    config String featureId// A unique feature id;
    config String id// A unique product id;
    config String name// Product name;
    config String version// Product version;
}
DETAILS
This interface allows products describe themselves for the benefit of development tools such as IDE's. For example, a tool can read the information provided by a product that implements this interface and generate an eclipse plugin that leverages the product's "resources".
By expressing the product's information in this interface, a product can be delivered into multiple development tools without explicit knowledge of these tools. For example, an online "product repository" can extract sufficient information from this interface to enable it to provide a searchable catalog of interesting products.
This is an experimental interface and is subject to change
struct IProduct.HelpToc

Help table of contents (TOC) element

XDCspec declarations sourced in xdc/tools/product/IProduct.xdc
metaonly struct HelpToc {
    String label;
    // Help element description
    String filePath;
    // Path to help doc
    Bool tocFile;
    // Indicates whether element is a TOC file
};
FIELDS
label — Summary description of help element
filePath — Path to help documentation relative to directory specified in docsLoc
tocFile — Flag indicates whether the element is a table of content(TOC) file. Tools may process TOC files in a special way. For example a tool to generate eclipse plugins may want to copy the TOC file in the plugin folder for integrating with eclipse help.
DETAILS
A help element is a file inside the product that may be referenced from a global table of contents.
struct IProduct.Target

Structure containing information on RTSC targets

XDCspec declarations sourced in xdc/tools/product/IProduct.xdc
metaonly struct Target {
    String deviceNamePattern;
    // Device name regex eg. MSP430*
    String deviceFamilyPattern;
    // Device family regex eg. C6*
    String packageName;
    // Package containing RTSC target
    String baseTargetName;
    // Name of RTSC target module
};
FIELDS
deviceNamePattern — A regular expression for device names
deviceFamilyPattern — A regular expression for device families
packageName — The name of a package containing a target module that can be used with the devices that match the device name and family patterns
baseTargetName — The name of the module (without the package prefix) in the package named by packageName.
DETAILS
Products may specify RTSC target modules by associating them with device name and family regular expressions. This information may be leveraged by tools to derive the RTSC target given a device name and family. Devices implement the xdc.platform.ICpuDataSheet interface. Devices may be grouped in a family and delivered as a package.
For example, the device module TMS320DA830 in the package ti.catalog.C6000 may be associated with a RTSC target ti.targets.C674 by setting deviceNamePattern to TMS320DA8*, deviceFamilyPattern to C6*, packageName to ti.targets and baseTargetName to C674.
struct IProduct.UrlDescriptor

URL Descriptor structure

XDCspec declarations sourced in xdc/tools/product/IProduct.xdc
metaonly struct UrlDescriptor {
    String url;
    // Uniform Resource Locator(URL)
    String text;
    // Summary text for the URL
};
FIELDS
url — Uniform Resource Locator(URL)
text — Summary text for the URL
config IProduct.bundleName  // module-wide

Product bundle name

XDCspec declarations sourced in xdc/tools/product/IProduct.xdc
config String bundleName;
DETAILS
Product bundle name is embedded in the top level folder name of the product. Example: The top level folder for XDCtools version 3.16.02.31-eng is xdctools_3_16_02_31-eng. In this case the bundle name is xdctools. The bundle name maybe used by tools to discover the product installed on a filesystem.
config IProduct.companyName  // module-wide

Name of company releasing product

XDCspec declarations sourced in xdc/tools/product/IProduct.xdc
config String companyName;
DETAILS
Example : "Texas Instruments"
config IProduct.copyRightNotice  // module-wide

Copyright notice for product

XDCspec declarations sourced in xdc/tools/product/IProduct.xdc
config String copyRightNotice;
config IProduct.docsLocArr  // module-wide

Directories containing documents in the product

XDCspec declarations sourced in xdc/tools/product/IProduct.xdc
config String docsLocArr[];
DETAILS
Directories are specified relative to the product installation directory.
config IProduct.exclusive  // module-wide

Indicates whether product allows existence of multiple versions in a system

XDCspec declarations sourced in xdc/tools/product/IProduct.xdc
config Bool exclusive = false;
DETAILS
When flag is set to true it indicates that only one version of the product can be active in the system. Otherwise the system can handle multiple versions of the same product.
config IProduct.featureId  // module-wide

A unique feature id

XDCspec declarations sourced in xdc/tools/product/IProduct.xdc
config String featureId;
DETAILS
A feature maybe used by a system to install product upgrades. Typically a system will look at various versions of a feature available in the system and allow the user to upgrade to the latest version. The product developer can use the featureId to manage the granularity of product upgrades in a system. For example the version 3.20.0.00 for product org.eclipse.rtsc.xdctools.product may have the featureId org.eclipse.rtsc.xdctools.product_3.20. The product developer may allow the upgrade system to pick up patch releases to 3.20.0.00 release by specifying different versions of the product (eg. 3.20.0.01) with featureId org.eclipse.rtsc.xdctools.product_3.20
config IProduct.helpTocArr  // module-wide

Array of table of contents elements in product

XDCspec declarations sourced in xdc/tools/product/IProduct.xdc
config IProduct.HelpToc helpTocArr[];
DETAILS
Tools generating table of contents are required to preserve the order of elements specified in this array
config IProduct.id  // module-wide

A unique product id

XDCspec declarations sourced in xdc/tools/product/IProduct.xdc
config String id;
DETAILS
For example, product developers may choose to follow namespace conventions for Java packages or Eclipse plugins to specify a unique id like org.eclipse.rtsc.xdctools.product.
config IProduct.licenseDescriptor  // module-wide

License information for product

XDCspec declarations sourced in xdc/tools/product/IProduct.xdc
config IProduct.UrlDescriptor licenseDescriptor;
VALUES
url — field should contain the URL containing the license text.
text — field should contain a summary description of the license
config IProduct.name  // module-wide

Product name

XDCspec declarations sourced in xdc/tools/product/IProduct.xdc
config String name;
DETAILS
String containing product name eg. System BIOS
config IProduct.otherFiles  // module-wide

Array of paths to files that describe the product

XDCspec declarations sourced in xdc/tools/product/IProduct.xdc
config String otherFiles[];
DETAILS
A product may wish to supply files that describing certain aspects of itself. For example a product may provide text, images and video files that provide branding information for the product. These files may then be consumed by tools like IDE's via hooks defined in the IDE framework. The file path is defined relative to the directory containing the implementation of this interface
config IProduct.productDescriptor  // module-wide

Product description

XDCspec declarations sourced in xdc/tools/product/IProduct.xdc
config IProduct.UrlDescriptor productDescriptor;
VALUES
url — the url field should contain the URL of the organization releasing the product.
text — the text field should contain summary description of the product
config IProduct.productViewModule  // module-wide

Name of module implementing xdc.tools.product.IProductView

XDCspec declarations sourced in xdc/tools/product/IProduct.xdc
config String productViewModule;
DETAILS
Product view module should be delivered in the repositories defined in repositoryArr
config IProduct.repositoryArr  // module-wide

Repositories contained in product

XDCspec declarations sourced in xdc/tools/product/IProduct.xdc
config String repositoryArr[];
DETAILS
Repositories are specified relative to the product installation directory.
config IProduct.targetArr  // module-wide

RTSC target modules contained in product

XDCspec declarations sourced in xdc/tools/product/IProduct.xdc
config IProduct.Target targetArr[];
DETAILS
The RTSC target modules should be delivered in the repositories defined in repositoryArr
config IProduct.templateModule  // module-wide

Name of module implementing xdc.tools.product.IProductTemplate

XDCspec declarations sourced in xdc/tools/product/IProduct.xdc
config String templateModule;
DETAILS
Template module should be delivered in the repositories defined in repositoryArr
config IProduct.tocIndexFile  // module-wide

Top level index file referred in table of contents

XDCspec declarations sourced in xdc/tools/product/IProduct.xdc
config String tocIndexFile;
config IProduct.updateSite  // module-wide

Update site for product

XDCspec declarations sourced in xdc/tools/product/IProduct.xdc
config IProduct.UrlDescriptor updateSite;
VALUES
url — the url field should contain the URL containing product upgrades.
text — the text field should contain summary description of the update site
config IProduct.version  // module-wide

Product version

XDCspec declarations sourced in xdc/tools/product/IProduct.xdc
config String version;
DETAILS
The product version should follow the format -major.minor.service.qualifier where major,minor and service are integers and qualifier is a string. Example - 3.16.02.31-eng.
Products may specify their own guidelines for updating major,minor,service and qualifier portions of the version number as long as they are unique for the product. Products may also choose to follow popular versioning conventions like those followed for versioning Eclipse plugins.
generated on Tue, 24 Aug 2010 15:39:23 GMT