# "featureName" property - name of the feature
featureName=PTP External Tools Framework TAU Extension

# "providerName" property - name of the company that provides the feature
providerName=Eclipse PTP

# "description" property - description of the feature
description=Extends the external tools framework with capabilities specific\n\
to the TAU performance analysis system.\n\
org.eclipse.ptp.etfw.tau: Adds the core GUI and operational features\n\
required by TAU to the performance framework.\n\
org.eclipse.ptp.etfw.tau.jars: Contains the jar files required\n\
by the perfdmf plugin.\n\
org.eclipse.ptp.etfw.tau.papiselect: Provides an interface for\n\
selecting PAPI hardware performance counters.\n\
org.eclipse.ptp.etfw.tau.perfdmf: Provides perfdmf performance\n\
database integration with Eclipse, including the ability to launch\n\
ParaProf from Eclipse and call back from ParaProf to source code\n\
in Eclipse.\n\
org.eclipse.ptp.tau.selinst: Selective instrumentation functionality\n\
for C/C++\n

# copyright
copyright=\
Copyright (c) 1997-2008\n\
   Department of Computer and Information Science, University of Oregon\n\
   Advanced Computing Laboratory, Los Alamos National Laboratory\n\
   Research Center Juelich, ZAM Germany	\n\
\n\
All rights reserved. This program and the accompanying materials\n\
are made available under the terms of the Eclipse Public License v1.0\n\
which accompanies this distribution, and is available at\n\
http://www.eclipse.org/legal/epl-v10.html\n
