Main Page | Alphabetical List | Data Structures | Directories | File List | Data Fields | Globals

IpcHost.h

Go to the documentation of this file.
00001 /** 
00002  *  @file   IpcHost.h
00003  *
00004  *  @brief  This file contains APIs and defines that are used by applications
00005  *          only on the host-side of the device.
00006  *
00007  *
00008  *  @ver        02.00.00.68_beta1
00009  *  
00010  *  ============================================================================
00011  *  
00012  *  Copyright (c) 2008-2009, Texas Instruments Incorporated
00013  *
00014  *  Redistribution and use in source and binary forms, with or without
00015  *  modification, are permitted provided that the following conditions
00016  *  are met:
00017  *  
00018  *  *  Redistributions of source code must retain the above copyright
00019  *     notice, this list of conditions and the following disclaimer.
00020  *  
00021  *  *  Redistributions in binary form must reproduce the above copyright
00022  *     notice, this list of conditions and the following disclaimer in the
00023  *     documentation and/or other materials provided with the distribution.
00024  *  
00025  *  *  Neither the name of Texas Instruments Incorporated nor the names of
00026  *     its contributors may be used to endorse or promote products derived
00027  *     from this software without specific prior written permission.
00028  *  
00029  *  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00030  *  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
00031  *  THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00032  *  PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00033  *  CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00034  *  EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00035  *  PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00036  *  OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00037  *  WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00038  *  OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00039  *  EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00040  *  Contact information for paper mail:
00041  *  Texas Instruments
00042  *  Post Office Box 655303
00043  *  Dallas, Texas 75265
00044  *  Contact information: 
00045  *  http://www-k.ext.ti.com/sc/technical-support/product-information-centers.htm?
00046  *  DCMP=TIHomeTracking&HQS=Other+OT+home_d_contact
00047  *  ============================================================================
00048  *  
00049  */
00050 
00051 
00052 #ifndef _IPCHOST_H__
00053 #define _IPCHOST_H__
00054 
00055 
00056 #if defined (__cplusplus)
00057 extern "C" {
00058 #endif
00059 
00060 
00061 /* =============================================================================
00062  * Macros
00063  * =============================================================================
00064  */
00065 /*!
00066  *  @brief  Control command ID for load callback. This command should be used
00067  *          with #Ipc_control function before using IPC with the slave, and
00068  *          after loading the slave with the slave executable. When ProcMgr is
00069  *          used, this command should be used after loading the slave execution.
00070  *
00071  *  @sa     Ipc_control
00072  */
00073 #define Ipc_CONTROLCMD_LOADCALLBACK  (0xBABE0000)
00074 
00075 /*!
00076  *  @brief  Control command ID for start callback. This command should be used
00077  *          with #Ipc_control function before using IPC with the slave, and
00078  *          when the slave is in running state. When ProcMgr is used, this
00079  *          command should be used after starting the slave execution.
00080  *
00081  *  @sa     Ipc_control
00082  */
00083 #define Ipc_CONTROLCMD_STARTCALLBACK (0xBABE0001)
00084 
00085 /*!
00086  *  @brief  Control command ID for stop callback. This command should be used
00087  *          with #Ipc_control function when IPC no longer needs to be performed
00088  *          with the specific slave. When ProcMgr is used, this command should
00089  *          be used just before stopping the slave execution.
00090  *
00091  *  @sa     Ipc_control
00092  */
00093 #define Ipc_CONTROLCMD_STOPCALLBACK  (0xBABE0002)
00094 
00095 
00096 /* =============================================================================
00097  * APIs
00098  * =============================================================================
00099  */
00100 /*!
00101  *  @brief      Function to perform control operations for IPC with a specific
00102  *              slave.
00103  *
00104  *  @param      procId  Remote processor ID
00105  *  @param      cmdId   Command ID
00106  *  @param      arg     Argument
00107  */
00108 Int Ipc_control (UInt16 procId, Int32 cmdId, Ptr arg);
00109 
00110 
00111 #if defined (__cplusplus)
00112 }
00113 #endif /* defined (__cplusplus) */
00114 
00115 
00116 #endif /* _IPCHOST_H__ */

Generated on Mon Mar 14 11:59:45 2011 for Syslink by  doxygen 1.4.4