PLM之家PLMHome-工业软件践行者

teamcenter ITK开发的基本知识点

[复制链接]

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

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

admin 楼主

2013-12-3 20:54:57

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

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

x
Teamcenter  ITK开发的基本知识点
( P4 |. x: q! @2 I& E+ E9 a# }& q# ^
ITK 函数格式0 k! S/ _, \1 v8 a
        int FunctionName (type vari-name[dim] /* (I/O/OF) */ );
% f7 o4 g. t' Q: l) Q# l        OF使用void MEM_free(void *pointer)释放内存
6 l: s# N! F  l8 e* z. C5 n( V9 R0 [

/ Z1 a7 f/ k5 f: S: ?3 k& u% rInclude Files
7 R- B, m" ?4 b  j5 _        #include <TC/tc.h>必须6 e, T- y% g' H" R& [  N/ x, i
: f2 y/ e) ?( T* j

2 ]4 B& d9 K" e5 wtag_t data type6 }4 S) s" j4 C
所有在PDM的对象都有唯一的识别码,当对象加载到内存中时,就是以dynamic tag 来识别,tag_t 是integer
% N- U3 c5 b) c% z& r% A
8 W1 N1 D4 X+ Y% \6 L

" O& y; K7 l! k0 r3 w# k) _Error Message Handler (EMH)0 Y2 E" S2 X! T" e2 l+ Y% R
当有错误发生时,大部分ITK functions 都会传会一个整数值,此整数值一个错误信息对应。$ H+ ~$ S/ V% Q' q
' Q1 ], l% F0 q& H$ Y& i% e
6 j1 V6 q; Q, u; l( J
上海点团信息科技有限公司,承接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

8 `  |6 @0 F/ i" @4 U; n: D' {

! ]( w! j) T3 g3 d: g# b& QOF类型的变量一定要通过MEM_free()进行释放6 t1 `" i4 q8 ~% r* @, F( S
void MEM_free(void *pointer)
4 _/ k8 E. ~9 M- g4 @! `  M) I! E* f( V: ?
8 h" ~5 w; }: M! ]& t! o
MEM_alloc()2 F, k5 \7 {, h. }' c* b, T
MEM_crealloc()* k$ u3 T4 ?* o9 S- v1 H
MEM_free()
8 ^' ?+ O) {) L6 iMEM_realloc()4 J9 r0 m2 d1 B$ M2 e
使用以上内存管理函数,也可以使用C内存管理函数6 T% O' h5 C# T% a4 i3 q7 A& h
Include file: <mem.h>( y$ _' l* S. _4 t$ u
: ^# a: [, T9 ]

, M: B. u* j# j* z& _! O7 s函数返回值不为ITK_ok,则有错误发生,必须进行处理
8 c* D3 V  V8 c6 T. m4 |2 DEMH_ask_error_text() 和 EMH_ask_errors()通常用来获得错误信息(参考%IMAN_ROOT%\include\emh.h)
6 W+ W, m7 k0 o: t1 w7 J6 Q& B可以自定义错误信息编号,可用的自定义错误代号范围919000~919999。
/ k' ?, Y4 m( L- ?
% f4 j/ l- A0 m1 ?, b$ o

# q8 w2 R  \8 W- r1 Q( u, |4 V% q3 }3 ]7 g. r' w

" f. ~+ A2 Z+ e3 b; ^
  1. status = AOM_save( );
    + z! \# s1 x6 N5 r/ A: w
  2. if (status != ITK_ok )
    ; P! q1 A' o. l, X5 v
  3. {
    % x# T6 {) D/ i( a
  4. EMH_ask_error_text(status, &message);
    + y' r* s# D# @, S* o$ m
  5. printf("Error with AOM_save: %s\n",  message);
    1 A  B5 v; `/ r/ e8 \5 z1 B
  6. MEM_free(message);, u: o% p* ?0 R( U% R6 F
  7. return status;& ~' g. E8 U# j# }
  8. }  }1 G7 W% s5 n- C- J2 W$ N
复制代码
  1. status = AOM_save( fl_tag );
    ! w- c' @- `) J4 G
  2. if (status != ITK_ok )8 M4 }4 w, ~. W- v
  3. {
    % y# P( p3 z/ B2 o4 G. A2 K( X. X1 |
  4. EMH_ask_errors(&n_errors, &severities, &statuses, &messages);
    8 U/ W% b; m5 D$ f, c5 v& l& X& b
  5. for (i = 0; i < n_errors; i++)
    $ {: s) v9 g/ J2 R) @5 T
  6. {
    ! c1 n1 A1 n( o1 n; S! J
  7. printf( " %6d: %s\n", statuses[i], messages[i] );% q; S0 |. L5 m
  8. }
    7 V# h$ r% t! \' x
  9. return status;
    ) f6 h5 ^+ L. W  q% _+ x/ e
  10. }
    - J& `8 ^8 v& w! C- ]# c
复制代码

) q5 m- n  v: O. y2 L0 v
+ e2 a. K) I7 B

: ?* |" B4 S/ ^% Q/ f
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了