📄 icapi.h
字号:
/* SPECTRUM: C txt off * Copyright (C) Siemens AG 1992 All Rights Reserved.Confidential * description * * $Id: icapi.h,v 1.000.1.43 1997/11/24 15:24:28 sbecchet Exp $ * * $NewRev$ * $NewRevEnd$ * * $Log: icapi.h,v $ * * Revision 07/31/02 Add icDefineLinkEx, icStartRemoteEx and icIncRemArOnLinkDown * Revision 06/11/01 Add global icEnableApTitleCheck - default to false; * Revision 06/05/01 Add uDsTsReportOut for general use * Revision 03/13/01 Add icFindServerVariable nav * Revision 11/27/00 Add uReceiveDsTsRpt global function pointer; Add icDataValuesChanged prototype; * Revision 06/06/00 Additions for AXS4ICCP (add chan to client read/write conf) * Revision 05/23/00 Add IC_CHANNEL_NOT_IDLE return code * Revision 05/22/00 Add icGetDataSetNames * Revision 05/03/00 additions for AX-S4 ICCP Statistics * Revision 02/04/00 add icIdentify, add EventHandlers for NT by nav @ sisco * Revision 04/14/99 add corrections to power plant objects by nav @ sisco * Revision 03/15/99 add search routine prototypes & icDefineClientDevEx by nav @ sisco * Revision 03/05/99 add AXS4ICCP check by nav @ sisco * Revision 07/23/98 add icUnDefineRemote prototype by nav @ sisco * Revision 05/20/98 use only toolkit types by nav @ sisco * Revision 05/14/98 add icReDefineRemote prototype by nav @ sisco * Revision 05/13/98 add icWriteVariableEx prototype by nav @ sisco * Revision 04/13/98 add StructPadding back to icTypeAccountHeader by nav @ sisco * Revision 04/09/98 modify icControlTransferGroup prototype by nav @ sisco * * Revision 1.000.1.43 1997/11/24 15:24:28 sbecchet * Add error code for: * Max. MMS message size too big. EMP14513 * * Revision 1.000.1.42 1997/11/24 13:50:40 sbecchet * Remove RequestId from General Data Report object. EMP14660 * * Revision 1.000.1.41 1997/11/06 22:04:39 sbecchet * Remove IC_MMS_MAX_MSGSIZE - not used. EMP14513 * * Revision 1.000.1.40 1997/10/31 21:07:52 rwoodruf * Add status values, typedefs and prototypes for Block 5 tagging * feature. EMP14356 * * Revision 1.000.1.39 1997/10/20 23:08:38 sbecchet * Add more changes for new ICCP Block 4 and Block 8. EMP14325 * * Revision 1.000.1.38 1997/10/10 21:13:22 rwoodruf * Change IC_MIN_BUFFER_INTERVAL from 1 to 0. EMP13964 * * Revision 1.000.1.37 1997/09/19 20:06:41 rwoodruf * Redefine IC_DST_READ_FAIL and IC_DST_WRITE_FAIL. EMP12035 * * Revision 1.000.1.36 1997/09/12 12:28:36 sbecchet * New ICCP Block 4 and Block 8 functionality. * Final changes before release code cut-off. EMP13388 * * Revision 1.000.1.35 1997/09/03 16:43:34 nancyl * Changes needed to allow ICCP code to be merged into Vienna base * EMP13971 * * Revision 1.000.1.34 1997/09/02 18:01:21 sbecchet * More ICCP new Block 4/Block 8 interface changes. EMP13388 * * Revision 1.000.1.33 1997/08/26 17:20:49 sbecchet * EMP13388 * * Revision 1.000.1.32 1997/08/13 20:27:13 rwoodruf * Add prototype for icDefineDomainNames function. EMP13897 * * Revision 1.000.1.31 1997/06/27 22:24:35 shri * Added macros IC_CRITICAL_TIMEOUT & IC_CRITICAL_NOT_ARRIVED EMP13291 * * Revision 1.000.1.30 1997/06/20 19:11:56 sbecchet * Add new ICCP Block 4 and Block 8 functionality EMP13388 * * Revision 1.000.1.29 1997/05/28 20:50:46 shri * Corrected minor typo EMP13185 * * Revision 1.000.1.28 1997/05/28 16:19:41 shri * Added icDefineLink2 function prototype for Transmit Queue Full fix * EMP13185 * * Revision 1.000.1.27 1997/05/01 15:32:19 rwoodruf * Add prototype for icControlTransferGroup. EMP11732 * * Revision 1.000.1.26 1997/04/18 21:48:30 shri * Multi-threading implementation changes EMP12885 * * Revision 1.000.1.25 1997/03/25 23:33:18 shri * NT Changes EMP12684 * * Revision 1.000.1.24 1996/10/17 20:18:42 rwoodruf * Block 5 corrections. EMP10962 * * Revision 1.000.1.23 1996/10/15 00:47:08 kevinr * EMP10968 * removed reference to sys/time.h. Appears to be unneeded and * simplifies port to NT. * * Revision 1.000.1.22 1996/10/14 21:39:06 dnikolic * Added some header files in order to have correct prototype for std. * functions EMP10959 * * Revision 1.000.1.21 1996/10/14 20:32:38 rwoodruf * Upgrade ICCP Block 5 to level "1996-08". EMP10962 * * Revision 1.000.1.20 1996/10/07 19:51:36 dnikolic * Added constants for errors and switches to be used with periodic * offset and start time. EMP7722 * * Revision 1.000.1.19 1996/09/30 19:29:47 bjmao * ICCP Block 8 Version 1996-08 update. EMP10569 * * Revision 1.000.1.18 1996/09/11 00:16:46 kevinr * EMP10251 * Moved prototype of icInitializeErrorCallback from icapi.c to here. * Corrected spelling of prototype for icInitializeAPI. Moved entire * contents of icb5api.h file to this include file. * * Revision 1.000.1.17 1996/08/29 20:19:35 dnikolic * Deleted function prototype for icDefineLocal tha was depending from * #ifdef DEBUG_MMS_LOG1. EMP10028 * * Revision 1.000.1.16 1996/08/28 21:44:28 dnikolic * Modified icErrorMessage struct to take value instead of pointers for * icRemoteId and icLinkId. EMP10027 * * Revision 1.000.1.15 1996/08/26 18:28:23 dnikolic * EMP10027 * * Revision 1.000.1.14 1996/08/26 16:02:45 dnikolic * Added extra error codes for use with error callback function. * Declared typedef data type for information to be passed in * errorcallback function. EMP10027 * * Revision 1.000.1.13 1996/07/15 16:45:46 dnikolic * Changed prototype for icDefineLocalFeatures to reflect change made in * function EMP9394 * * Revision 1.000.1.12 1996/06/28 19:30:52 rwoodruf * Upgrade ICCP SDK Block 8 processing for versions 6.0 and 1996_06. * EMP8859 * * Revision 1.000.1.11 1996/06/19 14:18:33 rwoodruf * Upgrade ICCP SDK for versions 6.0 and 1996_06. EMP8859 * * Revision 1.000.1.10 1996/05/31 14:11:59 bjmao * Correct the first parameter of icDefineLocalFeatures. EMP8551 * * Revision 1.000.1.09 1996/05/29 22:04:22 bjmao * Add API call icDefineLocalFeatures. EMP8551 * * Revision 1.000.1.08 1996/05/13 16:29:27 bjmao * Add couple new return codes. EMP8020 * * Revision 1.000.1.07 1996/05/08 20:56:43 bjmao * Add return status code for Block 4 and Block 8. EMP8020 * * Revision 1.000.1.06 1996/04/25 16:03:53 bjmao * Add comment about IC_DST_DEF_FAIL and IC_DST_WRITE_FAIL. EMP8020 * * Revision 1.000.1.05 1996/04/12 17:04:47 bjmao * Add in Block 5 types, correct TDL for icTypeReal, * icTypeState, icTypeStateQ, and icTypeDiscrete. * Correct Block 4 info message header name, * Addition for ICCP Verions 6.0. EMP7684 * Add Block 5 types. * * Revision 1.000.1.04 1996/03/06 14:39:13 bjmao * Addition for ICCP Block 4 and Block 8 functions. EMP7086 * * Revision 1.000.1.03 1995/12/04 20:59:55 bjmao * Upgrade to use MMAEASE AIX4.1. EMP6055 * * Revision 1.000.1.02 1995/11/28 14:48:22 sbecchet * Upgrade ICCP Data Link for ES 3.2 EMP6020 * * Revision 1.000.1.01 1995/09/19 21:09:09 psitz * EMP4310 * Correct improperly terminated comment. * * Revision 1.000.1.00 1995/09/08 19:17:17 bjmao * -- revision created by srcinit -- EMP4848 * * Revision 1.000 1995/09/08 19:17:16 bjmao * Initial revision EMP4848 * * $Logend$ * txt on- */ /*-*/#ifndef _ICAPI_H_#define _ICAPI_H_/* ---------------------------------------------------------- I C C P S D K A P I ---------------------------------------------------------- */#include <string.h>#include <stdlib.h>#include <stdio.h>#include <time.h>/* SISCO_START */#include "glbtypes.h"#include "mms_pvmd.h"/* SISCO_END */#if SPEC_SUBSYSTEM_TREE#include <base/mnmainloop_c.h>#else /* SPEC_SUBSYSTEM_TREE */#ifdef _WIN32#define SISCO_THREADS#endif#include "mnmainlp.h"#endif /* SPEC_SUBSYSTEM_TREE *//* SISCO_START */#if defined (POWERICCP) || defined (AXS4ICCP)#define gettimeofday icGetTimeOfDay#endif/* SISCO_END *//* -- Trace enable and level indictators -- Tracing debug output via MMS-EASE's 'slog' facility is possible by setting an environment variable to enable tracing AND specify the desired level ( 0 - N ), indicated by define's IC_TRACE_MIN and IC_TRACE_MAX For example, to enable debug tracing to 'slog' for debug levels of 4 and lower (i.e. all debug traces from 0 to 4 are enabled) do the following at the shell (ksh) prompt: $> export IC_TRACE_LEVEL=4 */#define IC_TRACE_ENV_VARIABLE "IC_TRACE_LEVEL"#define IC_TRACE_MIN 0 #define IC_TRACE_MAX 10#define IC_NO_LOG 0#define IC_TRACE_LOG 1#define IC_USER_LOG 2#define IC_SPECTRUM_LOG 3/* -- ICCP Versions */#define ICCP_VERSION_50 "5.0" /* the Feb-95 interop version, allow client create VMD DataSets */#define ICCP_VERSION_51 "5.1" /* only DOM data set can be created */#define ICCP_VERSION_51CDV "5.1CDV" /* 5.1 + use of 'TASE2_Version' */#define ICCP_VERSION_52 "5.2" /* 5.1 + preliminary Blk 4 and 8 */#define ICCP_VERSION_52CDV "5.2CDV" /* 5.2 + use of 'TASE2_Version' */#define ICCP_VERSION_60 "6.0" /* 6.0 + use of 'TASE2_Version' */#define ICCP_VERSION_1996_04 "1996-04" /* Version 6.0 */#define ICCP_VERSION_1996_08 "1996-08" /* Version 1996-08 *//* -- Return status codes -- */#define IC_OK 0 #define IC_FAIL 1#define IC_LOCAL_REDEFINED 2#define IC_REMOTE_MAX_DEFINED 3#define IC_LINK_MAX_DEFINED 4#define IC_MK_ASN1_TYPE_FAIL 5#define IC_ADD_NAMED_TYPE_FAIL 6#define IC_LOCAL_NOT_DEFINED 7#define IC_REMOTE_NOT_DEFINED 8#define IC_MMS_START_FAIL 9 #define IC_NEW_VARIABLE_ON_ACTIVE_REMOTE 10#define IC_NEW_TRANSFERGROUP_ON_ACTIVE_REMOTE 11#define IC_BLT_MISMATCH_ASN1_VALUE_AND_TYPE 12 #define IC_DUPLICATE_OBJECT 13 #define IC_API_NOT_OPENED 14 #define IC_API_ALREADY_OPENED 15#define IC_INVALID_TYPEID 16#define IC_INVALID_VARIABLEID 17#define IC_INVALID_LINKID 18#define IC_INVALID_REMOTEID 19/* Error code for icDefineTransferGroup if periodic offset > interval */#define IC_INVALID_PERIODIC_OFFSET -1#define IC_INVALID_PERIODIC_INTERVAL -2#define IC_INVALID_INTEGRITY_INTERVAL -3/* Flag which indicates that periodic offset is off */#define IC_OFFSET_OFF -1/* Status values for callbacks on variable Read/Write *//* IC_OK (as above) */#define IC_UNKNOWN_VARIABLE 20#define IC_NO_READ_PERMISSION 21#define IC_NO_WRITE_PERMISSION 22#define IC_VARIABLE_NOT_EXCEPTION_DATASET 23#define IC_REMOTE_NOT_ACTIVE 24#define IC_LINK_NOT_ACTIVE 25#define IC_REQUEST_TIMEOUT 26#define IC_MISSING_WRITE_CALLBACK 27 #define IC_MISSING_READ_CALLBACK 28#define IC_MISSING_WRITECONFIRM_CALLBACK 29#define IC_MISSING_READCONFIRM_CALLBACK 30#define IC_TRANSFERGROUP_MAX_DEFINED 31#define IC_VARIABLE_WRITE_ERROR 32#define IC_VARIABLE_READ_ERROR 33#define IC_BAD_CALLBACKS 34#define IC_BAD_SCOPE 35#define IC_MALLOC_FAIL 36#define IC_FIND_NAMED_TYPE_FAIL 37#define IC_TYPE_NOT_ICCP 38#define IC_SUPPORT_FEATURE_UNDEFINED 39
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -