|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
Teamcenter ITK二次开发源码分享: 替换命名引用name reference$ r$ W( l2 z2 c6 O5 x% n
$ j( K' b$ V2 A. J( F7 v# `5 `4 c9 Z: a3 _
- #include <ae/dataset.h>. B+ k9 d) f4 F: p1 _" r
- #include <sa/TCfile.h>
5 A# J, G. h# {% | - #include <tccore/aom.h>
2 q) S" R! R6 k9 n) p( O - #include <sa/tcfile_cache.h>, m! |- U) a7 g+ _+ [" M+ `$ i$ ~
$ S' W6 K2 I$ e6 b! q6 M% {- static void
: j7 [/ Q& s7 ~! d - (tag_t dataset_tag, tag_t old_file,# }& M" O5 b) V4 r( V T
- char *new_file_path, char *ref_name)
4 C$ ?; Z8 K4 p* m! m# ` - {
' I. v/ D9 ?8 @1 S+ ` - IMF_file_data_p_t file_data;! p. s, A* @$ @2 Q- |, a, _3 `# S
- IFERR_REPORT(IMF_get_file_access(old_file, 0, &file_data));
8 [% f' B& ]7 D. L
3 M4 M6 g0 p# ]: T+ i: T) h- tag_t new_file_tag = NULLTAG;
1 c- [* W8 c0 P2 ]! v) k5 J - IFERR_REPORT(AOM_lock(old_file));0 m+ a% M: ]/ Y7 z4 k
- IFERR_REPORT(IMF_replace_file_and_get_new_tag(old_file, new_file_path,) F; N) y) K* F( j/ q
- FALSE, &new_file_tag)); 3 j" Q3 f% j1 i v
- 9 A' y1 X9 M, N
- IFERR_REPORT(AOM_lock(dataset_tag));
3 \$ x- O; R' S - IFERR_REPORT(AE_replace_dataset_named_ref(dataset_tag, old_file, ref_name,
# U$ b X; L8 ] - AE_PART_OF, new_file_tag));
5 H8 C+ F1 C# X, b s1 [
' L1 B1 ?4 N* c: K: o- IFERR_REPORT(AE_save_myself(dataset_tag));
, E" A! U# a( K - IFERR_REPORT(AOM_unlock(dataset_tag));' |( Z5 ~9 R/ V3 Q. Y
- IFERR_REPORT(IMF_release_file_access (&file_data));
9 i4 ]( Y* V- T# j: _& s' S3 @
: h6 E5 Q& _( v. w3 \# n9 r4 D- /* assuming the old file should be deleted */$ [5 B" ~7 w* P% G) |/ _
- IFERR_REPORT(AOM_lock_for_delete(old_file));
" }+ T: P' W* G2 [- F - IFERR_REPORT(AOM_delete(old_file));) m1 b g- H* W# w
- }
复制代码 7 R! G4 G8 W- K( s2 I! ?
0 K+ a" P: \/ s* n8 N/ X% e2 X9 \2 t9 \) Q/ V: H
|
|