|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
Teamcenter ITK二次开发源码分享: 替换命名引用name reference( d- L7 L2 R! L0 O) d
5 R3 a: q7 I1 c0 ?% c3 J& ~- H6 c( B- B: Y% C4 b. _
- #include <ae/dataset.h>; t3 A( O% B8 C( \: ]8 |4 Z1 p9 x
- #include <sa/TCfile.h>, Y7 f2 K2 g. z& B
- #include <tccore/aom.h>) z( U/ J' R" \& m" w J5 h
- #include <sa/tcfile_cache.h>
' q9 q6 L; H: E- e - : e+ i/ n9 c3 y0 l( Q
- static void " b1 ~9 Y, g" C6 h, `6 \9 ^
- (tag_t dataset_tag, tag_t old_file,
( n9 M0 H7 C; A/ A) F& T* k - char *new_file_path, char *ref_name)
+ k9 u6 I6 t5 b$ q1 J5 t' b. a - {- r* g8 W4 R& m( U9 ^6 ~2 [' X
- IMF_file_data_p_t file_data;: h" M6 s* D5 t% k3 x7 c
- IFERR_REPORT(IMF_get_file_access(old_file, 0, &file_data));
) g+ G2 \8 t- ?/ @0 s# }( X8 R - + b$ \, l* z0 W
- tag_t new_file_tag = NULLTAG;
/ ~6 E( K: e% Y' R1 K - IFERR_REPORT(AOM_lock(old_file));6 V% M, G$ b$ _8 O2 V+ K
- IFERR_REPORT(IMF_replace_file_and_get_new_tag(old_file, new_file_path,
) ^/ p5 X, }+ I! j2 x# T0 o- f! v+ z1 A - FALSE, &new_file_tag)); 5 Z4 O- L; l, E4 h
. F R' @. M( D7 D- IFERR_REPORT(AOM_lock(dataset_tag));
" n$ y* x, o' E: {2 A5 b& @1 | - IFERR_REPORT(AE_replace_dataset_named_ref(dataset_tag, old_file, ref_name,6 N; u& i5 a+ w1 \
- AE_PART_OF, new_file_tag));
( J6 i2 X% _. N; c: m- l
1 |7 X4 ^5 n7 y+ a- IFERR_REPORT(AE_save_myself(dataset_tag));) [7 R$ C" b1 n2 Q
- IFERR_REPORT(AOM_unlock(dataset_tag));
- T) ?- ]9 P! z- Y% D! \7 G - IFERR_REPORT(IMF_release_file_access (&file_data));2 ~+ t' j3 V3 x) V
3 L7 o$ E3 i7 P, z7 l% H- /* assuming the old file should be deleted */
) A6 Z$ @/ l Y9 T: Y, a* h - IFERR_REPORT(AOM_lock_for_delete(old_file));
6 w9 W# N+ E T: D! X - IFERR_REPORT(AOM_delete(old_file));
7 r! ^$ E- l1 W) K - }
复制代码
& I i/ W2 u- Y5 d) K
: U7 u! a3 d7 X6 r0 ]5 v$ j! Z) |
|
|