📄 ad.h
字号:
/****************************************************************************
*****************************************************************************
**
** File Name
** ---------
**
** AD.H
**
*****************************************************************************
*****************************************************************************
**
** Description
** -----------
**
** Public interface definitions for the Application Data Area manager.
**
** The Application Data Area manager works closely with the Buffer Fragment
** Mapper (BF) to copy both class 1 real time data and messaging data
** between application data areas and the communications buffers.
**
** The Buffer Fragment Mapper is responsible for maintaining the
** entries that map a network object class/instance to an application
** data area, generally a physical location in memory. These mapping
** entries are used for directing both class 1 real time data and
** messaging requests to the appropriate area of application data.
**
** The Application Data Area manager is responsible for defining where
** each application data area is located in physical memory and for
** enforcing the appropriate access rules to the application data.
** The BF notifies the AD when there is data to move, and it is up to
** the AD to do the actual moves.
**
*****************************************************************************
*****************************************************************************
**
** Source Change Indices
** ---------------------
**
** Porting: <none>--2--<major> Customization: <none>--2--<major>
**
*****************************************************************************
*****************************************************************************
**
** Services List
** -------------
**
** AD_Init() - Initialization
**
*****************************************************************************
*****************************************************************************
** **
** ETHERNET/IP EXAMPLE CODE **
** COPYRIGHT (c) 2000-2005 ODVA (Open DeviceNet Vendor Association) **
** & ControlNet International Ltd. **
** **
** All rights reserved, except as specifically licensed in writing. **
** Use of the Ethernet/IP Example Protocol Software is subject to **
** ODVA's and ControlNet International's Terms of Use Agreement. **
** The following work constitutes example program code and is intended **
** merely to illustrate useful programming techniques. The user is **
** responsible for applying the code correctly. The code is provided **
** AS IS without warranty and is in no way guaranteed to be error-free. **
** **
*****************************************************************************
*****************************************************************************
*/
/****************************************************************************
*****************************************************************************
**
** Change Log
** ----------
**
**
*****************************************************************************
****************************************************************************/
#ifndef AD_H
#define AD_H
/****************************************************************************
*****************************************************************************
**
** Network object interface - Constants
**
*****************************************************************************
****************************************************************************/
/* None defined */
/****************************************************************************
*****************************************************************************
**
** Network object interface - Packets
**
*****************************************************************************
****************************************************************************/
/* None defined */
/****************************************************************************
*****************************************************************************
**
** Public internal object interface - Constants
**
*****************************************************************************
****************************************************************************/
/****************************************************************************
*****************************************************************************
**
** Public internal object interface - Enums
**
*****************************************************************************
****************************************************************************/
/*---------------------------------------------------------------------------
**
** AD_AppDataAreaIdType
**
** Application data area identifiers.
** Includes total number of areas defined & special no-area identifier.
**
**---------------------------------------------------------------------------
*/
typedef enum AD_AppDataAreaIdType
{
/*********************************************************************/
/*** PORTING ALERT! ***/
/*** ADJUST QUANTITY AND LIST OF APPLICATION DATA AREA IDENTIFIERS ***/
/*********************************************************************/
/*#ifdef AD_GENERIC_AREAS
** AD_APP_DATA_AREA_R,
** AD_APP_DATA_AREA_W,
** AD_APP_DATA_AREA_WR,
**#endif
**#ifdef SCNR_1747
** AD_APP_DATA_AREA_O_R,
** AD_APP_DATA_AREA_O_W,
** AD_APP_DATA_AREA_I_R,
** AD_APP_DATA_AREA_I_W,
** AD_APP_DATA_AREA_M0_R,
** AD_APP_DATA_AREA_M0_W,
** AD_APP_DATA_AREA_M1_R,
** AD_APP_DATA_AREA_M1_W,
** AD_APP_DATA_AREA_DATA_R,
** AD_APP_DATA_AREA_DATA_W,
** AD_APP_DATA_AREA_O,
** AD_APP_DATA_AREA_I,
** AD_APP_DATA_AREA_M0,
** AD_APP_DATA_AREA_M1,
** AD_APP_DATA_AREA_DATABASE,
**#endif
**#if AD_ONE_GENERIC_AREA
** AD_APP_DATA_AREA_PRO,
** AD_APP_DATA_AREA_CON = AD_APP_DATA_AREA_PRO,
**#endif
**#if AD_TWO_GENERIC_AREAS
** AD_APP_DATA_AREA_PRO,
** AD_APP_DATA_AREA_CON,
**#endif
*/
AD_APP_DATA_AREA_EC_BASE,
AD_APP_DATA_AREA_EC_1,
AD_APP_DATA_AREA_EC_2,
AD_APP_DATA_AREA_EC_3,
AD_APP_DATA_AREA_EC_4,
AD_APP_DATA_AREA_EC_5,
AD_APP_DATA_AREA_EC_6,
AD_APP_DATA_AREA_EC_7,
AD_APP_DATA_AREA_EC_8,
AD_APP_DATA_AREA_EC_9,
AD_APP_DATA_AREA_EC_10,
AD_APP_DATA_AREA_EC_TOP,
AD_NUM_APP_DATA_AREAS,
AD_NO_APP_DATA_AREA = 0xFF
}
AD_AppDataAreaIdType;
/****************************************************************************
*****************************************************************************
**
** Public internal object interface - Structures
**
*****************************************************************************
****************************************************************************/
/* None defined */
/****************************************************************************
*****************************************************************************
**
** Public internal object interface - Tribbles
**
*****************************************************************************
****************************************************************************/
/* None defined */
/****************************************************************************
*****************************************************************************
**
** Public internal object interface - Globals
**
*****************************************************************************
****************************************************************************/
/*
** Task request queue id.
*/
extern GS_MsgQueueType AD_xQid;
/****************************************************************************
*****************************************************************************
**
** Public internal object interface - Services
**
*****************************************************************************
****************************************************************************/
/*---------------------------------------------------------------------------
**
** AD_Init()
**
** Initialization.
**
**---------------------------------------------------------------------------
**
** Inputs:
** iOptions - Bit mask of initialization options
**
** Outputs:
** Return - Success/failure of operation
**
** Usage:
** eStatus = AD_Init( AB_COLD_START_RESOURCE );
**
**---------------------------------------------------------------------------
*/
EXTFUNC StatusType AD_Init( UINT16 iOptions );
#endif /* inclusion lock */
/****************************************************************************
*****************************************************************************
**
** End of AD.H
**
*****************************************************************************
****************************************************************************/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -