ITK Function Reference

(V10000.1.0.60_20160308.00)
ps.h
Go to the documentation of this file.
1 /*
2  ===============================================
3  Copyright 2006 UGS Corp. All Rights Reserved.
4  ===============================================
5 */
6 
7 
24 #ifndef PS_H_INCLUDED
25 #define PS_H_INCLUDED
26 
27 #include <ps/ps_errors.h>
28 #include <ps/ps_tokens.h>
29 #include <unidefs.h>
30 #include <ps/libps_exports.h>
31 
32 /* END OF HEADER */
33 
103 #ifdef __cplusplus
104  extern "C"{
105 #endif
106 
116  tag_t type_tag,
117  tag_t** valid_occs,
118  int* count
119  );
120 
125  tag_t view_type_tag,
126  tag_t* occ_type_tag
127  );
128 
132 extern PS_API int PS_ask_view_type_name(
133  tag_t view_type,
134  char** type_name
135  );
136 
140 extern PS_API int PS_find_view_type(
141  const char* type_name,
142  tag_t* view_type
143  );
144 
148 extern PS_API int PS_view_type_extent(
149  int* n_types,
150  tag_t** view_types
151  );
152 
153 extern PS_API int PS_get_displayable_view_types(
154  int* n_types,
155  tag_t** view_types
156  );
157 
163 extern PS_API int PS_ask_default_view_type(
164  tag_t* view_type
165  );
166 
182 extern PS_API int PS_find_occurrence_type(
183  const char* type_name,
184  tag_t* occ_type
185  );
186 
190 extern PS_API int PS_occurrence_type_extent(
191  int* n_types,
192  tag_t** occ_types
193  );
194 
198 extern PS_API int PS_ask_occurrence_type_name(
199  tag_t occ_type,
200  char** type_name
201  );
202 
219 extern PS_API int PS_create_bom_view(
220  tag_t view_type,
221  const char* view_name,
223  const char* view_desc,
224  tag_t parent_item,
225  tag_t* bom_view
226  );
227 
243 extern PS_API int PS_default_bom_view_name(
244  tag_t item,
245  tag_t view_type,
246  char** name
247  );
248 
252 extern PS_API int PS_delete_bom_view(
253  tag_t bom_view
254  );
255 
259 extern PS_API int PS_ask_item_of_bom_view(
260  tag_t bom_view,
261  tag_t* item
262  );
263 
267 extern PS_API int PS_ask_bom_view_type(
268  tag_t bom_view,
269  tag_t* view_type
270  );
271 
275 extern PS_API int PS_set_bom_view_type(
276  tag_t bom_view,
277  tag_t view_type
278  );
279 
283 extern PS_API int PS_list_bvrs_of_bom_view(
284  tag_t bom_view,
285  int* n_bvrs,
286  tag_t** bvrs
287  );
288 
306 extern PS_API int PS_create_bvr(
307  tag_t bom_view,
308  const char* revision_name,
310  const char* revision_desc,
311  logical precise,
313  tag_t parent_ir,
314  tag_t* bvr
315  );
316 
341 extern PS_API int PS_revise_bvr(
342  tag_t source_bvr,
343  const char* revision_name,
345  const char* revision_desc,
346  tag_t parent_ir,
347  tag_t* new_bvr
348  );
349 
361 extern PS_API int PS_copy_bvr(
362  tag_t source_bvr,
363  tag_t bom_view,
364  const char* revision_name,
366  const char* revision_desc,
367  tag_t parent_ir,
368  tag_t* new_bvr
369  );
370 
371 extern PS_API int PS_bvr_translate_mvl(
372  tag_t bvr,
373  int n_modules,
374  char** from_modules,
375  char** to_modules
376  );
377 
395 extern PS_API int PS_default_bvr_name(
396  tag_t item_revision,
397  tag_t view_type,
399  char** name
400  );
401 
405 extern PS_API int PS_delete_bvr(
406  tag_t bvr
407  );
408 
412 extern PS_API int PS_ask_bom_view_of_bvr(
413  tag_t bvr,
414  tag_t* bom_view
415  );
416 
421 extern PS_API int PS_ask_is_bvr_precise(
422  tag_t bvr,
423  logical* is_precise
424  );
425 
437 extern PS_API int PS_set_bvr_precise(
438  tag_t bvr
439  );
440 
451 extern PS_API int PS_set_bvr_imprecise(
452  tag_t bvr
453  );
454 
458 extern PS_API int PS_list_occurrences_of_bvr(
459  tag_t bvr,
460  int* n_occurrences,
461  tag_t** occurrences
462  );
463 
475 extern PS_API int PS_list_owning_revs_of_bvr(
476  tag_t bvr,
477  int* n_item_revs,
478  tag_t** item_revs
479  );
480 
492 extern PS_API int PS_ask_is_bvr_shared(
493  tag_t bvr,
494  logical* is_shared
495  );
496 
500 extern PS_API int PS_ask_struct_modified_date(
501  tag_t bvr,
502  date_t* struct_dlm
503  );
504 
511 extern PS_API int PS_ask_legacy_transform_factor(
512  tag_t bvr,
513  double* legacy_factor
514  );
515 
521 extern PS_API int PS_set_legacy_transform_factor(
522  tag_t bvr,
523  double legacy_factor
524  );
525 
531 extern PS_API int PS_remove_legacy_transform_factor(
532  tag_t bvr
533  );
534 
557 extern PS_API int PS_add_predecessor(
558  tag_t bvr,
559  tag_t occ,
560  tag_t predecessor
561  );
562 
572 extern PS_API int PS_remove_predecessor(
573  tag_t bvr,
574  tag_t occ,
575  tag_t predecessor
576  );
577 
581 extern PS_API int PS_list_predecessors(
582  tag_t bvr,
583  tag_t occ,
584  int* count,
585  tag_t** pred
586  );
587 
610 extern PS_API int PS_create_occurrences(
611  tag_t parent,
612  tag_t child_item,
613  tag_t child_bom_view,
614  int n_occurrences,
615  tag_t** occurrences
616  );
621 extern PS_API int PS_create_occurrences_with_occ_type(
622  tag_t parent,
623  tag_t child_item,
624  tag_t child_bom_view,
625  int n_occurrences,
626  tag_t occType,
627  tag_t** occurrences
628  );
629 
633 extern PS_API int PS_create_occurrences_tag_validation(
634  tag_t parent,
635  tag_t child_item,
636  int n_occurrences
637  );
638 
642 extern PS_API int PS_verify_occurrence_conditions
643 (
644  tag_t parent_rev_tag,
645  tag_t child_rev_tag
646 );
658 extern PS_API int PS_delete_occurrence(
659  tag_t parent,
660  tag_t occurrence
661  );
662 
666 extern PS_API int PS_set_occurrence_type(
667  tag_t parent,
668  tag_t occurrence,
669  const char* occTypeString
670  );
671 
675 extern PS_API int PS_ask_occurrence_type(
676  tag_t parent,
677  tag_t occurrence,
678  char** occTypeString
679  );
680 
688 extern PS_API int PS_ask_occurrence_child(
689  tag_t parent,
690  tag_t occurrence,
691  tag_t* child_item,
692  tag_t* child_bom_view
693  );
694 
710 extern PS_API int PS_set_occurrence_child(
711  tag_t parent,
712  tag_t occurrence,
713  tag_t child_item,
714  tag_t child_bom_view
715  );
716 
722 extern PS_API int PS_ask_seq_no(
723  tag_t parent,
724  tag_t occurrence,
725  char** seq_no
726  );
727 
737 extern PS_API int PS_set_seq_no(
738  tag_t parent,
739  tag_t occurrence,
740  const char* seq_no
741  );
742 
743 extern PS_API int PS_ask_occurrence_name(
744  tag_t parent,
745  tag_t occurrence,
746  char** occurrence_name
747  );
748 
749 extern PS_API int PS_set_occurrence_name(
750  tag_t parent,
751  tag_t occurrence,
752  const char* occurrence_name
753  );
754 
760 extern PS_API int PS_ask_occ_clone_stable_uid(
761  tag_t parent,
762  tag_t occurrence,
763  char** clone_stable_uid
764  );
765 
769 extern PS_API int PS_ask_occurrence_ref_designator(
770  tag_t parentBVR,
771  tag_t occThread,
772  char** refDesignator
773  );
774 
778 extern PS_API int PS_set_occurrence_ref_designator(
779  tag_t parentBVR,
780  tag_t occThread,
781  const char *refDesignator
782  );
783 
793 extern PS_API int PS_ask_occurrence_qty(
794  tag_t parent,
795  tag_t occurrence,
796  double* qty
797  );
798 
809 extern PS_API int PS_set_occurrence_qty(
810  tag_t parent,
811  tag_t occurrence,
812  double qty
813  );
814 
821 extern PS_API int PS_ask_occurrence_flag(
822  tag_t parent,
823  tag_t occurrence,
824  int flag,
826  logical* is_set
827  );
828 
840 extern PS_API int PS_set_occurrence_flag(
841  tag_t parent,
842  tag_t occurrence,
843  int flag
845  );
846 
858 extern PS_API int PS_clear_occurrence_flag(
859  tag_t parent,
860  tag_t occurrence,
861  int flag
863  );
864 
880 extern PS_API int PS_ask_transform(
881  tag_t parent,
882  tag_t occurrence,
883  double** transform
885  );
886 
895 extern PS_API int PS_ask_plmxml_transform(
896  tag_t parent,
897  tag_t occurrence,
898  double** transform
911  );
912 
931 extern PS_API int PS_set_plmxml_transform(
932  tag_t parent,
933  tag_t occurrence,
934  double* transform
947  );
948 
968 extern PS_API int PS_convert_legacy_transform(
969  tag_t parent,
970  tag_t occurrence,
971  double** ext_transform
984  );
985 
997 extern PS_API int PS_move_occurrence_to(
998  tag_t parent,
999  tag_t occurrence,
1000  int new_index
1002  );
1003 
1015 extern PS_API int PS_move_occurrence_up(
1016  tag_t parent,
1017  tag_t occurrence
1018  );
1019 
1031 extern PS_API int PS_move_occurrence_down(
1032  tag_t parent,
1033  tag_t occurrence
1034  );
1035 
1045 extern PS_API int PS_list_occurrence_notes(
1046  tag_t parent,
1047  tag_t occurrence,
1048  int* n_notes,
1049  tag_t** note_types
1051  );
1052 
1061 extern PS_API int PS_ask_occurrence_note_text(
1062  tag_t parent,
1063  tag_t occurrence,
1064  tag_t note_type,
1065  char** text
1066  );
1067 
1082 extern PS_API int PS_set_occurrence_note_text(
1083  tag_t parent,
1084  tag_t occurrence,
1085  tag_t note_type,
1086  const char* text
1087  );
1088 
1101 extern PS_API int PS_delete_occurrence_note(
1102  tag_t parent,
1103  tag_t occurrence,
1104  tag_t note_type
1105  );
1106 
1132 extern PS_API int PS_list_substitutes(
1133  tag_t parent,
1134  tag_t occurrence,
1135  int* n_substitutes,
1136  tag_t** sub_items,
1137  tag_t** sub_views
1138  );
1139 
1143 extern PS_API int PS_ask_has_substitutes(
1144  tag_t parent,
1145  tag_t occurrence,
1146  logical* has_substitutes
1147  );
1148 
1156 extern PS_API int PS_add_substitute(
1157  tag_t parent,
1158  tag_t occurrence,
1159  tag_t child_item,
1160  tag_t child_bom_view
1161  );
1162 
1168 extern PS_API int PS_delete_substitute(
1169  tag_t parent,
1170  tag_t occurrence,
1171  tag_t child_item
1172  );
1173 
1182 extern PS_API int PS_prefer_substitute(
1183  tag_t parent,
1184  tag_t occurrence,
1185  tag_t child_item,
1186  logical* is_temporary
1187  );
1188 
1205 extern PS_API int PS_ask_has_variant_data(
1206  tag_t parent,
1207  tag_t occurrence,
1208  logical* has_variant_data
1209  );
1210 
1215 extern PS_API int PS_ask_variant_data(
1216  tag_t parent,
1217  tag_t occurrence,
1218  tag_t* variant_expression_block
1220  );
1221 
1226 extern PS_API int PS_set_variant_data(
1227  tag_t parent,
1228  tag_t occurrence,
1229  tag_t variant_expression_block
1231  );
1232 
1238 extern PS_API int PS_load_variant_expr_blocks(
1239  int n_blocks,
1240  tag_t * variant_expression_blocks,
1241  logical force_sub_expr_check
1242  );
1243 
1249 extern PS_API int PS_load_variant_exprs(
1250  int n_exprs,
1251  tag_t * variant_expressions,
1252  logical force_sub_expr_check
1253  );
1254 
1268 extern PS_API int PS_define_client_data(
1269  int ps_class,
1270  const char* attr_name,
1271  tag_t ref_class,
1272  int property
1278  );
1279 
1280 #ifdef __cplusplus
1281 }
1282 #endif
1283 
1284 #ifdef __cplusplus
1285  extern "C"{
1286 #endif
1287 
1291 extern PS_API int PS_delete_client_data_defn(
1292  int ps_class,
1293  const char* attr_name
1294  );
1295 
1301 extern PS_API int PS_describe_client_data(
1302  int ps_class,
1303  const char* attr_name,
1304  tag_t* ref_class,
1305  int* property
1309  );
1310 
1320 extern PS_API int PS_ask_client_data(
1321  tag_t instance,
1322  const char* attr_name,
1323  tag_t* client_data
1326  );
1327 
1340 extern PS_API int PS_set_client_data(
1341  tag_t instance,
1342  const char* attr_name,
1343  tag_t client_data
1344  );
1345 
1352 extern PS_API int PS_ask_occurrence_client_data(
1353  tag_t parent,
1354  tag_t occurrence,
1355  const char* attr_name,
1356  tag_t* client_data
1357  );
1358 
1367 extern PS_API int PS_set_occurrence_client_data(
1368  tag_t parent,
1369  tag_t occurrence,
1370  const char* attr_name,
1371  tag_t client_data
1372  );
1373 
1382 extern PS_API int PS_note_type_extent(
1383  int* n_note_types,
1384  tag_t** note_types
1385  );
1386 
1390 extern PS_API int PS_find_note_type(
1391  const char* name,
1392  tag_t* note_type
1393  );
1394 
1398 extern PS_API int PS_ask_note_type_name(
1399  tag_t note_type,
1400  char** name
1401  );
1402 
1406 extern PS_API int PS_ask_note_type_description(
1407  tag_t note_type,
1408  char** description
1409  );
1410 
1414 extern PS_API int PS_ask_note_type_default_value(
1415  tag_t note_type,
1416  char** default_value
1417  );
1418 
1482 extern PS_API int PS_where_used_all(
1483  tag_t target_tag,
1484  int n_levels,
1487  int* n_parents,
1488  int** levels,
1490  tag_t** parents
1492  );
1493 
1497 extern PS_API int PS_where_used_precise(
1498  tag_t target_tag,
1499  int n_levels,
1502  int* n_parents,
1503  int** levels,
1505  tag_t** parents
1507  );
1508 
1517 extern PS_API int PS_where_used_configured(
1518  tag_t target_tag,
1519  tag_t rev_rule,
1520  int n_levels,
1523  int* n_parents,
1524  int** levels,
1526  tag_t** parents
1528  );
1529 
1543 extern PS_API int PS_system_default_bom_view_name(
1544  tag_t item,
1545  tag_t view_type,
1546  char** name
1547  );
1548 
1560 extern PS_API int PS_system_default_bvr_name(
1561  tag_t item_revision,
1562  tag_t view_type,
1563  char** name
1564  );
1565 
1566 extern PS_API int PS_has_form_attached_to_ug_dataset(
1567  tag_t item_rev,
1568  logical* result
1569  );
1570 extern PS_API int PS_list_related_substitutes
1571 (
1572  tag_t occurrence,
1573  tag_t sub_item,
1574  int *n_items,
1575  tag_t **related_occs,
1576  tag_t **related_items
1577 );
1578 
1579 extern PS_API int PS_add_related_substitutes
1580 (
1581  int n_items,
1582  tag_t *occurrences,
1583  tag_t *sub_items,
1584  tag_t *substitute_set
1585 );
1586 
1587 extern PS_API int PS_remove_related_substitutes
1588 (
1589  int n_items,
1590  tag_t *occurrences,
1591  tag_t *sub_items
1592 );
1593 
1594 extern PS_API int PS_change_to_replace(tag_t oldBvr,
1595  tag_t oldOccTag,
1596  tag_t newBvr,
1597  tag_t newOccTag
1598  );
1606 extern PS_API int PS_bvr_ask_default_next_seq_no(
1607  tag_t bvr,
1608  tag_t child_item,
1609  char** seq_no
1610  );
1611 
1620 extern PS_API int PS_occ_eff_create(
1621  tag_t bvr,
1622  tag_t occ,
1623  tag_t * eff
1624  );
1625 
1629 extern PS_API int PS_occ_eff_add_eff(
1630  tag_t bvr,
1631  tag_t occ,
1632  tag_t eff
1633  );
1634 
1638 extern PS_API int PS_occ_eff_remove_eff(
1639  tag_t bvr,
1640  tag_t occ,
1641  tag_t eff
1642  );
1643 
1648 extern PS_API int PS_occ_eff_set_id(
1649  tag_t bvr,
1650  tag_t occ,
1651  tag_t eff,
1652  const char * id
1653  );
1654 
1658 extern PS_API int PS_occ_eff_set_protection(
1659  tag_t bvr,
1660  tag_t occ,
1661  tag_t eff,
1662  logical protection
1663  );
1664 
1668 extern PS_API int PS_occ_eff_set_enditem(
1669  tag_t bvr,
1670  tag_t occ,
1671  tag_t eff,
1672  tag_t enditem
1673  );
1674 
1678 extern PS_API int PS_occ_eff_set_enditemrev(
1679  tag_t bvr,
1680  tag_t occ,
1681  tag_t eff,
1682  tag_t enditemrev
1683  );
1684 
1688 extern PS_API int PS_occ_eff_set_unit_range(
1689  tag_t bvr,
1690  tag_t occ,
1691  tag_t eff,
1692  const char * range_text,
1695  logical append
1697  );
1698 
1702 extern PS_API int PS_occ_eff_set_units(
1703  tag_t bvr,
1704  tag_t occ,
1705  tag_t eff,
1706  int n_units,
1707  int* start_end_values,
1715  int open_ended_or_stock_out,
1717  logical append
1719  );
1720 
1724 extern PS_API int PS_occ_eff_set_date_range(
1725  tag_t bvr,
1726  tag_t occ,
1727  tag_t eff,
1728  const char * range_text,
1732  logical append
1734  );
1735 
1739 extern PS_API int PS_occ_eff_set_dates(
1740  tag_t bvr,
1741  tag_t occ,
1742  tag_t eff,
1743  int n_dates,
1744  date_t* start_end_values,
1752  int open_ended_or_stock_out,
1754  logical append
1756  );
1757 
1761 extern PS_API int PS_occ_eff_ask_effs(
1762  tag_t bvr,
1763  tag_t occ,
1764  int * n_effs,
1765  tag_t ** effs
1766  );
1767 
1771 extern PS_API int PS_occ_eff_ask_id(
1772  tag_t bvr,
1773  tag_t occ,
1774  tag_t eff,
1775  char ** id
1776  );
1777 
1781 extern PS_API int PS_occ_eff_ask_protection(
1782  tag_t bvr,
1783  tag_t occ,
1784  tag_t eff,
1785  logical * protection
1786  );
1787 
1791 extern PS_API int PS_occ_eff_ask_enditem(
1792  tag_t bvr,
1793  tag_t occ,
1794  tag_t eff,
1795  tag_t * enditem
1796  );
1797 
1801 extern PS_API int PS_occ_eff_ask_enditemrev(
1802  tag_t bvr,
1803  tag_t occ,
1804  tag_t eff,
1805  tag_t * enditemrev
1806  );
1807 
1811 extern PS_API int PS_occ_eff_ask_range_type(
1812  tag_t bvr,
1813  tag_t occ,
1814  tag_t eff,
1815  int* range_type
1817  );
1818 
1822 extern PS_API int PS_occ_eff_ask_unit_range(
1823  tag_t bvr,
1824  tag_t occ,
1825  tag_t eff,
1826  char ** range_text
1827  );
1828 
1832 extern PS_API int PS_occ_eff_ask_units(
1833  tag_t bvr,
1834  tag_t occ,
1835  tag_t eff,
1836  int* n_units,
1837  int** start_end_values,
1838  int* open_ended_or_stock_out
1840  );
1841 
1845 extern PS_API int PS_occ_eff_ask_date_range(
1846  tag_t bvr,
1847  tag_t occ,
1848  tag_t eff,
1849  char ** range_text
1850  );
1851 
1855 extern PS_API int PS_occ_eff_ask_dates(
1856  tag_t bvr,
1857  tag_t occ,
1858  tag_t eff,
1859  int* n_dates,
1860  date_t** start_end_values,
1861  int* open_ended_or_stock_out
1863  );
1864 
1867 extern PS_API int PS_add_optional_item
1868 (
1869  tag_t parent,
1870  tag_t occurrence,
1871  tag_t child_item,
1872  tag_t opt_item,
1873  tag_t opt_rev,
1874  tag_t opt_view,
1875  tag_t *optlist
1876 );
1877 
1878 extern PS_API int PS_remove_optional_item
1879 (
1880  tag_t parent,
1881  tag_t occurrence,
1882  tag_t child_item,
1883  tag_t opt_item,
1884  tag_t opt_rev,
1885  tag_t opt_view
1886 );
1887 
1888 extern PS_API int PS_list_optional_items
1889 (
1890  tag_t parent,
1891  tag_t occurrence,
1892  tag_t child_item,
1893  int *count,
1894  tag_t **opt_items
1895 );
1896 
1897 extern PS_API int PS_ask_latest_option_rev
1898  ( tag_t variant,
1899  tag_t *variantRev
1900  );
1901 
1902 
1910 extern PS_API int PS_variant_expression_new_persistent_id(
1911  char** variant_expression_persistent_id
1912  );
1913 
1916 #ifdef __cplusplus
1917 }
1918 #endif
1919 
1920 #include <ps/libps_undef.h>
1921 
1922 #endif