Main Page | Modules | Files | Functions | Code Elements | Data Structures | Deprecated

Guided Component Search


Detailed Description

GCS accelearates and simplifies the build process of assemblies. Only matching components will be selectable. Before GCS can be used the administrator has to produce the GCS information that define what components match to what components. This ITK contains all functions to create this GCS information.

You will use GCS ITK to:

Connection Type Functions (CT)

Connection Point Definition (for classes) Functions (CPD)

Connection Point Functions (CP)

General GCS Functions


Function Documentation

ICS_API int GCS_class_search ( tag_t  theCPTag,
int *  theCPCount,
tag_t **  theCPTags,
int *  theICOCount,
tag_t **  theICOTags,
int *  theClassCount,
char ***  theClassIDs 
)

This function searches for all matching CPs, ICOs and classes (including parents) containing those ICOs for a given CP.

Parameters:
theCPTag  (I)
theCPCount  (O)
theCPTags  (OF) theCPCount
theICOCount  (O)
theICOTags  (OF) theICOCount
theClassCount  (O)
theClassIDs  (OF) theClassCount

ICS_API int GCS_class_search_by_occ ( tag_t  theOccurrenceTag,
int *  theCPCount,
tag_t **  theCPTags,
int *  theICOCount,
tag_t **  theICOTags,
int *  theClassCount,
char ***  theClassIDs 
)

This function searches for all matching CPs, ICOs and classes (including parents) containing those ICOs for a given occurrence.

Parameters:
theOccurrenceTag  (I)
theCPCount  (O)
theCPTags  (OF) theCPCount
theICOCount  (O)
theICOTags  (OF) theICOCount
theClassCount  (O)
theClassIDs  (OF) theClassCount

ICS_API int GCS_cp_ask ( tag_t  theICOTag,
int *  theCPCount,
tag_t **  theCPTags 
)

This function returns all connection points for a given ICO.

Parameters:
theICOTag  (I)
theCPCount  (O)
theCPTags  (OF) theCPCount

ICS_API int GCS_cp_ask_cp_of_occ ( tag_t  theOccurrenceTag,
tag_t theCPTag,
tag_t theComponentTag,
tag_t theCPDTag,
tag_t theCTTag,
int *  theCPDIndex,
int *  theCPIndex,
char **  theDirection,
char **  theShape,
int *  theAttributeCount,
int **  theAttributeIds,
char ***  theAttributeValues 
)

This function returns the values (CP, component ICO, CPD, CT, CPD index, CP index, direction, shape and attribute values) for a given connection point occurrence.

Parameters:
theOccurrenceTag  (I)
theCPTag  (O)
theComponentTag  (O)
theCPDTag  (O)
theCTTag  (O)
theCPDIndex  (O)
theCPIndex  (O)
theDirection  (O)
theShape  (O)
theAttributeCount  (O)
theAttributeIds  (OF) theAttributeCount
theAttributeValues  (OF) theAttributeCount

ICS_API int GCS_cp_create_for_ICO ( tag_t  theICOTag  ) 

This function creates all connection points for a given ICO.

Parameters:
theICOTag  (I)

ICS_API int GCS_cp_create_for_ICO_and_CPD ( tag_t  theICOTag,
tag_t  theCPDTag 
)

This function creats the connection point for a given ICO corresponding to the given CPD.

Parameters:
theICOTag  (I)
theCPDTag  (I)

ICS_API int GCS_cp_describe ( tag_t  theCPTag,
tag_t theComponentTag,
tag_t theCPDTag,
tag_t theCTTag,
int *  theCPDIndex,
int *  theCPIndex,
char **  theDirection,
char **  theShape,
int *  theAttributeCount,
int **  theAttributeIds,
char ***  theAttributeValues 
)

This function returns the values (component ICO, CPD, CT, CPD index, CP index, direction, shape and attribute values) for a given connection point.

