PLM之家PLMHome-国产软件践行者

teamcenter ITK开发的基本知识点

[复制链接]

2013-12-3 20:59:25 4966 1

admin 发表于 2013-12-3 20:54:57 |阅读模式

admin 楼主

2013-12-3 20:54:57

请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!

您需要 登录 才可以下载或查看,没有账号?注册

x
Teamcenter  ITK开发的基本知识点9 A7 c& W1 m! M/ ]

9 u. c$ a# D% B$ OITK 函数格式: L# j! v; @& p
        int FunctionName (type vari-name[dim] /* (I/O/OF) */ );
: R7 Q) d5 G! c! A( U- i        OF使用void MEM_free(void *pointer)释放内存9 f( V+ @. p! \# ^
& x3 O& {6 ?3 C6 D9 T' C# N

0 v6 g8 f7 ~0 h  I! \0 S1 sInclude Files
0 v. c4 S+ y6 i7 c1 c+ e& y* C( J        #include <TC/tc.h>必须
% S2 x5 W3 t/ o+ X* |9 C# z5 c
9 `7 t' y" |7 t( ^9 \# A
( \; _9 ?5 o) t# ]2 w
tag_t data type
! v$ o- K  e' a: X1 d9 a所有在PDM的对象都有唯一的识别码,当对象加载到内存中时,就是以dynamic tag 来识别,tag_t 是integer
( U1 t# t$ r' E2 \
- M; x/ W0 X1 |) o! p0 z/ |3 \
/ G9 z0 Y" _; a* j
Error Message Handler (EMH)( c$ R- U! F- w4 q5 u2 v9 \. V
当有错误发生时,大部分ITK functions 都会传会一个整数值,此整数值一个错误信息对应。5 J* J, U% U( i5 I' Q& t

+ w" L, }, p- {$ `" |2 T# m; u! K- [
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复

使用道具 举报

全部回复1

admin 发表于 2013-12-3 20:59:25

admin 沙发

2013-12-3 20:59:25

  E  z: h. X: L) m- A7 |
" e' o, o3 C2 E# ~7 Z  N
OF类型的变量一定要通过MEM_free()进行释放1 {( z" g8 s5 d1 B) e: A8 t
void MEM_free(void *pointer)
7 D) |$ a: o. |5 N4 d0 R/ E& |, P

7 N: x/ w( f5 s- PMEM_alloc()
% H$ L! x9 ^& s# MMEM_crealloc()9 E4 p9 q+ V  t$ @% l
MEM_free(): k9 @, ~8 r8 z: y% W+ D
MEM_realloc()
) P6 Q; e' q; Q: C使用以上内存管理函数,也可以使用C内存管理函数/ W6 V8 ^  t" S  \
Include file: <mem.h>
: C; W. c/ P% ]* ]; r9 Y) P6 L, D2 C0 `  E. E

6 n7 a- \9 f" v  ~2 U函数返回值不为ITK_ok,则有错误发生,必须进行处理
# A. Y  ?& j, u" b. cEMH_ask_error_text() 和 EMH_ask_errors()通常用来获得错误信息(参考%IMAN_ROOT%\include\emh.h)- l' e* J' |+ F8 H9 s. D( ]
可以自定义错误信息编号,可用的自定义错误代号范围919000~919999。/ Q1 o+ B% {7 \4 N- U% S: U5 O2 E

8 Z; {0 M! Q7 i+ M+ ^& X4 s% X
0 r) v: v( q; ]7 j7 |  r
& l- X. D% [) ]& H! ~3 i! @7 `3 N
( l" C: B! a* r8 e& _/ ?
  1. status = AOM_save( );) G. i$ d7 w4 {% V( p: F
  2. if (status != ITK_ok )5 \4 ~) A% m7 I* b
  3. {, d( b! u; ?. e% X+ ]# p) Y; D7 t
  4. EMH_ask_error_text(status, &message);) A) @) ^0 k, Z1 l
  5. printf("Error with AOM_save: %s\n",  message);& k5 K  _% Y% z3 H/ K
  6. MEM_free(message);
    . q  U* e) j! w! R
  7. return status;
    - ?  f- _( s( I( ]( s
  8. }
    8 X" v3 a- S9 C5 Y" y& A) A; @
复制代码
  1. status = AOM_save( fl_tag );
    3 Z( L7 w, |( I1 M. Z
  2. if (status != ITK_ok )& i; J4 E3 ]) T6 Y; X
  3. {
    ' j  \+ s; R! _0 N9 m
  4. EMH_ask_errors(&n_errors, &severities, &statuses, &messages);
    , q: Z) R/ e7 y1 g# Q8 ^
  5. for (i = 0; i < n_errors; i++), {1 H& [) N  ?
  6. {: I5 w/ D1 x4 H% F
  7. printf( " %6d: %s\n", statuses[i], messages[i] );& j( c8 y7 R5 L( E
  8. }
    8 ]9 q, B5 F2 s" d& ^
  9. return status;
    + b% r$ D: U. o0 p5 s1 j
  10. }
    - z, n+ P. Q+ S  W: P" g% j$ T, ?
复制代码

) b8 w# k! a( l9 A% s; h+ t9 J6 l$ t) X9 L6 L

; r1 V; B" V$ p' k3 E
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复 支持 反对

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 注册

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了