📄 ho.h
字号:
/**
*
* 文 件 名:ho.h
*
* 描 述:
*
* 创 建 者:
*
* 创建日期:
*
* 备 注:
*
*
* * 维护历史 *
*
* <日期> <修改者>
* <修改内容...>
*
**/
#ifndef __HO_FACTORY_H__
#define __HO_FACTORY_H__
#include "oioic/oioic.h"
/*==================+ OID(s) and OID_ +==================*/
/* 注意:在目前操作系统下,尽管大多情况不需要创建HO和AO,但它
* 们的OID是必需的!不需要创建的HO或AO就在这里为它们定义OID。*/
#define OID_HO (0x0000000000020000 | OID_OS) /* HO的OID。*/
#define OID_FACTORY (OID_HO + 0) /* Factory的OID。HO */
#define OID_MAIN (OID_HO + 1) /* Main的OID。AO */
/* #define OID_XXX3 (OID_HO + 2) /-* xxx3的OID。.. *-/ */
/* ... ... ... ... ... ... */
#define OID_ (OID_HO + 3) /* 其它OID的起点。*/
/*========================+ MSN +========================*/
/* #define MSN_XXX1 (MSN_ + 0) /-* xxx1的MSN。HO *-/ */
/* #define MSN_XXX2 (MSN_ + 1) /-* xxx2的MSN。AO *-/ */
/* #define MSN_XXX3 (MSN_ + 2) /-* xxx3的MSN。.. *-/ */
#define MSN_VEHICLE (MSN_ + 3) /* vehicle的MSN。GO */
#define MSN_CAR (MSN_ + 4) /* car的MSN。GO */
#define MSN_SHIP (MSN_ + 5) /* ship的MSN。GO */
#define MSN_AMPHICAR (MSN_ + 6) /* amphicar的MSN。GO */
/* ... ... ... ... ... ... */
/*==================+ Interface Result +=================*/
/* ... ... ... ... ... ... */
/* ... ... ... ... ... ... */
/* #define IR_N_PVT_YYY_ (IR_N_PVT_XXX_ - x) /-* X2的私有N结果起点。*-/ */
/* ... ... ... ... ... ... */
/* #define IR_N_XXX (IR_N_PVT_XXX_ -0) */
/** X1对象模的私有N结果:^ **/
/* #define IR_N_PVT_XXX_ (IR_N_PVT_ - x) /-* X1的私有N结果起点。*-/ */
/* ... ... ... ... ... ... */
/* #define IR_N_XXX (IR_N_PVT_ -0) */
/**
** 非一个对象模专用的N结果:^
**/
/* ... ... ... ... ... ... */
/* ... ... ... ... ... ... */
/* #define IR_O_PVTN_YYY_ (IR_O_PVTN_XXX_ - x) /-* X2的私有负O结果起点。*-/ */
/* ... ... ... ... ... ... */
/* #define IR_O_XXX (IR_O_PVTN_XXX_ -0) */
/** X1对象模的私有负O结果:^ **/
/* #define IR_O_PVTN_XXX_ (IR_O_PVTN_ - x) /-* X1的私有负O结果起点。*-/ */
/* ... ... ... ... ... ... */
/* #define IR_O_XXX (IR_O_PVTN_ -0) */
/**
** 非一个对象模专用的负O结果:^
**
** 非一个对象模专用的正O结果:
**/
/* #define IR_O_XXX (IR_O_PVTP_ + 0) */
/* ... ... ... ... ... ... */
/* #define IR_O_PVTP_XXX_ (IR_O_PVTP_ + x) /-* X1的私有正O结果起点。*-/ */
/** X1对象模的私有正O结果:**/
/* #define IR_O_XXX (IR_O_PVTP_XXX_ + 0) */
/* ... ... ... ... ... ... */
/* #define IR_O_PVTP_YYY_ (IR_O_PVTP_XXX_ + x) /-* X2的私有正O结果起点。*-/ */
/* ... ... ... ... ... ... */
/* ... ... ... ... ... ... */
/**
** 非一个对象模专用的P结果:
**/
/* #define IR_P_XXX (IR_P_PVT_ + 0) */
/* ... ... ... ... ... ... */
/* #define IR_P_PVT_XXX_ (IR_P_PVT_ + x) /-* X1的私有P结果起点。*-/ */
/** X1对象模的私有P结果:**/
/* #define IR_P_XXX (IR_P_PVT_XXX_ + 0) */
/* ... ... ... ... ... ... */
/* #define IR_P_PVT_YYY_ (IR_P_PVT_XXX_ + x) /-* X2的私有P结果起点。*-/ */
/* ... ... ... ... ... ... */
/* ... ... ... ... ... ... */
/*=======================+ Action +======================*/
/** 非一个对象模专用的交互行为:**/
#define GET_MAXLOAD (AC1 | (ACT_PVT_ + 0)) /* car,ship,获取最大载重量。TSO: SR32 */
#define GET_MAXVELOCITY (AC1 | (ACT_PVT_ + 1)) /* car,ship,获取最大速度。TSO: SR32 */
/* ... ... ... ... ... ... */
#define ACT_PVT_VEHICLE_ (ACT_PVT_ + 2) /* vehicle的私有交互行为起点。*/
/** vehicle对象模的私有交互行为:**/
#define GET_WEIGHT (AC1 | (ACT_PVT_VEHICLE_ + 0)) /* 获取重量。TSO: SR32 */
/* ... ... ... ... ... ... */
#define ACT_PVT_AMPHICAR_ (ACT_PVT_VEHICLE_ + 1) /* amphicar的私有交互行为起点。*/
/** amphicar对象模的私有交互行为:**/
#define GET_TMAXLOAD (AC1 | (ACT_PVT_AMPHICAR_ + 0)) /* 获取陆上(terrestrial)最大载重量。TSO: SR32 */
#define GET_TMAXVELOCITY (AC1 | (ACT_PVT_AMPHICAR_ + 1)) /* 获取陆上最大速度。TSO: SR32 */
#define GET_AMAXLOAD (AC1 | (ACT_PVT_AMPHICAR_ + 2)) /* 获取水上(aquatic)最大载重量。TSO: SR32 */
#define GET_AMAXVELOCITY (AC1 | (ACT_PVT_AMPHICAR_ + 3)) /* 获取水上最大速度。TSO: SR32 */
/* ... ... ... ... ... ... */
/* ... ... ... ... ... ... */
/*=======================================================*/
#endif /* #ifndef __HO_FACTORY_H__ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -