/*=======0=========1=========2=========3=========4=========5=========6=========7=========8=========9=========0=========1====*/
/**
\mainpage Overview

The software component <b>MyComponent</b> is a simple example project that shows the usage of the software component views
available in the Keil MDK.  Using the methods exemplified in this project, the MDK debugger can:
  - Display status information derived from static variables in the component.
  - Show events that occur during operation of the component.

<b>MyComponent</b> implements a data transfer using the functions \ref MyComp_initialize, \ref MyComp_send, and
\ref MyComp_receive. During operation, the component calls \ref evnt_func "event functions" that provide event data for
recording by the Event Recorder.

\image html MyComponent.png "MyComponent program structure"

By utilizing the related *.SVCD file for <b>MyComponent</b>, the MDK Debugger displays the execution status (derived from
static variables) and event information (derived from recorded events) as shown below. As software components are frequently
a "black box" to the application programmer, this type of information is a great help during development.

\image html MyComponentStatusAndEvents.png "Execution Status and Event Information"

For more information, refer to the
<a href="http://www.keil.com/pack/doc/compiler/EventRecorder/html/index.html">Event Recorder</a> documentation.

This documentation is the user view of <b>MyComponent</b>. Refer to <b>Event Recorder - Example Projects - MyComponent</b>
for details about generating event annotations and *.SVCD files for a software component.
*/


/**
\defgroup MyComp_api MyComponent API
\brief Functions of Application Programming Interface 

@{ 
\details 
The software component <b>MyComponent</b> demonstrates the usage of the Software Component Views in
the MDK Debugger.  The component implements a simple data transfer using a send and receive function.

\fn void MyComp_initialize (void)
\details
Initialize the internal structures of the component <b>MyComponent</b>.

The function is annotated with the following debug events:
  - \ref EvrMyCo_InitEntry
  - \ref EvrMyCo_InitStatus

\fn void MyComp_send (char* str)
\details
Send a data string via the component <b>MyComponent</b>.

The function is annotated with the following debug events:
  - \ref EvrMyCo_SendNoData
  - \ref EvrMyCo_SendComplete
  - \ref EvrMyCo_SendFailed

\fn void MyComp_receive (char* str)
\details 
Receive a data string via the component <b>MyComponent</b>.

The function is annotated with the following debug events:
  - \ref EvrMyCo_ReceiveNoData
  - \ref EvrMyCo_ReceiveComplete
  - \ref EvrMyCo_ReceiveFailed

@}
*/
