<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
    <title>Target Communication Framework</title>
</head>
<body>
<h1>Target Communication Framework </h1>

<p>Copyright (c) 2007, 2008 Wind River Systems, Inc. and others. Made available under the EPL v1.0
(Agent portion made available under your choice of EPL v1.0 or EDL v1.0 dual-license).
<p>Direct comments, questions to the <a href="https://dev.eclipse.org/mailman/listinfo/tcf-dev">tcf-dev@eclipse.org</a> mailing list

<h2>Available Documentation</h2>

<table border=1 cellpadding=8>
    <tr>
        <td><a href='TCF Project.html'>TCF Project Overview</a>
        <td width=500>TCF project goals and results
    <tr>
        <td><a href='TCF Getting Started.html'>TCF: Getting Started</a>
        <td width=500>Getting started with TCF - creating Eclipse workspace, building agent, making a first connection
    <tr>
        <td><a href='TCF Specification.html'>TCF Specifications</a>
        <td width=500>Design goals, requirements and format of TCF communication protocol,
        framework API and software design considerations
    <tr>
        <td><a href='TCF Services.html'>TCF Services Definitions</a>
        <td width=500>TCF communication model is based on the idea of services.
        A service is a group of related commands, events and semantics.
        New services are expected to be defined by developers of tools and target agents.
        To achieve certain level of compatibility of tools/targets TCF inclides definitions
        of common services
    <tr>
        <td><a href='TCF Context Identifier Explanation.html'>TCF Context Identifier Explanation</a>
        <td width=500>Most if not all TCF services functions need some way to identify what entity e.g. process,
        thread, task, device on JTAG scan chain, etc they should operate on.
        To do this TCF uses a context identifier (aka ContextId). This document is attempting to explain how
        ContextIds are intended to be used
    <tr>
        <td><a href='TCF Linux Agent Prototype.html'>TCF Agent Prototype</a>
        <td width=500>
        Brief description of the TCF target agent prototype implementation
    <tr>
        <td>
        <a href='TCF Agent Porting Guide.html'>TCF Agent Porting Guide</a>
        <td width='500'>A guide for porting and customizing TCF agent code
    <tr>
        <td>
        <a href='TCF_UDP_Discovery.html'>TCF UDP Discovery</a>
        <td width='500'>TCF UDP Discovery protocol specifications
        <tr>
        <td>
                <a href='TCF Lua Integration.html'>TCF Lua Integration</a>
        <td width='500'>Using Lua programming language with TCF
</table>

</body>
</html>
