|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
Teamcenter ITK二次开发源码分享: 替换命名引用name reference1 S' A' ?5 Q' y
$ N+ `0 z1 ^, O6 H9 V# @" a' x8 C* g
- #include <ae/dataset.h>, |4 {0 [* X7 A' s2 u C. T
- #include <sa/TCfile.h>
0 L- P0 g0 D4 X3 p, L0 f$ X - #include <tccore/aom.h>
% J! t7 A( ~, v8 }4 c+ D3 O - #include <sa/tcfile_cache.h>1 O% P& n" F9 L/ ]5 r6 j. ~1 Z
& Y. \+ ?/ t& \4 Q- static void
6 T2 N7 R1 L: p% m - (tag_t dataset_tag, tag_t old_file,
2 K7 r5 U' s3 F' ~" p8 F9 { - char *new_file_path, char *ref_name)
" d2 Z" I, Q, |; ^ - {0 V1 `6 w$ l5 R2 e
- IMF_file_data_p_t file_data;% S. u$ I2 ~- \/ n
- IFERR_REPORT(IMF_get_file_access(old_file, 0, &file_data));
$ m& @& k; Y7 k4 B8 ]8 b
& b5 h4 V9 } \- [3 @$ H& G- tag_t new_file_tag = NULLTAG;1 L7 i- f" p( P% t8 b: _" g5 _! a
- IFERR_REPORT(AOM_lock(old_file));9 U8 n, l% v) l. h8 o
- IFERR_REPORT(IMF_replace_file_and_get_new_tag(old_file, new_file_path,
+ J, o3 E* \+ ?2 R, | - FALSE, &new_file_tag));
- J+ u4 l3 E0 E1 R8 w3 m
# K% g* c. X; e4 F" d- IFERR_REPORT(AOM_lock(dataset_tag));7 d# p$ c; z: s% @
- IFERR_REPORT(AE_replace_dataset_named_ref(dataset_tag, old_file, ref_name,' ]7 W8 H+ [3 J6 c- H
- AE_PART_OF, new_file_tag));
0 g9 U6 g; I" Y1 V7 |4 s
+ `0 E% }7 e$ M8 ]1 w" d- IFERR_REPORT(AE_save_myself(dataset_tag));& H! G* f% c4 }$ A( J& t
- IFERR_REPORT(AOM_unlock(dataset_tag));
2 l+ x9 R) [* d: C8 t+ I - IFERR_REPORT(IMF_release_file_access (&file_data));# Y% s7 N5 s; H( I1 ? l
- : C+ g' l2 C& Y4 P4 V+ V% b
- /* assuming the old file should be deleted */
) b; i' z0 |) }8 X, e$ e - IFERR_REPORT(AOM_lock_for_delete(old_file));; j( E( ^. m- Z; H& t4 o$ L- l! G
- IFERR_REPORT(AOM_delete(old_file));; i g x4 K. d2 } Y! w
- }
复制代码 5 t4 ?! S5 O) v( M1 `& O
( J, h; A5 t5 C" _: Q& p$ s7 O2 A0 j
|
|