📄 icapisdk.h
字号:
icTypeId typeId; void *variablePtr; icBoolean write; icUserData userData; icVariableId *variableId; icRemoteId remoteId ; /* -- Call when someone reads/writes our variables -- */#ifdef AXS4ICCP void (*variableWrite) (icInt, icUserData, icInt chan); void (*variableRead) (icInt, icUserData, icInt chan); /* -- Call when we successfully read/write server variables -- */ void (*variableWriteConfirm) (icInt, icUserData, icInt chan); void (*variableReadConfirm) (icInt, icUserData, icInt chan);#else void (*variableWrite) (icInt, icUserData); void (*variableRead) (icInt, icUserData); /* -- Call when we successfully read/write server variables -- */ void (*variableWriteConfirm) (icInt, icUserData); void (*variableReadConfirm) (icInt, icUserData);#endif#ifdef AXS4ICCP /* -- Call when data is received via information report -- */ void (*infoReport) (icInt, icUserData, icInt);#endif /* -- Information created and maintained by API -- */ icInt originalType; /* either user-defined or pre-defined cnst*/ icInt originalScope;/* scope as given at SDK level */ void *variableChangeObject ; /* if changed, notify using this */ /* this should be of type objectChangeNotifyType */ struct icTransferGroup *transferGroup ; /* ptr to TGroup it belongs to */ struct icVariable *next ; /* ptr to next variable in chain */} icVariable ; typedef void (*icSetDsetOpStateProcType) ( icTransferGroupId transferGroupId, icBoolean operational);typedef struct _ictransfergroup_ { /* -- Information created and maintained by the API -- */ icChar sentinel[IC_API_TGRP_SENTINEL_SZ+1]; /* Unique 'tag' */ /* -- Information passed in by user application -- */ icLinkId linkId ; icBoolean periodic ; icInt periodicInterval ; icInt periodicOffset; icBoolean reportOnlyExceptions; icInt bufferInterval; icInt integrityInterval; icBoolean criticalData; icLong startTime; icVariableId *variables; icInt variableCount; icBoolean enabled; icSetDsetOpStateProcType reportTgState; void (*transferReject)( icInt status, icLinkId linkId ); /* -- Information created and maintained by the API -- */ icTimerId transferTimerId ; /* 'main' timer id */ struct icTransferGroup *next ; /* ptr to next group in chain */ cDataSetObjectType *dataSetPtr; /* ptr to data set object */} icTransferGroup ; typedef struct _icmessage_ { /* -- Information created and maintained by API -- */ icInt messageType; icInt messageSize; icTAVariable *icTAVarId; struct icMessage *next ; /* ptr to next message in chain */} icMessage ;/* -- Undocumented Prototypes -- *//* -- Extract type 'handle' from pre-def variable constant -- */ icTypeId icGetPreDefTypeId( icInt variableType ); /* -- Extract type 'handle' from variable 'handle' -- */icTypeId icGetTypeId( icVariableId variableId ); /* -- Extract ASCII TDL string from type 'handle' -- */char *icGetTDL( icTypeId type );/* -- Extract ASCII Type 'name' from type 'handle' -- */char *icGetTypeName( icTypeId type ); /* -- Extract ASCII Variable name from variable 'handle' -- */char *icGetVariableName( icVariableId variableId );/* -- Extract ASCII Variable Type name from variable 'handle' -- */char *icGetVariableTypeName( icVariableId variableId );/* -- Returns text string corresponding to API status code -- */char *icPerror( int errorCode ); /* -- Saves passed string and returns ptr to save area -- */ /* SISCO_START char *icStrSave( char *string ); */char *icSaveAString (char *p, char *fileName, int fileLine);#define icStrSave(x) icSaveAString (x, thisFileName, __LINE__)/* SISCO_END *//* -- Malloc's and returns space (checks and displays any errors) -- */ /* SISCO_START make use of memcheck utilities *//* void *icGetSpace( unsigned long bytes ); */#define icGetSpace(x) x_chk_calloc (1, x, thisFileName,__LINE__)/* SISCO_END *//* -- Sets the 'peer' structure for a given channel number -- */void icSetPeerForChannel( peerType *peer, int channel ); /* -- Gets the 'peer' structure for a given channel number -- */peerType *icGetPeerForChannel( int channel );void icClearChannelPeer (ST_INT chan);/* -- Gets the icVariable pointer from internal iccp.* tables using peer -- */icVariable *icGetVariablePtr( peerType *peer, char *variableName ); void exceptionBufferTimeout(dsTransferSetObjectType *transferSet, mnTimerIdType TimerId);void addBilateralEntry( bilateralTableType **ctrl, icShort permissions, timeIntervalSType interval, char *name, icShort scope, ldValueType valuePtr);icBoolean bilateralEntryFound( bilateralTableType *bilateral, char *name, int *entryIndex);void deleteBilateralEntry( bilateralTableType **ctrl, char *name);char *getNamePtr( ldValueType valuePtr);icRemote *icGetRemoteForPeer( peerType *peer );icLink *icGetLinkForPeer( peerType *peer );void serverRequestTimeout( void *userData, mnTimerIdType TimerId);void concludeRequestTimeout( void *userData, mnTimerIdType TimerId);void stopTransferSetWrite( peerType *peer);char *icGetB5NamePtr (ldValueType valuePtr);void getDataSetNames( char *remoteName, int *number, char **dsNamesP);icBoolean dataSetFound( char *remoteName, char *linkName, char *dsName);icBoolean deleteDataSet( char *remoteName, char *linkName, char *dsName);icBoolean createDataSet( char *remoteName, char *linkName, char *dsName, int number, char *(objNames[IC_MAX_NAME_LEN+1]), int *objTypes, icInt scope);icBoolean getDataSetElement( char *remoteName, char *linkName, char *dsName, int *number, char **objNamesP, int **objTypesP, int *scope, int *use_count);void xmitCheckTimeout( peerType *peerPtr, mnTimerIdType TimerId);icBoolean icDisableLink( peerType *peer, icLink *iclink, icRemote *icremote);void icEnableLink( peerType *peer, icLink *iclink, icRemote *icremote );icInt icGetNewLocalPtr( icLocal **local_p );icInt icGetLocalPtr( icLocal **local_p );icInt icGetNewRemotePtr( icRemote **remote_p );icInt icGetNewLinkPtr( icRemote *remote_p, icLink **link_p );icInt icGetNewVariablePtr( icVariable **variable_p );icInt icGetNewTransferGroupPtr( icTransferGroup **transfer_p );void icSaveTypeId( icTypeId typeid );icInt icAddLinkup( icRemote *rp, void (*linkup)(icLinkId lid,icUserData uid) );icInt icAddLinkdn( icRemote *rp, void (*linkdown)(icLinkId,icUserData) );icInt icAddStopRemote( icRemote *rp, void (*remoteStopped)(icLinkId,icUserData) );icInt icChkRemoteId( icRemote *rp );icInt icActiveRemote( icRemote *rp );int icActiveLink( icLink *lp );void icNewVarsOnRemotes( int scope, icRemote *rp );icTypeId icFindTypeForASN1( icInt asn1length, icUChar *asn1string );void icSetTransferConditions( icTransferGroup *tgp );void icStateChange( peerType *peer );void icInitPeerForDefaults( peerType *peer );void icInitPeerForRemote( peerType *peer, icRemote *remote );void icInitPeerForLocal( peerType *peer, icLocal *local );void icInitPeerForLink( peerType *peer, icLink *link, icRemote *remote );void icTraceCntrl( void );void cancelTransferSet( peerType *peer, dsTransferSetObjectType *transferSet);void addConditionDefEntry( peerType *peer, char *name, icTransferGroup *tgp, unsigned char dataPriority, unsigned char periodicData, unsigned char criticalData, unsigned char RBE, long startTime, short interval, short periodicOffset, short bufferTime, short integrity, void (*transferReject)(int,void*) );void addConditionEntry( conditionTableType **ctrl, char *groupName, ldValueType valuePtr, int *entryIndex);icChar *getValuePtr( ldValueType valuePtr);int getScope( ldValueType valuePtr);void icPrint_string (const char *formt, ...);void icTraceTime ( void );icBoolean conditionDefEntryFound( conditionDefTableType *condition, char *name, int *entryIndex);ST_VOID list_rej_class_code ( int logid, int class, int code);/* Function prototypes for macros IC_DEBUG and IC_LOG */void ic_Debug_End (int LogType,char *tmp_text,char *fileName,int line,char *prt_text) ;void trace_log_func (char *tmp_text,char *fileName,int line,char *prt_text) ;void ic_Log_End( int LogType,int logId,char *tmp_text,char *fileName,int line,char *prt_text) ;void icSetVariableChgNotify( icVariable *vp, dsTransferSetObjectType *transferSet, int objectIndex);void icCancelVariableChgNotify( icVariable *vp, dsTransferSetObjectType *transferSet, int objectIndex);void icFreeDefs( void ) ;icInt icInitMMS( icInt maxMMSMsgSize) ;icInt icInitPeerData(peerType *peer) ;void icSetLinkForPeer( peerType *peer, icLink *lp ) ;icInt icSetupB4LinkObjectsTypes ( icLink *lp) ;icInt icSetupB8LinkObjectsTypes ( icLink *lp) ;icBoolean icCheckAndSaveMsgType ( icChar *name, icTypeId typeId) ;icBoolean icCheckAndSaveTAType( icChar *name, icTypeId typeId) ;int icGetDataValue( peerType *peer, char *varname ) ;/* SISCO_START add void * to accomodate icWriteVariableExint icSetDataValue( peerType *peer, char *varname ) ; */int icSetDataValue( peerType *peer, char *varname, void *valuePtrIn ) ;/* SISCO_END */void icValueChanged( peerType *peer, icVariable *vp ) ;void icGetVariableList( icLink *link, icInt scope, icChar *startAfterName, icShort mmsClass) ;void icGetVariableType( icLink *link, int scope, char *variableName ) ;void icapi_exit( int code, char *filename, int linenumber ) ;char *icStrSaveMsg(icInt infoRef) ;icInt icGetNewMsgPtr (icMsgVariable **icMsgVar) ;extern void MnRemoveTimeOutHandler( mnTimerIdType TimerId) ;icInt icGetNewAccountPtr ( icTAVariable **icTAvar) ;icInt icGetNewMatrixAccountPtr ( icMatrixTAVariable **icTAMvar) ;icInt icDefineTypeEx(icChar *typeName, icChar *typeDefinition, icTypeId *TypeID);/* -- Extract variable 'handle' from pre-def message constant -- */icMessageId icGetPreDefMessageId( icInt messageType );icInt icGetNewB4B8MsgPtr (icMessage **icMsg);/*---------------------------------------------------------------------------- Debugging level constants - definitions----------------------------------------------------------------------------*/ #define ICD_PROTOCOL_PARAMS 0 #define ICD_ASSOC_STATUS 1 #define ICD_ASSOC_ACTIVS 2 #define ICD_ONETIME_DEFS 3 #define ICD_NONPERIODIC 5 #define ICD_PERIODIC 6 #define ICD_PERIODIC_EXT 7 #define ICD_PROCED_ST 8 #define ICD_PROCED_END 9 #define ICD_DETAILED 10#endif /* _ICAPISDK_H_ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -