|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
Teamcenter ITK二次开发源码分享: 替换命名引用name reference) H2 C$ N6 _ T; ]- B
% }, Z. ^. I' D1 Q! V/ }6 J( U: D! a: {& k5 {9 s
- #include <ae/dataset.h>
4 ^0 m' s4 L1 i& [7 P" e% y% \$ Z - #include <sa/TCfile.h>0 `! T B8 w+ H9 m+ {; g( \
- #include <tccore/aom.h>
4 @# O0 R2 H5 s9 X9 R! u" ] - #include <sa/tcfile_cache.h>' I. | Y2 w4 a( m
- 4 b1 x, f4 p& X* N4 e# u" ]
- static void % \& U0 @1 R0 z# r6 _* P" l3 ?
- (tag_t dataset_tag, tag_t old_file,
$ i+ v# Z! t% H, C% A - char *new_file_path, char *ref_name)" F; _+ x% a: x: s& R
- {
# S' V0 k( B; S- ^8 _ - IMF_file_data_p_t file_data;
# e& b' q6 q- j0 i - IFERR_REPORT(IMF_get_file_access(old_file, 0, &file_data));
, o% F# D9 @: _" n$ x
) P+ R5 x8 v0 A. K' \0 }- tag_t new_file_tag = NULLTAG;/ `# f. b8 O2 S% U' h
- IFERR_REPORT(AOM_lock(old_file));6 `4 c$ A7 w7 v* I0 X7 w$ K
- IFERR_REPORT(IMF_replace_file_and_get_new_tag(old_file, new_file_path,5 Z- }4 B$ L% h" I! S
- FALSE, &new_file_tag));
. T8 Z8 j2 b- C
, O+ u* O4 g3 x- IFERR_REPORT(AOM_lock(dataset_tag));
8 `) U( y" @5 u2 M0 g - IFERR_REPORT(AE_replace_dataset_named_ref(dataset_tag, old_file, ref_name,# z' A7 Q; q; r: r
- AE_PART_OF, new_file_tag));
* v$ Y% S+ @! I+ r/ p$ _; d6 a
8 I0 S- C& M9 r) e- IFERR_REPORT(AE_save_myself(dataset_tag));# x/ H* M4 h% g5 d9 d/ o9 B
- IFERR_REPORT(AOM_unlock(dataset_tag));
: S5 q q; `1 }! t& z1 K% A t - IFERR_REPORT(IMF_release_file_access (&file_data));
7 ^" R) k9 U* l4 H% l4 Z3 U* l - : Q7 J9 v1 c) Y( |7 x- N
- /* assuming the old file should be deleted */
% D) r& n) `0 \! F2 T: u - IFERR_REPORT(AOM_lock_for_delete(old_file));1 Q+ [5 |2 r+ G6 Q M
- IFERR_REPORT(AOM_delete(old_file));
7 C& L7 G* O" [: h: ]" I# n0 h. b - }
复制代码
1 q) t$ }% `4 f5 k9 O1 c# g' w( I! V' i4 j. a/ T. L3 U
. y% w( D6 a. i8 {% }# [- a |
|