diff --git a/core/org.eclipse.cdt.core/plugin.properties b/core/org.eclipse.cdt.core/plugin.properties index 25990122465..302e7cfcb66 100644 --- a/core/org.eclipse.cdt.core/plugin.properties +++ b/core/org.eclipse.cdt.core/plugin.properties @@ -9,6 +9,7 @@ CBuildCommand.name=C Builder Command CBuildConsole.name=C Builder Console CProjectInfo.name=C Project Info CBuilder.name=C Build Model +ProcessList.name=Process List makeprojectowner.name=Make Project genericmake.name=Generic Make diff --git a/core/org.eclipse.cdt.core/plugin.xml b/core/org.eclipse.cdt.core/plugin.xml index 84145696bac..3713575919d 100644 --- a/core/org.eclipse.cdt.core/plugin.xml +++ b/core/org.eclipse.cdt.core/plugin.xml @@ -15,13 +15,11 @@ - - @@ -30,6 +28,7 @@ + - + + + + + + + + [Enter description of this extension point] + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + [Enter extension point usage example here.] + + + + + + + + + [Enter API information here.] + + + + + + + + + [Enter information about supplied implementation of this extension point.] + + + + + + + + + + + + + diff --git a/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/CCorePlugin.java b/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/CCorePlugin.java index ffd3fe3d6e0..19d08ac24b0 100644 --- a/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/CCorePlugin.java +++ b/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/CCorePlugin.java @@ -320,4 +320,20 @@ public class CCorePlugin extends Plugin { System.arraycopy(extensions, 0, builders, 0, extensions.length); return builders; } + + public IProcessList getProcessList() { + IExtensionPoint extension = getDescriptor().getExtensionPoint("ProcessList"); + if (extension != null) { + IExtension[] extensions = extension.getExtensions(); + IConfigurationElement [] configElements = extensions[0].getConfigurationElements(); + if ( configElements.length != 0 ) { + try { + return (IProcessList) configElements[0].createExecutableExtension("class"); + } + catch (CoreException e) { + } + } + } + return null; + } } diff --git a/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/IProcessInfo.java b/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/IProcessInfo.java new file mode 100644 index 00000000000..d4714770dd9 --- /dev/null +++ b/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/IProcessInfo.java @@ -0,0 +1,10 @@ +/* + * (c) Copyright QNX Software System Ltd. 2002. + * All Rights Reserved. + */ +package org.eclipse.cdt.core; + +public interface IProcessInfo { + public int getPid(); + public String getName(); +} diff --git a/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/IProcessList.java b/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/IProcessList.java new file mode 100644 index 00000000000..e9d1a02d32d --- /dev/null +++ b/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/IProcessList.java @@ -0,0 +1,9 @@ +/* + * (c) Copyright QNX Software System Ltd. 2002. + * All Rights Reserved. + */ +package org.eclipse.cdt.core; + +public interface IProcessList { + public IProcessInfo[] getProcessList(); +}