|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
×
Teamcenter ITK二次开发源码分享: 替换命名引用name reference5 n9 J) V. N% n/ b( ~4 ^
3 u2 V' s9 ^) Q ?" ]; ?+ |+ N. c3 A
h" J. ^! y2 n1 [: ?3 R- #include <ae/dataset.h>- s' W! b) W6 M2 T4 O
- #include <sa/TCfile.h>7 m3 a+ ]. q r" B& u# V
- #include <tccore/aom.h>5 v1 x1 @ F' f
- #include <sa/tcfile_cache.h>
/ T: u/ X1 N: v# ~
, A5 W- n& b" S4 D/ |+ M; D- static void , }& l/ m6 p( r/ g% F; z- C
- (tag_t dataset_tag, tag_t old_file,
$ t2 y7 I1 v1 q8 |4 M1 s - char *new_file_path, char *ref_name)( ?3 D3 Z9 p1 d, b
- {
5 d3 R3 F, c7 {6 q, F - IMF_file_data_p_t file_data;4 V. ^: X; ^( ^8 `5 Y/ V. w# b0 d
- IFERR_REPORT(IMF_get_file_access(old_file, 0, &file_data));
3 i' ]- U: q5 ]! t, L! i; @; { - : Y( m" e8 v6 ]1 {, g7 e+ y" _
- tag_t new_file_tag = NULLTAG;& {) H( E: i6 _ m% T
- IFERR_REPORT(AOM_lock(old_file));
) p* y6 }) l0 {4 Q - IFERR_REPORT(IMF_replace_file_and_get_new_tag(old_file, new_file_path,) P8 n$ m4 ^# g, y8 a
- FALSE, &new_file_tag)); 7 ]: @' X6 {+ |$ q7 O* ]
- / l& ~$ z1 E5 e/ t0 V! A
- IFERR_REPORT(AOM_lock(dataset_tag));/ w, ]# ~. E5 j4 c) V( v% b& r7 y4 L
- IFERR_REPORT(AE_replace_dataset_named_ref(dataset_tag, old_file, ref_name,- x4 I- ^) I( Y0 s: m9 h
- AE_PART_OF, new_file_tag));, e" z. {8 P* F" e! {. f
2 B% D9 p4 ?& q1 R! J+ o- IFERR_REPORT(AE_save_myself(dataset_tag));
$ `) C- M" O9 J+ `: j - IFERR_REPORT(AOM_unlock(dataset_tag));
' R. v+ e0 a0 w* G - IFERR_REPORT(IMF_release_file_access (&file_data));9 I2 D8 t! w8 P. Y7 I8 K
- % A- d. f3 U5 p4 e5 e, L, e
- /* assuming the old file should be deleted */5 t; e& F4 G# p- }
- IFERR_REPORT(AOM_lock_for_delete(old_file));
0 c. F s$ W4 ` - IFERR_REPORT(AOM_delete(old_file));
5 K D. D' I2 | a/ s - }
复制代码 + a+ y$ f: }! e9 _; N
+ d! ]' r6 x# ~9 R
$ w3 {! ]8 K" ]+ U+ V |
|