Parameters:
theCPTag  (I)
theComponentTag  (O)
theCPDTag  (O)
theCTTag  (O)
theCPDIndex  (O)
theCPIndex  (O)
theDirection  (O)
theShape  (O)
theAttributeCount  (O)
theAttributeIds  (OF) theAttributeCount
theAttributeValues  (OF) theAttributeCount

ICS_API int GCS_cp_remove ( tag_t  theCPTag  ) 

This function removes a given connection point.

Parameters:
theCPTag  (I)

ICS_API int GCS_cp_remove_for_ICO ( tag_t  theICOTag  ) 

This function removes all connection points for a given ICO.

Parameters:
theICOTag  (I)

ICS_API int GCS_cp_update ( tag_t  theCPTag  ) 

This function updates a given connection point (CP).

Parameters:
theCPTag  (I)

ICS_API int GCS_cp_update_for_ICO ( tag_t  theICOTag  ) 

This function updates all connection points for a given ICO.

Parameters:
theICOTag  (I)

ICS_API int GCS_cp_update_for_ICO_and_CPD ( tag_t  theICOTag,
tag_t  theCPDTag 
)

This function updates the connection point for a given ICO that corresponds to the given CPD.

Parameters:
theICOTag  (I)
theCPDTag  (I)

ICS_API int GCS_cpd_add ( tag_t  theClassTag,
tag_t  theCTTag,
int  theCPDIndex,
char *  theCPQuantity,
char *  theDirection,
char *  theShape,
int  theAttributeCount,
int *  theAttributeIds,
char **  theAttributeMappings,
tag_t theCPDTag 
)

This function adds a connection point definition to a given class, sets its values (CT, CPD index, CP quantity, direction, physical shape and attribute mapping), and returns the tag of the new connection point definition. It also creates or updates the associated connection points, and creates or updates items, item revisions, and PSConnections pertaining to their associated component ICOs.

Parameters:
theClassTag  (I)
theCTTag  (I)
theCPDIndex  (I)
theCPQuantity  (I)
theDirection  (I)
theShape  (I)
theAttributeCount  (I)
theAttributeIds  (I) theAttributeCount
theAttributeMappings  (I) theAttributeCount
theCPDTag  (O)

ICS_API int GCS_cpd_add_wsos ( tag_t  theClassTag,
tag_t  theCTTag,
int  theCPDIndex,
char *  theCPQuantity,
char *  theDirection,
char *  theShape,
int  theAttributeCount,
int *  theAttributeIds,
char **  theAttributeMappings,
logical  theCreateWsos,
tag_t theCPDTag 
)

This function adds a connection point definition to a given class, sets its values (CT, CPD index, CP quantity, direction, physical shape and attribute mapping), and returns the tag of the new connection point definition. It also creates or updates the associated connection points, and creates or updates items, item revisions, and PSConnections pertaining to their associated component ICOs, if this was requested by setting theCreateWsos to true.

Parameters:
theClassTag  (I)
theCTTag  (I)
theCPDIndex  (I)
theCPQuantity  (I)
theDirection  (I)
theShape  (I)
theAttributeCount  (I)
theAttributeIds  (I) theAttributeCount
theAttributeMappings  (I) theAttributeCount
theCreateWsos  (I)
theCPDTag  (O)

ICS_API int GCS_cpd_ask ( tag_t  theComponentClassTag,
int *  theCPDCount,
tag_t **  theCPDTags 
)

This function returns all connection point definitions that are defined for a given component class.

Parameters:
theComponentClassTag  (I)
theCPDCount  (O)
theCPDTags  (OF) theCPDCount

ICS_API int GCS_cpd_ask_instances ( tag_t  theCPDTag,
int *  theCPCount,
tag_t **  theCPTags,
tag_t **  theICOTags 
)

This function returns all connection points and ICOs using a given connection point definition.

Parameters:
theCPDTag  (I)
theCPCount  (O)
theCPTags  (OF) theCPCount
theICOTags  (OF) theCPCount

