|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
Teamcenter ITK二次开发源码分享: 替换命名引用name reference% Z4 D, _* r: `) {+ ~# C
8 u4 e7 E+ U l1 o5 W
0 l% Z7 j0 M9 Y( g* h" {- #include <ae/dataset.h>
% W; M8 g. x& X- j - #include <sa/TCfile.h>
6 w% c2 {7 l- A4 c$ k3 P; G - #include <tccore/aom.h>
' X# e% q% Y. `" \ - #include <sa/tcfile_cache.h>
; W) A* Q( e$ H" \ - 3 R( O- |& N4 m6 w' u- z! x8 _
- static void ' I# P) Y/ G9 q; Q5 p3 w
- (tag_t dataset_tag, tag_t old_file,' c. H" q' I! o, A
- char *new_file_path, char *ref_name). L2 `' N8 N" u$ e
- {
' ~) \4 \8 o) k8 N3 v - IMF_file_data_p_t file_data;
2 d% g$ R& `0 ]# a/ k - IFERR_REPORT(IMF_get_file_access(old_file, 0, &file_data));
5 P0 o d& X& l- r) f* ]/ d - % ~* _0 _# S) Q* [& _2 a$ w
- tag_t new_file_tag = NULLTAG;
' j6 q' d1 B+ o, ^; C3 U - IFERR_REPORT(AOM_lock(old_file));6 C9 Y, v" c8 H O
- IFERR_REPORT(IMF_replace_file_and_get_new_tag(old_file, new_file_path,! O4 M. j0 q' @9 f5 N) }/ v" g
- FALSE, &new_file_tag)); 3 i% r A4 S3 F6 F# n' F9 Z6 g
, {1 \ V$ ^/ `$ d% n- IFERR_REPORT(AOM_lock(dataset_tag));
3 @% f; _5 t8 } - IFERR_REPORT(AE_replace_dataset_named_ref(dataset_tag, old_file, ref_name,6 w. y& c; S+ x; O; }$ N' e, B
- AE_PART_OF, new_file_tag));
, J2 I3 N1 \% r4 H - 5 r f0 N5 F; d) A8 [4 H, B
- IFERR_REPORT(AE_save_myself(dataset_tag));9 U9 u5 G+ S( `2 x4 q
- IFERR_REPORT(AOM_unlock(dataset_tag));
! F$ ~; G+ B* q3 a3 p6 t - IFERR_REPORT(IMF_release_file_access (&file_data));
4 W# ?7 k, I% Y3 K5 g. W+ S
5 [* n3 ?* l7 y. s- /* assuming the old file should be deleted */8 l& n. ] X2 }! g2 p5 w
- IFERR_REPORT(AOM_lock_for_delete(old_file));
* f3 Y3 H6 j: G; U/ A7 k* q - IFERR_REPORT(AOM_delete(old_file));$ a; T# b& f% k
- }
复制代码 7 t; X" k/ K2 N0 P% w
+ N; ?! E9 w4 Q$ K/ N0 K5 r. w0 ?. d
|
|