/* i_jt2ext.h JCG JTRON 2.0 ITRON 拡張 I/F JCG実行環境構築用プログラム・ヘッダファイル Copyright (C) 2000, 2001 Personal Media Corporation */ #ifndef _I_JT2EXT_H_ #define _I_JT2EXT_H_ #include #ifndef E_CLS #define E_CLS (-87) #endif /* Java スレッドとリアルタイムタスクの対応 */ extern void jti_set_hpr(PRI hijpri); extern PRI jti_get_hpr(PRI hijpri, INT jpr); extern PRI jti_get_lpr(PRI hijpri); /* 共通オブジェクトアクセス */ typedef int JNO; extern ER jti_get_obj(char *objnm, JNO *p_objno); extern ER jti_get_mem(JNO objno, VP *p_addr); extern ER jti_loc_obj(JNO objno, TMO tmout); extern ER jti_unl_obj(JNO objno); extern ER jti_funl_obj(JNO objno); /* Java スレッド操作 */ extern ER jti_get_thr(char *thrnm, JNO *p_thrno); extern ER jti_isa_thr(JNO thrno); extern ER jti_int_thr(JNO thrno); extern ER jti_isi_thr(JNO thrno); extern ER jti_sus_thr(JNO thrno); extern ER jti_rsm_thr(JNO thrno); extern ER jti_sta_thr(JNO thrno); extern ER jti_thr_stp(JNO thrno); extern ER jti_get_jpr(JNO thrno, INT *p_rslt); extern ER jti_set_jpr(JNO thrno, INT newpri); extern ER jti_des_thr(JNO thrno); /* Java スレッドグループ操作 */ extern ER jti_get_tgr(char *tgrnm, JNO *p_tgrno); extern ER jti_des_tgr(JNO tgrno); extern ER jti_sus_tgr(JNO tgrno); extern ER jti_rsm_tgr(JNO tgrno); extern ER jti_stp_tgr(JNO tgrno); /* ストリームインタフェース */ typedef struct { VP exinf; ATR stmattr; VP wbuf; INT wbufsz; VP rbuf; INT rbufsz; } T_JTI_CSTM; typedef struct { VP exinf; INT wrisz; INT reasz; } T_JTI_RSTM; #define JTI_MAIN_STREAM 1 /* 主ストリーム ID */ #define TA_WRITE 0x01 /* ストリーム属性: 送信可 */ #define TA_READ 0x02 /* ストリーム属性: 受信可 */ extern ER jti_cre_stm(ID stmid, T_JTI_CSTM *pk_cstm); extern ER jti_del_stm(ID stmid); extern ER jti_wri_stm(ID stmid, VP data, INT len, TMO tmout); extern ER jti_rea_stm(ID stmid, VP data, INT len, TMO tmout); extern ER jti_sht_stm(ID stmid); extern ER jti_ref_stm(ID stmid, T_JTI_RSTM *pk_rstm); #endif /*_I_JT2EXT_H_*/