ICS_API int GCS_cpd_describe ( tag_t  theCPDTag,
tag_t theClassTag,
tag_t theCTTag,
int *  theCPDIndex,
char **  theCPQuantity,
char **  theDirection,
char **  theShape,
int *  theAttributeCount,
int **  theAttributeIds,
char ***  theAttributeMappings 
)

This function returns the values (component class, CT, CPD index, CP quantity, direction, physical shape (socket or plug) and attribute mapping) for a given connection point definition.

Parameters:
theCPDTag  (I)
theClassTag  (O)
theCTTag  (O)
theCPDIndex  (O)
theCPQuantity  (O)
theDirection  (O)
theShape  (O)
theAttributeCount  (O)
theAttributeIds  (OF) theAttributeCount
theAttributeMappings  (OF) theAttributeCount

ICS_API int GCS_cpd_remove ( tag_t  theCPDTag  ) 

This function removes a given connection point definition.

Warning:
When you remove a CPD with this function, all CPs for this CPD will be removed as well. This can have major consequences for the whole GCS system.
Parameters:
theCPDTag  (I)

ICS_API int GCS_cpd_set ( tag_t  theCPDTag,
tag_t  theClassTag,
tag_t  theCTTag,
int  theCPDIndex,
char *  theCPQuantity,
char *  theDirection,
char *  theShape,
int  theAttributeCount,
int *  theAttributeIds,
char **  theAttributeMappings 
)

This function sets the values (component class, CT, CPD index, CP quantity, direction, physical shape and attribute mapping) for a given, existing connection point definition. It also creates or updates the associated connection points, and creates or updates items, item revisions, and PSConnections pertaining to their associated component ICOs.

Parameters:
theCPDTag  (I)
theClassTag  (I)
theCTTag  (I)
theCPDIndex  (I)
theCPQuantity  (I)
theDirection  (I)
theShape  (I)
theAttributeCount  (I)
theAttributeIds  (I) theAttributeCount
theAttributeMappings  (I) theAttributeCount

ICS_API int GCS_cpd_set_wsos ( tag_t  theCPDTag,
tag_t  theClassTag,
tag_t  theCTTag,
int  theCPDIndex,
char *  theCPQuantity,
char *  theDirection,
char *  theShape,
int  theAttributeCount,
int *  theAttributeIds,
char **  theAttributeMappings,
logical  theCreateWsos 
)

This function sets the values (component class, CT, CPD index, CP quantity, direction, physical shape and attribute mapping) for a given, existing connection point definition. It also creates or updates the associated connection points, and creates or updates items, item revisions, and PSConnections pertaining to their associated component ICOs, if requested by setting theCreateWsos to true.

Parameters:
theCPDTag  (I)
theClassTag  (I)
theCTTag  (I)
theCPDIndex  (I)
theCPQuantity  (I)
theDirection  (I)
theShape  (I)
theAttributeCount  (I)
theAttributeIds  (I) theAttributeCount
theAttributeMappings  (I) theAttributeCount
theCreateWsos  (I)

ICS_API int GCS_cpd_update ( tag_t  theCPDTag  ) 

This function updates (and creates if needed) all connection points (CPs) for a given connection point definition (CPD). It also creates or updates the associated connection points, and creates or updates items, item revisions, and PSConnections pertaining to their associated component ICOs.

Parameters:
theCPDTag  (I)

ICS_API int GCS_cpd_update_wsos ( tag_t  theCPDTag,
logical  theCreateWsos 
)

This function updates (and creates if needed) all connection points (CPs) for a given connection point definition (CPD). It also creates or updates the associated connection points, and creates or updates items, item revisions, and PSConnections pertaining to their associated component ICOs, if requested by setting theCreateWsos to true.

Parameters:
theCPDTag  (I)
theCreateWsos  (I)

ICS_API int GCS_ct_ask ( int *  theCTCount,
tag_t **  theCTTags 
)

This function returns the count and the IDs of all connection types that are defined in the GCS system.

