ITK Function Reference

(V10000.1.0.60_20160308.00)
bomwriter.h
Go to the documentation of this file.
1 /*==============================================================================
2  Copyright (c) 2003-2005 UGS Corporation
3  Unpublished - All Rights Reserved
4  ==============================================================================*/
5 
12 /* */
13 
14 #ifndef BOMWRITER_H
15 #define BOMWRITER_H
16 
17 #include <unidefs.h>
18 #include <stdio.h>
19 #include <bom/libbom_exports.h>
20 
238 #define BOM_writer_node_unset 0
239 #define BOM_writer_node_selected (1<<0)
240 #define BOM_writer_node_ancestor (1<<1)
241 #define BOM_writer_node_descendant (1<<2)
242 #define BOM_writer_node_leaf (1<<3)
243 #define BOM_writer_node_assy_geom (1<<4)
244 #define BOM_writer_node_subselected (1<<5)
245 #define BOM_writer_node_subancestor (1<<6)
246 #define BOM_writer_node_subdescendant (1<<7)
247 
257 typedef char* (*BOM_writer_userfunc_t)(
258  tag_t bomline,
259  tag_t parent,
263  void* transform,
264  int node_reason,
274  int depth,
275  void* userdata
276  );
277 
281 typedef struct{
282  long struct_type;
283  void* object;
285 
292 #define BOMWRITER_UA_TARGET "target:"
293 #define BOMWRITER_UA_PREF "pref:"
294 #define BOMWRITER_UA_ATTRMAP "attrmap:"
295 #define BOMWRITER_UA_KEY "key:"
296 #define BOMWRITER_UA_PROP "prop:"
297 #define BOMWRITER_UA_ATTR "attr:"
298 #define BOMWRITER_UA_LITERAL "literal:"
299 #define BOMWRITER_UA_PROPUID "propuid:"
300 
321 typedef struct{
323  FILE* filehandle;
325 
345 typedef struct{
347  char* smstring;
351 
352 typedef union{
357 
370 typedef char* (*BOM_writer_empty_ep_t)(
371  tag_t bomline,
372  tag_t parent,
376  void* transform,
377  int node_reason,
387  int depth,
388  int count,
389  void* userdata,
390  int* prune
391  );
392 
393 typedef int (*BOM_writer_asktform_t)(
394  tag_t bomline,
395  int depth,
396  void** transform
397  );
398 
399 typedef int (*BOM_writer_combtform_t)(
400  void* transform1,
401  void* transform2,
402  void** result
403  );
404 
405 typedef int (*BOM_writer_freetform_t)(
406  void* transform
407  );
408 
413 typedef struct{
415  BOM_writer_empty_ep_t enter_parent;
420  BOM_writer_asktform_t ask_transform;
423  BOM_writer_combtform_t combine_transforms;
426  BOM_writer_freetform_t free_transform;
428  void* userdata;
430 
440 
441 typedef char* (*BOM_writer_ajtfilefunc_t)(
442  tag_t dataset,
443  tag_t imanfile,
444  tag_t line,
445  void* userdata
446  );
447 
448 #define BOMWRITER_AJT_ROOT_UA_TARGET BOMWRITER_UA_TARGET "Root"
449 #define BOMWRITER_AJT_NODE_UA_TARGET BOMWRITER_UA_TARGET "Node"
450 
463 typedef struct{
465  logical supply_identity;
468  logical skip_fake_part; /* <I> [false] - if true, skip dummy parts for sub-assemblies*/
469  //Jane <17-Jan-2008> Add asm_jt_file flag to the AJT format
470  logical asm_jt_file; //[false] -- if false, only writer the leaf node files
471  // -- if true,writer files associated with both leaf nodes and assembly lines
478  void* userdata;
479  BOM_writer_ajt_file_style file_attr_style;
488  char** user_attributes;
490  long fatal_minor_errors;
494 
495 #define BOMWRITER_PLMXML_ROOT_UA_TARGET BOMWRITER_UA_TARGET "Root"
496 #define BOMWRITER_PLMXML_PART_UA_TARGET BOMWRITER_UA_TARGET "Part"
497 #define BOMWRITER_PLMXML_INSTANCE_UA_TARGET BOMWRITER_UA_TARGET "Instance"
498 #define BOMWRITER_PLMXML_OCCURRENCE_UA_TARGET BOMWRITER_UA_TARGET "Occurrence"
499 
515 typedef enum TransformType_e
516 {
522 typedef struct{
524  char* builder_name;
528  void* auto_doc;
530  char** user_attributes;
532  logical suppress_output;
535  long fatal_minor_errors;
540  char** lang_codes;
542  char* perf_file;
545  char* log_file;
547 
552 
564 typedef struct{
568 
575 };
576 
583 typedef struct{
586  int selected_count;
596  logical unload_lines;
600  logical transient_unpack;
604  logical emit_unselected_ancestors;
609  int sub_count;
616  int filter_by_level;
618  int bomset_max_lines;
620  logical varuid;
622  logical revid;
624  logical grdvua;
628 
631 #include <bom/libbom_undef.h>
632 #endif