|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
Teamcenter ITK二次开发源码分享: 替换命名引用name reference
, B) |, X" J% N
9 I- @! k, e1 N$ e% Y: h! F1 w$ J# c: B5 m4 R0 c" G
- #include <ae/dataset.h>, r S% N% l$ C& G
- #include <sa/TCfile.h>. q/ q9 t" s+ `5 {7 ?3 s
- #include <tccore/aom.h>2 ?) Y* U( x; U8 n% [; x
- #include <sa/tcfile_cache.h>
8 ~% y" n+ H! t+ |$ u3 { - 6 ~2 ]+ i' w* ]" w# }1 ]5 p
- static void
4 B0 R j; j; ]5 l# m: e0 I - (tag_t dataset_tag, tag_t old_file,' r2 t* K: i" m. r$ W: I0 Y& g
- char *new_file_path, char *ref_name)
# w8 q% v' G7 ^/ A7 r& T - {% Y1 s0 K; p8 |( R. J# O! E1 X, i8 m
- IMF_file_data_p_t file_data;8 s1 L3 ?% k- P" q& c
- IFERR_REPORT(IMF_get_file_access(old_file, 0, &file_data));
: F0 y' T8 F) b7 U$ x4 C7 a
% b2 X+ F( l- Q3 y- tag_t new_file_tag = NULLTAG;
U- E2 _7 Y* k0 c# C - IFERR_REPORT(AOM_lock(old_file));
$ p5 v3 a% K# s$ D- {" c w - IFERR_REPORT(IMF_replace_file_and_get_new_tag(old_file, new_file_path,
. `5 o& l. k5 v - FALSE, &new_file_tag)); \- F! L5 d& y/ Q% F0 d, n
8 t& Z2 C E- f# \+ t- IFERR_REPORT(AOM_lock(dataset_tag));7 [0 {: P: i( n) l
- IFERR_REPORT(AE_replace_dataset_named_ref(dataset_tag, old_file, ref_name,5 c1 K3 k8 d# Y# f7 x0 m* {7 `
- AE_PART_OF, new_file_tag));2 s0 v% D% y! Z6 H- v# g2 b* @& r
- $ d/ l1 Q i# f- s) A
- IFERR_REPORT(AE_save_myself(dataset_tag));) w, q" j: }2 \/ Q" o* h: e
- IFERR_REPORT(AOM_unlock(dataset_tag));
3 D( H# m' o& { - IFERR_REPORT(IMF_release_file_access (&file_data));
4 J7 s0 S4 ?6 p. x7 H9 j& B4 n - 5 V9 c0 i8 T; g! w+ y
- /* assuming the old file should be deleted */" \) B& P' q4 r* ]6 d! t9 ~/ q
- IFERR_REPORT(AOM_lock_for_delete(old_file));
% C5 M' ^- h( O& J( ]6 s r. ] - IFERR_REPORT(AOM_delete(old_file));
' d J( F, H9 z1 a9 G. U- e9 x7 t - }
复制代码
# H( T- E8 X- ]% F/ c/ X& l
3 ], c% M3 Q9 c: s: Z' a4 B
, ^ z' o4 T+ K4 H |
|