SIS - Application Programmatic Interface, Reference Manual - ICS ...
SIS - Application Programmatic Interface, Reference Manual - ICS ...
SIS - Application Programmatic Interface, Reference Manual - ICS ...
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
<strong>SIS</strong>-<strong>Application</strong> <strong>Programmatic</strong> <strong>Interface</strong>, <strong>Reference</strong> <strong>Manual</strong><br />
}<br />
while (Q1->return_nodes(ret_set1, label) != APIFail)<br />
printf(" %s\n", label);<br />
Q1->reset_set(ret_set1);<br />
printf("\nINFO ABOUT LINKS FROM 'CAR' : \n");<br />
while (Q1->return_link(ret_set1, cls, label, &cmv) != APIFail){<br />
printf(" %10s --- %10s ---> ", cls, label);<br />
print_value(&cmv);<br />
}<br />
strcpy(categs[0].fcl, "PhysicalObj");<br />
strcpy(categs[0].cat, "Parts");<br />
categs[0].direction = FORWARD;<br />
categs[1].direction = 0;<br />
Q1->set_categories(categs);<br />
Q1->free_all_sets();<br />
Q1->reset_name_scope();<br />
if (Q1->set_current_node("AMT-9655") != APIFail)<br />
if ((ret_set1 = Q1->get_traverse_by_meta_category(0, NOISA)) != APIFail) {<br />
Q1->reset_set(ret_set1);<br />
printf("\nTRANSITIVE QUERY FROM 'AMT-9655' (meta-category : Parts) : \n");<br />
while ((Q1->return_link(ret_set1, cls, label, &cmv)) != APIFail) {<br />
printf(" %10s --- %10s ---> ", cls, label);<br />
print_value(&cmv);<br />
}<br />
}<br />
Connection_class1->end_query();<br />
// close_connection(...)<br />
Connection_class1->close_connection();<br />
// close_<strong>SIS</strong>_API(...)<br />
if(Q1 != NULL) delete Q1;<br />
if(Connection_class1 != NULL) delete Connection_class1;<br />
}<br />
// Wait for a keyboard hit<br />
printf("Press any key to exit...\n");<br />
getchar();<br />
void print_value(cm_value *val)<br />
{<br />
char *tmp;<br />
if (val == NULL) {<br />
return;<br />
}<br />
}<br />
switch (val->type) {<br />
case TYPE_INT : printf("Integer : %d \n",val->value.n);<br />
break;<br />
case TYPE_STRING : printf("String : %s \n",val->value.s);<br />
break;<br />
case TYPE_FLOAT : printf("Float<br />
: %f \n",val->value.r);<br />
break;<br />
case TYPE_NODE : printf("Logical Name : %s \n",val->value.s);<br />
break;<br />
case TYPE_TIME : tmp = (val->value.t).present();<br />
printf("Time<br />
: %s \n",tmp);<br />
free(tmp);<br />
break;<br />
}<br />
On WIN32 systems the include files that should be used to compile this code are:<br />
sis_kernel/time.h,<br />
cpp_api/cs_defs.h,<br />
cpp_api/identifier.h,<br />
cpp_api/sis_classes.h,<br />
sis_kernel/telos_ro.h,<br />
sis_kernel/obj_check.h,<br />
sis_kernel/initial.h,<br />
August 2002/v2.2.2 -59- <strong>ICS</strong>-FORTH