|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
Teamcenter ITK二次开发源码分享: 替换命名引用name reference
9 k A1 w0 {+ ` E# Q/ [( P$ d Q* D2 U
) J2 s7 D& A" r1 y$ j/ B6 `' j- #include <ae/dataset.h>
3 s% S0 x( W2 x# T) @ - #include <sa/TCfile.h>& V t+ x; D4 T. i" v9 j# G
- #include <tccore/aom.h>
- l$ C- y- K( K$ u+ A/ L+ ^! A1 `+ G2 a - #include <sa/tcfile_cache.h>
; k, P8 l. g$ A0 Q3 d4 `, ?) o0 X" B- ~
9 Q w) R9 m* I2 w8 X( r- static void
) Q7 _# \* @; }% t$ t" w - (tag_t dataset_tag, tag_t old_file," w/ U1 D2 K" h, a7 N) y0 G; W
- char *new_file_path, char *ref_name)8 R5 h( | X- Z
- {5 C( r. K% r! M8 d2 z+ M e
- IMF_file_data_p_t file_data;
+ i4 |: C! O0 L' e2 q$ ?" g2 { - IFERR_REPORT(IMF_get_file_access(old_file, 0, &file_data));5 G7 R8 o* x% q- E3 W9 q0 `+ v0 |
- / e0 O4 V$ m1 _! m' Q
- tag_t new_file_tag = NULLTAG;7 E5 Z. ~7 }7 m) s
- IFERR_REPORT(AOM_lock(old_file));$ m# |) s) i# {" O/ i
- IFERR_REPORT(IMF_replace_file_and_get_new_tag(old_file, new_file_path,
( w2 k1 g/ o) |& ^ - FALSE, &new_file_tag)); / P7 [( n7 c h5 g6 G
/ `# K, I' f% `9 I7 _- IFERR_REPORT(AOM_lock(dataset_tag));
u% x5 u9 M, @0 w: ?8 m - IFERR_REPORT(AE_replace_dataset_named_ref(dataset_tag, old_file, ref_name,1 W5 U1 [: M3 [( h% \9 a
- AE_PART_OF, new_file_tag));/ U. a2 W& g$ w. @7 j
- - O0 `9 ]4 E' A( R* A* d
- IFERR_REPORT(AE_save_myself(dataset_tag));
8 c F: R: z6 k - IFERR_REPORT(AOM_unlock(dataset_tag));2 D% s& K7 U! A( ?
- IFERR_REPORT(IMF_release_file_access (&file_data));
+ [$ N/ p; ^0 e1 t7 G/ _4 g: k
+ N+ e6 [% }: R% u- /* assuming the old file should be deleted *// j% p9 U1 ]* o: l
- IFERR_REPORT(AOM_lock_for_delete(old_file));
- F! V1 |, a ~6 ~, r$ o - IFERR_REPORT(AOM_delete(old_file));
$ o- l2 S! T- H - }
复制代码
/ i: \3 O4 O1 y6 f4 o" u& A6 I" ?) x9 O& i7 N* k4 N
. o2 C. [0 L0 M. Z0 u) Y |
|