ITK Function Reference

(V10000.1.0.60_20160308.00)
ics.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 I_ICS_HXX
15 #define I_ICS_HXX
16 
17 #include <pom/pom/pom.h>
18 #include <sa/sa.h>
19 #include <ics/ics_enquiry.h>
20 #include <ics/ics_errors.h>
21 #include <sa/sa.h>
22 #include <ics/libics_exports.h>
23 
45 typedef enum {
57 } ICS_type_t;
58 
59 #ifdef __cplusplus
60 extern "C"{
61 #endif
62 
63 //Fix for PR#1803764; Dummy function, it is no more required in version 10
64 extern ICS_API int ICS_init_module ( );
65 
69 extern ICS_API int ICS_exit_module ( );
70 
71 extern ICS_API int ICS_init_hooks ( );
72 
90 extern ICS_API int ICS_ask_top_class (
91  tag_t* topClass
92  );
93 
102 extern ICS_API int ICS_find_class (
103  const char* groupOrClassId,
104  tag_t* groupOrClass
105  );
106 
110 extern ICS_API int ICS_ask_id_name (
111  tag_t groupOrClassOrView,
112  char** id,
113  char** name
114  );
115 
120 extern ICS_API int ICS_find_view (
121  tag_t theClass,
122  const char* viewId,
123  tag_t* view
124  );
125 
133 extern ICS_API int ICS_ask_children (
134  tag_t groupOrClass,
135  int* nChildren,
136  tag_t** children
137  );
138 
139 extern ICS_API int ICS_ask_parent (
140  tag_t theChid,
141  tag_t* theParent
142  );
143 
154 extern ICS_API int ICS_ask_instances (
155  tag_t theClass,
156  tag_t view,
157  int* nInstances,
158  tag_t** instances
159  );
160 
161 extern ICS_API int ICS_ask_instance_count (
162  const char* ClassOrViewId,
163  int* nInstances
164  );
165 
176 extern ICS_API int ICS_search_instances (
177  tag_t theClass,
178  tag_t view,
179  int nAttributes,
180  int* attributeUncts,
181  char** queries,
182  int* nInstances,
184  tag_t** instances
185  );
186 
197 extern ICS_API int ICS_search_object_ids (
198  tag_t theClass,
199  tag_t view,
200  char* query,
201  int* nInstances,
203  tag_t** instances
204  );
205 
215 extern ICS_API int ICS_ask_attributes (
216  tag_t classOrView,
217  int* nAttributes,
218  tag_t** attributeList
219  );
220 
228 extern ICS_API int ICS_describe_view (
229  tag_t view,
230  int* nAttributes,
231  int** theAttrIDs,
232  int** theAttrFormats,
233  char*** theAttrAnnotations,
234  char*** theAttrNames,
235  char*** theAttrShortNames,
236  char*** theAttrUnits,
238  char*** theUserData1,
239  char*** configField,
240  char*** theUserData2,
241  int** theFlags
242  );
243 
244 
245 extern ICS_API int ICS_describe_config_field (
246  const char* configFieldString,
247  int* multiField,
248  logical* horizontal,
249  logical* vertical,
250  logical* separator,
251  logical* arrow,
252  logical* button,
253  logical* wide,
254  logical* mandatoryFlag,
255  logical* protectedFlag,
256  logical* uniqueFlag
257  );
258 
259 extern ICS_API int ICS_create_view_attributes (
260  tag_t view,
261  int nAttributes,
262  const char** attributeNames,
263  tag_t** attributes
264  );
265 
266 extern ICS_API int ICS_create_class_attributes (
267  tag_t theClass,
268  int nAttributes,
269  int* unctNumbers,
270  tag_t** attributes
271  );
272 
273 extern ICS_API int ICS_create_view (
274  tag_t theClass,
275  const char* viewId,
276  const char* viewName,
277  tag_t* newView
278  );
279 
285 extern ICS_API int ICS_ask_attribute_name (
286  tag_t classOrView,
287  tag_t attribute,
288  char** attributeName
289  );
290 
296 extern ICS_API int ICS_ask_attribute (
297  tag_t classOrView,
298  const char* attributeName,
299  tag_t* attribute
300  );
301 
307 extern ICS_API int ICS_describe_attribute (
308  tag_t classOrView,
309  tag_t attribute,
310  int* unctNo,
311  int* format,
312  char** unit
313  );
314 
335 extern ICS_API int ICS_create_unct (
336  int unctNo,
337  const char* unctName,
338  const char* shortName,
339  const char* unctUnit,
340  int unctFormat
341  );
342 
346 extern ICS_API int ICS_describe_unct (
347  int unctNo,
348  char** unctName,
349  char** shortName,
350  char** unctUnit,
351  int* unctFormat
352  );
353 
426 extern ICS_API int ICS_describe_format (
427  int format,
428  int* formatType,
429  int* modifier1,
430  int* modifier2,
431  int* length
432  );
433 
453 extern ICS_API int ICS_get_popup_definition (
454  int format,
455  int* count,
456  char*** optionIds,
457  char*** optionValues
458  );
459 
490 extern ICS_API int ICS_is_wsobject_classified (
491  tag_t wsObject,
492  logical* isClassified
493  );
494 
495 extern ICS_API int ICS_is_wsobject_classifiable (
496  tag_t wsObject,
497  logical* isClassifiable
498  );
499 
506 extern ICS_API int ICS_classify_wsobject (
507  tag_t wsObject,
508  tag_t classificationObject
509  );
510 
522 extern ICS_API int ICS_remove_classification (
523  tag_t wsObject
524  );
525 
533 extern ICS_API int ICS_delete_reference_to_wsobject (
534  tag_t wsObject
535  );
536 
544 extern ICS_API int ICS_delete_reference_to_ico (
545  tag_t classificationObject
546  );
547 
559 extern ICS_API int ICS_delete_classification_object (
560  tag_t classificationObject
561  );
562 
567 extern ICS_API int ICS_ask_classified_wsobject (
568  tag_t classificationObject,
569  tag_t* classifiedWSObject
570  );
571 
576 extern ICS_API int ICS_ask_classification_object (
577  tag_t wsObject,
578  tag_t* classificationObject
580  );
581 
593 extern ICS_API int ICS_create_classification_object (
594  tag_t ws_object,
595  const char* object_id,
596  tag_t view_or_class_tag,
597  tag_t* classification_object
598  );
599 
603 extern ICS_API int ICS_ask_class_of_classification_obj (
604  tag_t classificationObject,
605  tag_t* theClass
606  );
607 
611 extern ICS_API int ICS_ask_view_of_classification_obj (
612  tag_t classificationObject,
613  tag_t* view
614  );
615 
619 extern ICS_API int ICS_ask_classification_object_id (
620  tag_t classificationObject,
621  char** objectId
622  );
623 
627 extern ICS_API int ICS_ask_classification_instance_tag (
628  tag_t theClass,
629  tag_t theView,
630  char* classificationObjectId,
631  tag_t* classificationInstance
632  );
633 
637 extern ICS_API int ICS_ask_cid_sid_of_classification_obj (
638  tag_t classificationObject,
639  char** classId,
640  char** viewId
641  );
642 
646 extern ICS_API int ICS_ask_attributes_of_classification_obj (
647  tag_t classificationObject,
648  int* nAttributes,
649  char*** attributeNames,
650  char*** attributeValues
651  );
652 
661 extern ICS_API int ICS_ask_attribute_value (
662  tag_t classificationObject,
663  const char* attributeName,
664  char** attributeValue
665  );
666 
670 extern ICS_API int ICS_describe_classification_object (
671  tag_t classificationObject,
672  tag_t* view,
673  int* nAttributes,
674  int** unctNumbers,
675  int** unctFormats,
676  char*** attributeNames,
677  char*** attributeValues,
678  char*** units
679  );
680 
684 extern ICS_API int ICS_set_values_for_classification_obj (
685  tag_t classificationObject,
686  int nAttributes,
687  const char** attributeNames,
688  const char** attributeValues
689  );
690 
700 extern ICS_API int ICS_ask_type (
701  tag_t object,
702  int* objectType
703  );
704 
710 extern ICS_API int ICS_ask_image (
711  tag_t groupOrClassOrView,
712  tag_t* datasetTag
713  );
714 
719 extern ICS_API int ICS_resolve_ico_id (
720  tag_t wso,
721  int ico_index,
722  tag_t* prop_tag,
723  tag_t* type_tag
724  );
725 
730 extern ICS_API int ICS_resolve_attribute_id (
731  tag_t wso,
732  int attr_id,
733  int vla_pos,
734  tag_t* prop_tag,
735  tag_t* type_tag
736  );
737 
738 extern ICS_API int ICS_save_ico_by_rtico(
739  tag_t attrSyncTag
740  );
741 
742 extern ICS_API int ICS_cancel_ico_by_rtico(
743  tag_t objTag
744  );
745 
746 extern ICS_API int ICS_classid_is_valid(
747  char* cid,
748  char* sid,
749  logical* valid
750  );
751 
752 extern ICS_API int ICS_is_tag_ics_runtime_obj(
753  tag_t obj,
754  logical* is_an_ics_rt_obj
755  );
756 
761 extern ICS_API int ICS_receive_obj_created_from_nxmgr(
762  tag_t item_tag,
763  tag_t itemrev_tag,
765  tag_t dataset_tag,
767  int creation_type
770  );
771 
772 #if 0
773 extern ICS_API int ICS_sendObjects(
774  char theSite[SML_LONG_SITE_NAME_SIZE + 1],
775  int theObjectCount,
776  tag_t* theObjectTags
777  );
778 #endif
779 /*
780 ** Ensure all Classification hierarchy objects are synchronized to all or the given sites.
781 ** If no sites are given all sites will be synchronized
782 */
783 extern ICS_API int ICS_share_pending( int theSitesCount, const char** theSites, int theverbosity );
784 
785 
786 /*-----------------------------------------------------------------------------
787  The enums for the Object Types
788  Wherever applicable, Multiple Object types can be combined
789  using the '|' (bitwise OR) operator
790 -----------------------------------------------------------------------------*/
791 typedef enum ICS_objectType_s
792 {
794  ICS_ObjectType_keylov = ( 1 << 0 ),
796  ICS_ObjectType_class = ( 1 << 2 ),
797  ICS_ObjectType_view = ( 1 << 3 ),
800  ICS_ObjectType_all = (( 1 << 0 ) |
801  ( 1 << 1 ) |
802  ( 1 << 2 ) |
803  ( 1 << 3 ) |
804  ( 1 << 4 ) |
805  ( 1 << 5 ) ),
808 
822 typedef enum
823 {
825  ICS_xmlexport_parent = ( 1 << 1 ),
827  ICS_xmlexport_subclass = ( 1 << 3 ),
829  ICS_xmlexport_Hierarchy = ( 1 << 5 ),
835 
837 
841 typedef enum
842 {
848 
852 typedef enum
853 {
858 
863 #define ICS_xml_hook_cancel_object 1
864 
869 #define ICS_xml_cancel 2
870 
876 typedef int (*ICS_xml_hook_t)(
877  ICS_xml_hook_id_t theHookId,
878  ICS_xml_hook_type_t preOrPost,
879  int theObjectType,
880  const char* theObjectId
881  );
882 
895 extern ICS_API int ICS_xml_register_hook(
896  ICS_xml_hook_id_t theHookId,
897  ICS_xml_hook_t theHook
898  );
899 
910 extern ICS_API int ICS_xml_import(
911  const char* theXMLFileName,
912  int theObjectTypeFilter,
916  logical theUpdateFlag,
919  logical theRelatedCreationFlag
921  );
922 
927 extern ICS_API int ICS_xml_export(
928  const char* theXMLFileName,
929  ICS_objectType_t nObjType,
930  const char* theId,
931  int theObjectTypeFilter,
937  int theExportOptions
953  );
954 
955 #if 0
956 
961 extern ICS_API int ICS_xml_export(
962  const char* theXMLFileName,
963  int n_objectsToExport,
964  tag_t* theObjectsToExport,
965  int theObjectTypeFilter
966  );
967 #endif
968 
973 extern ICS_API int ICS_xml_ask_children(
974  const char* theParentId,
975  int theLevelCount,
976  logical theAdminMode,
977  int theSortOption,
978  logical theXMLOption,
979  char** theChildren
980  );
981 
987 ICS_API int ICS_ask_instances_by_id(
988  const char* theIcoId,
989  int* theCount,
990  tag_t** theInstanceTags
991  );
992 
996 extern ICS_API int ICS_format_value(
997  int howToFormat,
1004  int theFormat,
1005  const char* theMinValue,
1006  const char* theMaxValue,
1007  const char* theValue,
1008  char** theFormattedValue
1009  );
1010 
1013 #ifdef __cplusplus
1014 }
1015 #endif
1016 
1017 //For deImanization
1018 #include <ics/iman_ics.h>
1019 
1020 #include <ics/libics_undef.h>
1021 #endif