| <?xml version='1.0' encoding='UTF-8'?> |
| <!-- Schema file written by PDE --> |
| <schema targetNamespace="org.eclipse.linuxtools.profiling.launch" xmlns="http://www.w3.org/2001/XMLSchema"> |
| <annotation> |
| <appinfo> |
| <meta.schema plugin="org.eclipse.linuxtools.profiling.launch" id="launchProvider" name="Launch Provider"/> |
| </appinfo> |
| <documentation> |
| This extension point allows various launch shortcuts that use the <code>ProfileLaunchShortcut</code> the ability to contribute its launcher(s) to a general set of profiling types. |
| </documentation> |
| </annotation> |
| |
| <element name="extension"> |
| <annotation> |
| <appinfo> |
| <meta.element /> |
| </appinfo> |
| </annotation> |
| <complexType> |
| <sequence minOccurs="1" maxOccurs="unbounded"> |
| <element ref="provider"/> |
| </sequence> |
| <attribute name="point" type="string" use="required"> |
| <annotation> |
| <documentation> |
| |
| </documentation> |
| </annotation> |
| </attribute> |
| <attribute name="id" type="string"> |
| <annotation> |
| <documentation> |
| |
| </documentation> |
| </annotation> |
| </attribute> |
| <attribute name="name" type="string"> |
| <annotation> |
| <documentation> |
| |
| </documentation> |
| <appinfo> |
| <meta.attribute translatable="true"/> |
| </appinfo> |
| </annotation> |
| </attribute> |
| </complexType> |
| </element> |
| |
| <element name="provider"> |
| <complexType> |
| <attribute name="id" type="string" use="required"> |
| <annotation> |
| <documentation> |
| specifies a unique identifier for this launch provider. |
| </documentation> |
| </annotation> |
| </attribute> |
| <attribute name="type" type="string" use="required"> |
| <annotation> |
| <documentation> |
| specifies the profiling type of this launch provider. |
| </documentation> |
| </annotation> |
| </attribute> |
| <attribute name="shortcut" type="string" use="required"> |
| <annotation> |
| <documentation> |
| specifies the fully qualified name of the Java class that extends <code>ProfileLaunchShortcut</code> and that will provide a launch for profiling. |
| </documentation> |
| <appinfo> |
| <meta.attribute kind="java" basedOn="org.eclipse.linuxtools.profiling.launch.ProfileLaunchShortcut:"/> |
| </appinfo> |
| </annotation> |
| </attribute> |
| <attribute name="tabgroup" type="string" use="required"> |
| <annotation> |
| <documentation> |
| specifies the fully qualified name of a Java class that implements <code>ProfileLaunchConfigurationTabGroup</code> and that will provide a set of tabs. |
| </documentation> |
| <appinfo> |
| <meta.attribute kind="java" basedOn="org.eclipse.linuxtools.profiling.launch.ProfileLaunchConfigurationTabGroup:"/> |
| </appinfo> |
| </annotation> |
| </attribute> |
| <attribute name="priority" type="string" use="required"> |
| <annotation> |
| <documentation> |
| positive integer specifying priority over launch provider's of the same type. |
| Invalid values will be assigned the lowest priority to the extension. |
| </documentation> |
| </annotation> |
| </attribute> |
| <attribute name="delegate" type="string" use="required"> |
| <annotation> |
| <documentation> |
| specifies the fully qualified name of the Java class that extends <code>AbstractCLaunchDelegate</code> and provides a launch delegate for profiling. |
| </documentation> |
| <appinfo> |
| <meta.attribute kind="java" basedOn="org.eclipse.cdt.launch.AbstractCLaunchDelegate:"/> |
| </appinfo> |
| </annotation> |
| </attribute> |
| <attribute name="name" type="string" use="required"> |
| <annotation> |
| <documentation> |
| specifies a human-readable name for this launch provider. |
| </documentation> |
| </annotation> |
| </attribute> |
| <attribute name="description" type="string"> |
| <annotation> |
| <documentation> |
| specifies a human-readable description of launch provider to be used in the preferences tool tip information. |
| </documentation> |
| </annotation> |
| </attribute> |
| <attribute name="information" type="string"> |
| <annotation> |
| <documentation> |
| specifies additional plug-in specific information to be displayed in the preferences page. |
| </documentation> |
| </annotation> |
| </attribute> |
| </complexType> |
| </element> |
| |
| <annotation> |
| <appinfo> |
| <meta.section type="since"/> |
| </appinfo> |
| <documentation> |
| 1.1.0 |
| </documentation> |
| </annotation> |
| |
| <annotation> |
| <appinfo> |
| <meta.section type="examples"/> |
| </appinfo> |
| <documentation> |
| The following is an example of a launch provider extension point: |
| |
| <extension |
| point="org.eclipse.linuxtools.profiling.launch.launchProvider"> |
| <provider |
| id="com.example.perf.provider" |
| delegate="com.example.perf.launch.PerfLaunchConfigDelegate" |
| shortcut="com.example.perf.launch.PerfLaunchShortcut" |
| tabgroup="com.example.perf.launch.PerfLaunchConfigurationTabGroup" |
| priority="1" |
| type="timing" |
| name="Perf" |
| description="Hardware/Software Events Timing" |
| information="Note: does not require set-up or special compilation."> |
| </provider> |
| </extension> |
| |
| In the above example, the contributed launch provider will become available as a tool for the "Profile Timing" launch shortcut (accessible from the “Profile As” context menu), |
| preferences page and project properties page. Furthermore, this tool will be set as the default for the specified type as a result of setting its priority to 1. In addition, the tool's |
| launch configuration will be available under the "Profiling Time" launch configuration category. Here the specified tab group will be used to provide an interface for configuring |
| tool specific settings. |
| </documentation> |
| </annotation> |
| |
| <annotation> |
| <appinfo> |
| <meta.section type="apiinfo"/> |
| </appinfo> |
| <documentation> |
| Plug-ins that want to extend this extension point must make use of : <samp>org.eclipse.linuxtools.profiling.launch.ProfileLaunchShortcut</samp> |
| </documentation> |
| </annotation> |
| |
| |
| <annotation> |
| <appinfo> |
| <meta.section type="copyright"/> |
| </appinfo> |
| <documentation> |
| Copyright (c) 2012 Red Hat, Inc. |
| All rights reserved. This program and the accompanying materials |
| are made available under the terms of the Eclipse Public License v1.0 |
| which accompanies this distribution, and is available at |
| http://www.eclipse.org/legal/epl-v10.html |
| |
| Contributors: |
| Roland Grunberg <rgrunber@redhat.com> - initial API and implementation |
| </documentation> |
| </annotation> |
| |
| </schema> |