|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
×
Teamcenter ITK二次开发源码分享: 替换命名引用name reference# Q& t2 ~, r8 h) I2 d/ `$ Z
0 s1 |3 ]9 J! ]
, B2 _2 g+ ~( ~/ E
- #include <ae/dataset.h>
/ {. ]8 I& |6 C; P- j9 r3 g7 ]; i- X - #include <sa/TCfile.h>
/ Z# i& l% ~6 V" a& A; S/ \3 ] - #include <tccore/aom.h>$ Z$ v0 o& H: A: U
- #include <sa/tcfile_cache.h>. H+ h4 i5 V8 c. ]- _) M5 u& t
- $ H! [5 @" d! N+ g, ?
- static void
0 W7 d( m+ X& F7 V, N( j - (tag_t dataset_tag, tag_t old_file,1 Q& J! f, \& [7 U: n1 Y( G
- char *new_file_path, char *ref_name)- f/ `' S3 J7 L) ~, u$ Z5 ^: s
- {
i0 A/ T, R! ` - IMF_file_data_p_t file_data;& B2 n2 E5 e* S- [5 c2 V# X
- IFERR_REPORT(IMF_get_file_access(old_file, 0, &file_data));
6 _& I- [5 t+ Y# p8 L V/ S. ^( a - 2 E3 b. f. ^; y9 W
- tag_t new_file_tag = NULLTAG;
, I. C% C8 g Y* a# U - IFERR_REPORT(AOM_lock(old_file));& y* s$ W& h. R4 r& ~4 B
- IFERR_REPORT(IMF_replace_file_and_get_new_tag(old_file, new_file_path,
' A* J7 r8 P f8 u - FALSE, &new_file_tag));
2 @7 d$ F) }% j5 F: B* z - 6 Q. U; n. _4 Y: F$ L
- IFERR_REPORT(AOM_lock(dataset_tag));
+ D) [3 P' R/ n6 L - IFERR_REPORT(AE_replace_dataset_named_ref(dataset_tag, old_file, ref_name,
8 Z( y( k4 |6 y - AE_PART_OF, new_file_tag));
# S% C% ~9 U: }4 N# u - 8 F) ^0 Y4 }+ r
- IFERR_REPORT(AE_save_myself(dataset_tag));
; _# `- M$ _, g- Z - IFERR_REPORT(AOM_unlock(dataset_tag));
. G- s8 R: H4 A6 m - IFERR_REPORT(IMF_release_file_access (&file_data));( H! C- W$ j$ Z" H) p& z6 g. n
- - Q! @6 ^) G1 y" _' j% K) Y
- /* assuming the old file should be deleted */
- Q& a+ o% `3 b! z, l - IFERR_REPORT(AOM_lock_for_delete(old_file));' B. x: X8 [/ j F% _
- IFERR_REPORT(AOM_delete(old_file));
2 y, H+ u1 [" D! v - }
复制代码 7 z, w$ R! H U
2 u6 @: {6 L4 J m4 {. K
6 `; _; I* |( B1 A |
|