⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 icapi.h

📁 ICCP Toolkit 是在 Tru64下开发Tase.2通信协议的开发包
💻 H
📖 第 1 页 / 共 5 页
字号:
	#define IC_MIN_TRANSFER_SETS    100#define IC_MAX_TRANSFER_SETS    9999#define IC_MIN_DATA_SETS        100#define IC_MAX_DATA_SETS        9999#define IC_MAX_NAME_SIZE        32/* -- MMS Min/Max Values -- */#define IC_MMS_MIN_MSGSIZE      200 /* Max value - is negotiated between local and remote system *//* -- Timeout/Retry values (in seconds) -- */#define IC_REQUEST_MIN_TIMEOUT  1#define IC_REQUEST_MAX_TIMEOUT  600#define IC_REQUEST_MIN_RETRY    1#define IC_REQUEST_MAX_RETRY    600#define IC_REPLY_MIN_RETRY      1#define IC_REPLY_MAX_RETRY      600/* -- Channel number values -- */#define IC_MAX_CHANNEL_NUMBER   99 /* -- Periodic Interval values (in seconds) -- */#define IC_MIN_PERIODIC_INTERVAL    1#define IC_MAX_PERIODIC_INTERVAL    3600#define IC_MIN_PERIODIC_OFFSET      0 #define IC_MAX_PERIODIC_OFFSET      3599/* -- Buffer/Integrity Interval values (in seconds) -- */#define IC_MIN_BUFFER_INTERVAL      0#define IC_MAX_BUFFER_INTERVAL      600#define IC_MIN_INTEGRITY_INTERVAL   0#define IC_MAX_INTEGRITY_INTERVAL   3600/* -- Data Types -- */#ifdef __cplusplusextern "C" {#endif/*  Misc. 'basic' types and values  *//* SISCO_START							*/typedef ST_BOOLEAN    icBoolean ;typedef ST_CHAR       icChar    ; typedef ST_UCHAR      icUChar   ; typedef ST_INT16      icShort   ;typedef ST_UINT16     icUShort  ; typedef ST_INT        icInt     ;typedef ST_UINT       icUInt    ; 	typedef ST_INT32      icLong    ;typedef ST_UINT32     icULong   ;typedef ST_FLOAT      icFloat   ;typedef ST_DOUBLE     icDouble  ; /* SISCO_END							*/#define icTrue           1#define icFalse          0 /* -- user specific error log routine type -- */typedef void (*icErrLogProcType) (    short int          icInd,    short int          icErrNum,    icChar             Txt[],    icInt              lTxt);/*     MMS-EASE Type Description Language (TDL) example strings and    structures for pre-defined Data Types	The Data Type name precedes its TDL string.    The TDL string is defined above its corresponding data structure.         Note that the use of spaces in the TDL descriptor is optional,    and may be included for easier reading.    However, also note that while spaces are ignored, other items     aren't.  For example, the TDL's "{Long}" and "Long" are not     considered identical by MMS-EASE.  Keep this in mind when trying    to match types to remote system(s).*/#define IC_TYPE_REAL_NAME   "Data_Real"#define IC_TYPE_REAL_TDL    "Float"typedef icFloat  icTypeReal ; #define IC_TYPE_REAL_Q_NAME   "Data_RealQ"#define IC_TYPE_REAL_Q_TDL    "{(Value)Float,(Flags)Bstring8}"typedef struct _ictyperealq {      icFloat  Value ;    icUChar  Flags ;} icTypeRealQ ;  #define IC_TYPE_REAL_Q_TIME_TAG_NAME "Data_RealQTimeTag"#define IC_TYPE_REAL_Q_TIME_TAG_TDL  \    "{(Value)Float,(TimeStamp)Long,(Flags)Bstring8}"typedef struct _ictyperealqtimetag {     icFloat  Value ;     icLong   TimeStamp ;     icUChar  Flags ; } icTypeRealQTimeTag ; #define IC_TYPE_REAL_EXTENDED_NAME "Data_RealExtended"#define IC_TYPE_REAL_EXTENDED_TDL \    "{(Value)Float,(TimeStamp)Long,(Flags)Bstring8,(COV)Ushort}"typedef struct _ictyperealextended {     icFloat   Value ;     icLong    TimeStamp ;     icUChar   Flags ;    icUShort  COVCount ; } icTypeRealExtended ; #define IC_TYPE_STATE_NAME   "Data_State"#define IC_TYPE_STATE_TDL    "Bstring8" typedef icUChar icTypeState ; 	#define IC_TYPE_STATE_Q_NAME   "Data_StateQ"#define IC_TYPE_STATE_Q_TDL    "Bstring8" typedef icUChar icTypeStateQ ; #define IC_TYPE_STATE_Q_TIME_TAG_NAME   "Data_StateQTimeTag"#define IC_TYPE_STATE_Q_TIME_TAG_TDL    "{(TimeStamp)Long,(Flags)Bstring8}"typedef struct _ictypestateqtimetag {     icLong   TimeStamp ;     icUChar  Flags ; } icTypeStateQTimeTag ;  #define IC_TYPE_STATE_EXTENDED_NAME  "Data_StateExtended"#define IC_TYPE_STATE_EXTENDED_TDL \    "{(TimeStamp)Long,(Flags)Bstring8,(COV)Ushort}" typedef struct _ictypestateextended {     icLong    TimeStamp ;     icUChar   Flags ;     icUShort  COVCount ; } icTypeStateExtended ; #define IC_TYPE_DISCRETE_NAME   "Data_Discrete"#define IC_TYPE_DISCRETE_TDL    "Long" typedef icInt icTypeDiscrete ; #define IC_TYPE_DISCRETE_Q_NAME   "Data_DiscreteQ" #define IC_TYPE_DISCRETE_Q_TDL    "{(Value)Long,(Flags)Bstring8}" typedef struct _ictypediscreteq {     icInt    Value ;     icUChar  Flags ; } icTypeDiscreteQ ; #define IC_TYPE_DISCRETE_Q_TIME_TAG_NAME  "Data_DiscreteQTimeTag" #define IC_TYPE_DISCRETE_Q_TIME_TAG_TDL  \    "{(Value)Long,(TimeStamp)Long,(Flags)Bstring8}" typedef struct _ictypediscreteqtimetag {     icInt    Value ;     icLong   TimeStamp ;     icUChar  Flags ; } icTypeDiscreteQTimeTag ; #define IC_TYPE_DISCRETE_Q_EXTENDED_NAME   "Data_DiscreteExtended"#define IC_TYPE_DISCRETE_Q_EXTENDED_TDL  \    "{(Value)Long,(TimeStamp)Long,(Flags)Bstring8,(COV)Ushort}" typedef struct _ictypediscreteqextended {     icInt     Value ;     icLong    TimeStamp ;     icUChar   Flags ;     icUShort  COVCount ; } icTypeDiscreteQExtended ; /* * ICCP Time Stamp Types *//* SISCO_START use ST_INT32 instead of long int SISCO_END	*/typedef ST_INT32  icGMTBasedSType;  /* seconds since Jan. 1, 1970 GMT */#define TIME_INT_LEN  17         /* length of TimeIntervalString */#define MAX_IDENT_LEN 32         /* length of MMS Identifiers */#define HOURLY_PERIOD   "00:00:00:01:00:00"#define MONTHLY_PERIOD  "00:00:01:00:00:00"/* * foundation types for Account Objects *//* SISCO_START define with toolkit types	*/typedef icFloat          icPriceType;           /* format 24, exponent 8 */typedef icShort          icAccountTypeCodeType; /* integer 16            */typedef icShort          icCommodityClassType;  /* integer 16            */typedef icFloat          icTransactionAmountType;  /* fmt 24, exponent 8 */typedef icShort          icTransSegCodeType;    /* integer 16            */typedef icLong           icReferenceNumType;    /* integer 32            */typedef icLong           icUtilityIdType;       /* integer 32            */typedef icLong           icInterchangeIdType;   /* integer 32            */typedef icGMTBasedSType  icScheduleTimeType;    /* GMTBasedS             */typedef icGMTBasedSType  icDurationType;        /* GMTBasedS             */typedef icShort          icNumberType;          /* integer 16            */typedef icInt            icMatrixId;            /* integer 32            *//* SISCO_END	*//* *  Information Buffer Objects  (Block 4) */#if 0  /* the following was version 5.2 */#define IC_TYPE_INFO_BUF_HDR_NAME  "InformationMessageHeader"#endif#define IC_TYPE_INFO_BUF_HDR_NAME  "InfoMessHeader"#define IC_TYPE_INFO_BUF_HDR_TDL             \    "{(InfoReference)Long,(LocalReference)Long,(MessageId)Long,(Size)Long}"/* SISCO_START use toolkit types SISCO_END */typedef struct _ictypeinfobufferheader {     icReferenceNumType    InfoReference;    icReferenceNumType    LocalReference;    icLong                MessageId;        /* integer 32   */    icLong                Size;          /* integer 32   */} icTypeInfoBufferHeader ; /* *  Account Object Types  (Block 8) */#define IC_TYPE_SEG_PERIODIC_NAME  "TASegmentsPeriodic"#define IC_TYPE_SEG_PERIODIC_TDL         \    "{Long, Long, Long, Long, Long, Long, Vstring32, Long, Vstring32, Short, Short, Short, Short, Short}"#if 0  /* definition too long, skip type name    len =304*/    "{(TransferAccountRef)Long,(SendUtility)Long,(RecvUtility)Long,(SellingUtility)Long,(BuyingUtility)Long,(TimeStamp)Long,(Name)Vstring32,(StartTime)Long,(PeriodResolution)Vstring32,(NumberLocalReferences)Short,(NumberSegments)Short,(NumberFloatIds)Short,(NumberIntegerIds)Short,(NumberPeriods)Short}"#endiftypedef struct _ictypenamedsegperiodicheader {     icReferenceNumType      TransferAccountRef;    icUtilityIdType         SendUtility;    icUtilityIdType         RecvUtility;    icUtilityIdType         SellingUtility;    icUtilityIdType         BuyerUtility;    icGMTBasedSType         TimeStamp;    icChar                  Name[MAX_IDENT_LEN+1];    icScheduleTimeType      StartTime;    icChar                  PeriodResolution[MAX_IDENT_LEN+1];    icNumberType            NumberLocalRef;    icNumberType            NumberSegments;    icNumberType            NumberFloatIds;    icNumberType            NumberIntegerIds;    icNumberType            NumberPeriods;} icTypeNamedSegPeriodicHeader ; #define IC_TYPE_NO_SEG_PRD_NAME  "TANoSegmentsPeriodic"#define IC_TYPE_NO_SEG_PRD_TDL             \    "{Long, Long, Long, Long, Long, Long, Vstring32, Long, Vstring32, Short, Short, Short, Short}"#if 0  /* if definition too long, skip type name    len = 281 */    "{(TransferAccountRef)Long,(SendUtility)Long,(RecvUtility)Long,(SellingUtility)Long,(BuyingUtility)Long,(TimeStamp)Long,(Name)Vstring32,(StartTime)Long,(PeriodResolution)Vstring32,(NumberLocalReferences)Short,(NumberFloatIds)Short,(NumberIntegerIds)Short,(NumberPeriods)Short}"#endiftypedef struct _ictypenamedperiodicheader {     icReferenceNumType      TransferAccountRef;    icUtilityIdType         SendUtility;    icUtilityIdType         RecvUtility;    icUtilityIdType         SellingUtility;    icUtilityIdType         BuyerUtility;    icGMTBasedSType         TimeStamp;    icChar                  Name[MAX_IDENT_LEN+1];    icScheduleTimeType      StartTime;    icChar                  PeriodResolution[MAX_IDENT_LEN+1];    icNumberType            NumberLocalRef;    icNumberType            NumberFloatIds;    icNumberType            NumberIntegerIds;    icNumberType            NumberPeriods;} icTypeNamedPeriodicHeader ; #define IC_TYPE_SEG_PROFILE_NAME  "TASegmentsProfile"#define IC_TYPE_SEG_PROFILE_TDL         \    "{(TransferAccountRef)Long,(SendUtility)Long,(RecvUtility)Long,(SellingUtility)Long,(BuyingUtility)Long,(TimeStamp)Long,(Name)Vstring32,(NumberLocalReferences)Short,(NumberSegments)Short,(NumberProfileValues)Short}"typedef struct _ictypenamedsegprofileheader {     icReferenceNumType      TransferAccountRef;    icUtilityIdType         SendUtility;    icUtilityIdType         RecvUtility;    icUtilityIdType         SellingUtility;    icUtilityIdType         BuyerUtility;    icGMTBasedSType         TimeStamp;    icChar                  Name[MAX_IDENT_LEN+1];    icNumberType            NumberLocalRef;    icNumberType            NumberSegments;    icNumberType            NumberProfileVals;} icTypeNamedSegProfileHeader ; #define IC_TYPE_NO_SEG_PRF_NAME  "TANoSegmentsProfile"#define IC_TYPE_NO_SEG_PRF_TDL             \    "{(TransferAccountRef)Long,(SendUtility)Long,(RecvUtility)Long,(SellingUtility)Long,(BuyingUtility)Long,(TimeStamp)Long,(Name)Vstring32,(NumberLocalReferences)Short,(NumberProfileValues)Short}"typedef struct _ictypenamedprofileheader { 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -