code: private List<IDebugTarget> collectTargets(IProcess process)
  	{
  		ILaunchManager launchManager = DebugPlugin.getDefault().getLaunchManager();
  		ILaunch[] launches = launchManager.getLaunches();
  		List<IDebugTarget> targets = new ArrayList<IDebugTarget>();
  		for (int i = 0; i < launches.length; i++)
  		{
  			ILaunch launch = launches[i];
  			IProcess[] processes = launch.getProcesses();
  			for (int j = 0; j < processes.length; j++)
  			{
  				IProcess process2 = processes[j];
  				if (process2.equals(process))
  				{
  					IDebugTarget[] debugTargets = launch.getDebugTargets();
  					for (int k = 0; k < debugTargets.length; k++)
  					{
  						targets.add(debugTargets[k]);
  					}
  					return targets; // all possible targets have been terminated for the launch.
  				}
  			}
  		}
  		return targets;
  	}
docs: Collects targets associated with a process.
  
  @param process
  the process to collect {@link IDebugTarget}s for
  @return associated targets