Parameters:
theCTCount  (O)
theCTTags  (OF) theCTCount

ICS_API int GCS_ct_ask_tag_for_name ( const char *  theCTName,
tag_t theCTTag 
)

This function returns the CT tag for a given CT name.

Parameters:
theCTName  (I)
theCTTag  (O)

ICS_API int GCS_ct_create ( char *  theCTName,
int  theAttributeCount,
int *  theAttributeIds,
char **  theComparisonCriteria,
tag_t theCTTag,
char **  theCTId 
)

This function creates a new connection type and sets its values (name, attributes and comparison criteria).

Parameters:
theCTName  (I)
theAttributeCount  (I)
theAttributeIds  (I)
theComparisonCriteria  (I)
theCTTag  (O)
theCTId  (OF)

ICS_API int GCS_ct_describe ( tag_t  theCTTag,
char **  theCTId,
char **  theCTName,
int *  theAttributeCount,
int **  theAttributeIds,
char ***  theAttributeNames,
char ***  theComparisonCriteria 
)

This function returns the values (ID, name, attributes and comparison criteria) for a given connection type.

Note:
theCTId, theCTName & theAttributeCount the must not be NULL pointers!

If you don't want to retrieve theAttributeIds, theAttributeNames or theComparisonCriteria you can use NULL pointers as arguments there.

Parameters:
theCTTag  (I)
theCTId  (O)
theCTName  (O)
theAttributeCount  (O)
theAttributeIds  (OF) theAttributeCount
theAttributeNames  (OF) theAttributeCount
theComparisonCriteria  (OF) theAttributeCount

ICS_API int GCS_ct_remove ( tag_t  theCTTag  ) 

This function removes a given connection type.

Warning:
When you remove a CT with this function, all CPDs and CPs using this CT will be removed as well. This can have major consequences for the whole GCS system.
Parameters:
theCTTag  (I)

ICS_API int GCS_ct_set ( tag_t  theCTTag,
char *  theCTName,
int  theAttributeCount,
int *  theAttributeIds,
char **  theComparisonCriteria 
)

This function sets the values (name, attributes and comparison criteria) for a given, existing connection type.

Parameters:
theCTTag  (I)
theCTName  (I)
theAttributeCount  (I)
theAttributeIds  (I)
theComparisonCriteria  (I)

ICS_API int GCS_ct_update ( tag_t  theCTTag  ) 

This function updates all CPDs and CPs that belong to the given connection type.

Parameters:
theCTTag  (I)

ICS_API int GCS_ct_update_wsos ( tag_t  theCTTag,
logical  theCreateWsos 
)

This function updates all CPDs and CPs that belong to the given connection type. It also creates or updates the ICO's associated item, item revision, and PSConnection, if requested by setting theCreateWsos to true.

Parameters:
theCTTag  (I)
theCreateWsos  (I)

ICS_API int GCS_ct_where_referenced ( tag_t  theCTTag,
int *  theClassCount,
char ***  theClassIDs,
tag_t **  theClassTags,
int *  theCPDCount,
tag_t **  theCPDTags 
)

This function returns all classes and CPDs that are using a given connection type.

Parameters:
theCTTag  (I)
theClassCount  (O)
theClassIDs  (OF) theClassCount
theClassTags  (OF) theClassCount
theCPDCount  (O)
theCPDTags  (OF) theCPDCount

ICS_API int GCS_init_module (  ) 

This function initializes the database for GCS usage. It creates all needed Attributes, Key LOVs, Classes. If those elements are already there it does nothing.

ICS_API int GCS_search ( tag_t  theCPTag,
int *  theMatchingCount,
tag_t **  theMatchingCPTags,
tag_t **  theMatchingICOTags 
)

This function searches for all matching CPs and the attached comp ICOs for a given CP.

Parameters:
theCPTag  (I)
theMatchingCount  (O)
theMatchingCPTags  (OF) theMatchingCount
theMatchingICOTags  (OF) theMatchingCount