-+-+-+-+-+-+-+-+ START OF PART 171 -+-+-+-+-+-+-+-+
X/*--------------------------------------------------------------------------
V*/
X
Xextern void ptkc_setcameraworld(windid, num, stids)
XPint windid, num, *stids;
X`7B
X  Pintlst stidlst;
X`20
X  stidlst.number = num;
X  stidlst.integers = stids;
X  ptk_setcameraworld(windid, &stidlst);
X`7D  /* ptkc_setcameraworld */
X
X/*--------------------------------------------------------------------------
V*/
X
Xextern void ptkc_inqwindowviewrep(windid, vwormt,
X  vwmpmt, vwcplm, xyclpi, bclipi, fclipi, err)
XPint windid;
XPmatrix3 vwormt, vwmpmt;
XPlimit3 *vwcplm;
XPint *xyclpi, *bclipi, *fclipi, *err;
X`7B
X  Pviewrep3 rep;
X
X  ptk_inqwindowviewrep(windid, &rep, err);
X  memcpy(vwormt, rep.orientation_matrix, sizeof(Pmatrix3));
X  memcpy(vwmpmt, rep.mapping_matrix, sizeof(Pmatrix3));
X  *vwcplm = rep.clip_limit;
X  *xyclpi = rep.clip_xy;
X  *bclipi = rep.clip_back;
X  *fclipi = rep.clip_front;
X`7D  /* ptkc_inqwindowviewrep */
X
X/*--------------------------------------------------------------------------
V*/
X
Xextern void ptkc_vieweditor(wsid, num, stids, vwormt, vwmpmt,`20
X                            vwcplm, xyclpi, bclipi, fclipi)
XPint wsid, num, *stids;
XPmatrix3 vwormt, vwmpmt;
XPlimit3 *vwcplm;
XPint *xyclpi, *bclipi, *fclipi;
X`7B
X  Pintlst stidlst;
X  Pviewrep3 vrep;
X
X  stidlst.number = num;
X  stidlst.integers = stids;
X  ptk_vieweditor(wsid, &stidlst, &vrep);
X  memcpy(vwormt, vrep.orientation_matrix, sizeof(Pmatrix3));
X  memcpy(vwmpmt, vrep.mapping_matrix, sizeof(Pmatrix3));
X  *vwcplm = vrep.clip_limit;
X  *xyclpi = vrep.clip_xy;
X  *bclipi = vrep.clip_back;
X  *fclipi = vrep.clip_front;
X`7D  /* ptkc_vieweditor */
X
X/*--------------------------------------------------------------------------
V*/
X
Xextern void ptkc_inqstructnetids(structid, num, ids, totalnum)
XPint structid, num, *ids, *totalnum;
X`7B
X  Pintlst idlst;
X
X  idlst.number = num;
X  idlst.integers = ids;
X  ptk_inqstructnetids(structid, num, &idlst, totalnum);
X`7D  /* ptkc_inqstructnetids */
X
X/*--------------------------------------------------------------------------
V*/
X
Xextern void ptkc_inqtslnameset(num, nameset, totalnum)
XPint num, *nameset, *totalnum;
X`7B
X  Pintlst names;
X
X  names.number = num;
X  names.integers = nameset;
X  ptk_inqtslnameset(num, &names, totalnum);
X`7D  /* ptkc_inqtslnameset */
X
X/*--------------------------------------------------------------------------
V*/
X/* the following functions use strings so need to use descriptor mechanism
V  */
X/*--------------------------------------------------------------------------
V*/
X
X/* hash.for functions */
X
Xextern Pint ptkc_stringtoint(tablestr, str)
Xstruct dsc$descriptor_s *tablestr;
Xstruct dsc$descriptor_s *str;
X`7B
X  Pchar str1`5B80`5D, str2`5B80`5D;
X
X  strncpy(str1, tablestr->dsc$a_pointer, tablestr->dsc$w_length);
X  str1`5Btablestr->dsc$w_length`5D = '\0';
X  strncpy(str2, str->dsc$a_pointer, str->dsc$w_length);
X  str2`5Bstr->dsc$w_length`5D = '\0';
X  return ptk_stringtoint(str1, str2);
X`7D  /* ptkc_stringtoint */
X
X/*--------------------------------------------------------------------------
V*/
X
Xextern void ptkc_createhashtable(tablestr, minid, maxid)
Xstruct dsc$descriptor_s *tablestr;
XPint minid, maxid;
X`7B
X  Pchar str1`5B80`5D;
X
X  strncpy(str1, tablestr->dsc$a_pointer, tablestr->dsc$w_length);
X  str1`5Btablestr->dsc$w_length`5D = '\0';
X  ptk_createhashtable(str1, minid, maxid);
X`7D  /* ptkc_createhashtable */
X
X/*--------------------------------------------------------------------------
V*/
X
Xextern ptkboolean ptkc_hashtableused(tablestr)
Xstruct dsc$descriptor_s *tablestr;
X`7B
X  Pchar str1`5B80`5D;
X
X  strncpy(str1, tablestr->dsc$a_pointer, tablestr->dsc$w_length);
X  str1`5Btablestr->dsc$w_length`5D = '\0';
X  return ptk_hashtableused(str1);
X`7D  /* ptkc_hashtableused */
X
X/*--------------------------------------------------------------------------
V*/
X
Xextern void ptkc_inttostring(tablestr, stint, size, strbuffer, buffersize)
Xstruct dsc$descriptor_s *tablestr;
XPint stint, size;
Xstruct dsc$descriptor_s *strbuffer;
XPint *buffersize;
X`7B
X  Pchar str1`5B80`5D;
X
X  strncpy(str1, tablestr->dsc$a_pointer, tablestr->dsc$w_length);
X  str1`5Btablestr->dsc$w_length`5D = '\0';
X  ptk_inttostring(str1, stint, size, strbuffer->dsc$a_pointer, buffersize);
X`7D  /* ptkc_inttostring */
X
X/*--------------------------------------------------------------------------
V*/
X
Xextern ptkboolean ptkc_delstring(tablestr, str)
Xstruct dsc$descriptor_s *tablestr;
Xstruct dsc$descriptor_s *str;
X`7B
X  Pchar str1`5B80`5D, str2`5B80`5D;
X
X  strncpy(str1, tablestr->dsc$a_pointer, tablestr->dsc$w_length);
X  str1`5Btablestr->dsc$w_length`5D = '\0';
X  strncpy(str2, str->dsc$a_pointer, str->dsc$w_length);
X  str2`5Bstr->dsc$w_length`5D = '\0';
X  return ptk_delstring(str1, str2);
X`7D  /* ptkc_delstring */
X
X/*--------------------------------------------------------------------------
V*/
X
Xextern ptkboolean ptkc_delhashtable(tablestr)
Xstruct dsc$descriptor_s *tablestr;
X`7B
X  Pchar str1`5B80`5D;
X
X  strncpy(str1, tablestr->dsc$a_pointer, tablestr->dsc$w_length);
X  str1`5Btablestr->dsc$w_length`5D = '\0';
X  return ptk_delhashtable(str1);
X`7D  /* ptkc_delhashtable */
X
X/*--------------------------------------------------------------------------
V*/
X
Xextern ptkboolean ptkc_stringused(tablestr, str)
Xstruct dsc$descriptor_s *tablestr;
Xstruct dsc$descriptor_s *str;
X`7B
X  Pchar str1`5B80`5D, str2`5B80`5D;
X
X  strncpy(str1, tablestr->dsc$a_pointer, tablestr->dsc$w_length);
X  str1`5Btablestr->dsc$w_length`5D = '\0';
X  strncpy(str2, str->dsc$a_pointer, str->dsc$w_length);
X  str2`5Bstr->dsc$w_length`5D = '\0';
X  return ptk_stringused(str1, str2);
X`7D  /* ptkc_stringused */
X
X/*--------------------------------------------------------------------------
V*/
X
Xextern void ptkc_storehashtable(fileptr, tablestr)
XFILE *fileptr;
Xstruct dsc$descriptor_s *tablestr;
X`7B
X  Pchar str1`5B80`5D;
X
X  strncpy(str1, tablestr->dsc$a_pointer, tablestr->dsc$w_length);
X  str1`5Btablestr->dsc$w_length`5D = '\0';
X  ptk_storehashtable(fileptr, str1);
X`7D  /* ptkc_storehashtable */
X
X/*--------------------------------------------------------------------------
V*/
X
Xextern void ptkc_storeallhashtables(fileptr, tablestr)
XFILE *fileptr;
Xstruct dsc$descriptor_s *tablestr;
X`7B
X  Pchar str1`5B80`5D;
X
X  strncpy(str1, tablestr->dsc$a_pointer, tablestr->dsc$w_length);
X  str1`5Btablestr->dsc$w_length`5D = '\0';
X  ptk_storeallhashtables(fileptr, str1);
X`7D  /* ptkc_storeallhashtables */
X
X/*--------------------------------------------------------------------------
V*/
X
Xextern void ptkc_restorehashtable(fileptr, tablestr)
XFILE *fileptr;
Xstruct dsc$descriptor_s *tablestr;
X`7B
X  Pchar str1`5B80`5D;
X
X  strncpy(str1, tablestr->dsc$a_pointer, tablestr->dsc$w_length);
X  str1`5Btablestr->dsc$w_length`5D = '\0';
X  ptk_restorehashtable(fileptr, str1);
X`7D  /* ptkc_restorehashtable */
X
X/*--------------------------------------------------------------------------
V*/
X
Xextern void ptkc_restoreallhashtables(fileptr, tablestr)
XFILE *fileptr;
Xstruct dsc$descriptor_s *tablestr;
X`7B
X  Pchar str1`5B80`5D;
X
X  strncpy(str1, tablestr->dsc$a_pointer, tablestr->dsc$w_length);
X  str1`5Btablestr->dsc$w_length`5D = '\0';
X  ptk_restoreallhashtables(fileptr, str1);
X`7D  /* ptkc_restoreallhashtables */
X
X/*--------------------------------------------------------------------------
V*/
X
X/* cns.for functions */
X
Xextern ptkboolean ptkc_cnstorgb(colourname, rgb)
Xstruct dsc$descriptor_s *colourname;
XPcobundl *rgb;
X`7B
X  Pchar str1`5B80`5D;
X
X  strncpy(str1, colourname->dsc$a_pointer, colourname->dsc$w_length);
X  str1`5Bcolourname->dsc$w_length`5D = '\0';
X  return ptk_cnstorgb(str1, rgb);
X`7D  /* ptkc_cnstorgb */
X
X/*--------------------------------------------------------------------------
V*/
X
Xextern ptkboolean ptkc_cnstohsl(colourname, hsl)
Xstruct dsc$descriptor_s *colourname;
XPcobundl *hsl;
X`7B
X  Pchar str1`5B80`5D;
X
X  strncpy(str1, colourname->dsc$a_pointer, colourname->dsc$w_length);
X  str1`5Bcolourname->dsc$w_length`5D = '\0';
X  return ptk_cnstohsl(str1, hsl);
X`7D  /* ptkc_cnstohsl */
X
X/*--------------------------------------------------------------------------
V*/
X
Xextern ptkboolean ptkc_cnstohsv(colourname, hsv)
Xstruct dsc$descriptor_s *colourname;
XPcobundl *hsv;
X`7B
X  Pchar str1`5B80`5D;
X
X  strncpy(str1, colourname->dsc$a_pointer, colourname->dsc$w_length);
X  str1`5Bcolourname->dsc$w_length`5D = '\0';
X  return ptk_cnstohsv(str1, hsv);
X`7D  /* ptkc_cnstohsv */
X
X/*--------------------------------------------------------------------------
V*/
X
Xextern void ptkc_setcolourrep(wsid, colourname)
XPint wsid;
Xstruct dsc$descriptor_s *colourname;
X`7B
X  Pchar str1`5B80`5D;
X
X  strncpy(str1, colourname->dsc$a_pointer, colourname->dsc$w_length);
X  str1`5Bcolourname->dsc$w_length`5D = '\0';
X  ptk_setcolourrep(wsid, str1);
X`7D  /* ptkc_setcolourrep */
X
X/*--------------------------------------------------------------------------
V*/
X
Xextern void ptkc_setrgbcolourname(colourname, rgb)
Xstruct dsc$descriptor_s *colourname;
XPcobundl *rgb;
X`7B
X  Pchar str1`5B80`5D;
X
X  strncpy(str1, colourname->dsc$a_pointer, colourname->dsc$w_length);
X  str1`5Bcolourname->dsc$w_length`5D = '\0';
X  ptk_setrgbcolourname(str1, rgb);
X`7D  /* ptkc_setrgbcolourname */
X
X/*--------------------------------------------------------------------------
V*/
X
Xextern void ptkc_setbackgroundcolour(wsid, colourname)
XPint wsid;
Xstruct dsc$descriptor_s *colourname;
X`7B
X  Pchar str1`5B80`5D;
X
X  strncpy(str1, colourname->dsc$a_pointer, colourname->dsc$w_length);
X  str1`5Bcolourname->dsc$w_length`5D = '\0';
X  ptk_setbackgroundcolour(wsid, str1);
X`7D  /* ptkc_setbackgroundcolour */
X
X/*--------------------------------------------------------------------------
V*/
X
Xextern void ptkc_setlinecolour(wsid, colourname)
XPint wsid;
Xstruct dsc$descriptor_s *colourname;
X`7B
X  Pchar str1`5B80`5D;
X
X  strncpy(str1, colourname->dsc$a_pointer, colourname->dsc$w_length);
X  str1`5Bcolourname->dsc$w_length`5D = '\0';
X  ptk_setlinecolour(wsid, str1);
X`7D  /* ptkc_setlinecolour */
X
X/*--------------------------------------------------------------------------
V*/
X
Xextern void ptkc_setmarkercolour(wsid, colourname)
XPint wsid;
Xstruct dsc$descriptor_s *colourname;
X`7B
X  Pchar str1`5B80`5D;
X
X  strncpy(str1, colourname->dsc$a_pointer, colourname->dsc$w_length);
X  str1`5Bcolourname->dsc$w_length`5D = '\0';
X  ptk_setmarkercolour(wsid, str1);
X`7D  /* ptkc_setmarkercolour */
X
X/*--------------------------------------------------------------------------
V*/
X
Xextern void ptkc_setintcolour(wsid, colourname)
XPint wsid;
Xstruct dsc$descriptor_s *colourname;
X`7B
X  Pchar str1`5B80`5D;
X
X  strncpy(str1, colourname->dsc$a_pointer, colourname->dsc$w_length);
X  str1`5Bcolourname->dsc$w_length`5D = '\0';
X  ptk_setintcolour(wsid, str1);
X`7D  /* ptkc_setintcolour */
X
X/*--------------------------------------------------------------------------
V*/
X
Xextern void ptkc_setedgecolour(wsid, colourname)
XPint wsid;
Xstruct dsc$descriptor_s *colourname;
X`7B
X  Pchar str1`5B80`5D;
X
X  strncpy(str1, colourname->dsc$a_pointer, colourname->dsc$w_length);
X  str1`5Bcolourname->dsc$w_length`5D = '\0';
X  ptk_setedgecolour(wsid, str1);
X`7D  /* ptkc_setedgecolour */
X
X/*--------------------------------------------------------------------------
V*/
X
Xextern void ptkc_settextcolour(wsid, colourname)
XPint wsid;
Xstruct dsc$descriptor_s *colourname;
X`7B
X  Pchar str1`5B80`5D;
X
X  strncpy(str1, colourname->dsc$a_pointer, colourname->dsc$w_length);
X  str1`5Bcolourname->dsc$w_length`5D = '\0';
X  ptk_settextcolour(wsid, str1);
X`7D  /* ptkc_settextcolour */
X
X/*--------------------------------------------------------------------------
V*/
X
X/* menu.for functions */
X
Xextern void ptkc_createtextmenuitem(menuid, str, itemno, editmode, error)
XPint menuid;
Xstruct dsc$descriptor_s *str;
XPint itemno;
XPeditmode editmode;
XPint *error;
X`7B
X  Pchar str1`5B80`5D;
X
X  strncpy(str1, str->dsc$a_pointer, str->dsc$w_length);
X  str1`5Bstr->dsc$w_length`5D = '\0';
X  ptk_createtextmenuitem(menuid, str1, itemno, editmode, error);
X`7D  /* ptkc_createtextmenuitem */
X
X/*--------------------------------------------------------------------------
V*/
X
Xextern ptkboolean ptkc_stringscanmenus(wsid, str, menuid, itemnum)
XPint wsid;
Xstruct dsc$descriptor_s *str;
XPint *menuid, *itemnum;
X`7B
X  Pchar str1`5B80`5D;
X
X  strncpy(str1, str->dsc$a_pointer, str->dsc$w_length);
X  str1`5Bstr->dsc$w_length`5D = '\0';
X  return ptk_stringscanmenus(wsid, str1, menuid, itemnum);
X`7D  /* ptkc_stringscanmenus */
X
X/*--------------------------------------------------------------------------
V*/
X
Xextern void ptkc_createrotator(wsid, menuid, rottype, size,`20
X     titlestr, titleheight)
XPint wsid, menuid;
Xptkerotatortype rottype;
XPpoint *size;
Xstruct dsc$descriptor_s *titlestr;
XPfloat *titleheight;
X`7B
X  Pchar str1`5B80`5D;
X
X  strncpy(str1, titlestr->dsc$a_pointer, titlestr->dsc$w_length);
X  str1`5Btitlestr->dsc$w_length`5D = '\0';
X  ptk_createrotator(wsid, menuid, rottype, size, str1, *titleheight);
X`7D  /* ptkc_createrotator */
X
X/*--------------------------------------------------------------------------
V*/
X
Xextern void ptkc_setrotatortitle(menuid, titlestr)
XPint menuid;
Xstruct dsc$descriptor_s *titlestr;
X`7B
X  Pchar str1`5B80`5D;
X
X  strncpy(str1, titlestr->dsc$a_pointer, titlestr->dsc$w_length);
X  str1`5Btitlestr->dsc$w_length`5D = '\0';
X  ptk_setrotatortitle(menuid, str1);
X`7D  /* ptkc_setrotatortitle */
X
X/*--------------------------------------------------------------------------
V*/
X
Xextern void ptkc_inqrotatortitle(menuid, len, titlestr, totlen, err)
XPint menuid, len;
Xstruct dsc$descriptor_s *titlestr;
XPint *totlen, *err;
X`7B
X  ptk_inqrotatortitle(menuid, len, titlestr->dsc$a_pointer, totlen, err);
X`7D  /* ptkc_inqrotatortitle */
X
X/*--------------------------------------------------------------------------
V*/
X
X/* wind.for functions */
X
+-+-+-+-+-+-+-+-  END  OF PART 171 +-+-+-+-+-+-+-+-