Документ взят из кэша поисковой машины. Адрес оригинального документа : http://www.atnf.csiro.au/computing/software/gipsy/sub/srvreq.dc3
Дата изменения: Mon Feb 5 07:28:22 2001
Дата индексирования: Fri Jan 16 01:27:27 2009
Кодировка:
Document: srvreq

Purpose: user interface module

Category: SYSTEM, USER-INTERFACE

File: srvreq.c

Author: J.P. Terlouw

Description: The routines available to applications programmers which
communicate with HERMES are the following (Each routine
is described in more detail in its own DC2 document):

Name Type Action
----------- ------------------ ----------------------------------
INIT Subroutine Open communication with HERMES
FINIS Subroutine Close communication with HERMES
USERINT integer function Get integers from user
USERLOG integer function Get logicals from user
USERREAL integer function Get reals from user
USERDBLE integer function Get doubles from user
USERCHAR integer function Get char. strings from user
USERCHARU integer function As USERCHAR, but now upperc.
USERCHARL integer function As USERCHAR, but now lowerc.
USERTEXT integer function Get text from user
ANYOUT subroutine Send text to screen/logfile
ERROR subroutine Report an error to user
PAUSE subroutine Put task in pause state
CANCEL subroutine Remove keyword from list
REJECT subroutine Reject keyword
XEQ subroutine Execute another task
XEQCONT integer function Start task and continue
TYPE subroutine Type something in UTA
STATUS subroutine Show status message
WKEY subroutine Put keyword in list
DEPUTY subroutine Start another task
SUBST subroutine Keyword substitution
CANALL subroutine Cancel all keywords in list
XEQXIT subroutine Execute task and stop
MYNAME character function Return name of task
ALLPAR integer function Obtain all USERxxx parameters
SAVEPAR integer function Save USERxxx parameters in file
EDITFILE integer function Edit a text file
LISTCTRL integer function Control ANYOUT device mask
DECODEINT integer function Decode integers
DECODEREAL integer function Decode reals
DECODEDBLE integer function Decode doubles
DCDERRSTR character function Return DECODExxx error message
GIPSYTASK logical function Test whether program is GIPSY task
atfinis int function register callback with FINIS
atfinisrm void function unregister callback with FINIS
atabort void function register callback for user aborts
notify int function connect to notification socket
keystatus int function check status of last user input
status_cb void function register status messages callback
wkey_cb void function register wkey callback (for Ggi)

For C programmers all prototype declarations can be made available
by including srvreq.h.

Limitations: Though the code of this routine is complete, not all
functions may actually work. This is depends on
which functions are actually provided by the specific
kind and version of Hermes.

Updates: Jul 13, 1989: KGB, Document created.
Feb 15, 1990: JPT, Rewritten for new Hermes
Mar 16, 1990: JPT, Trim trailing blanks from Userinp keywords
Sep 17, 1990: JPT, Bug removed from USERTEXT part
Oct 11, 1990: JPT, INIT can bind to different commun. methods
Nov 7, 1990: JPT, atfinis() and atfinisrm() added
Dec 3, 1990: JPT, message length bugs in a.o. deputy_c fixed
Dec 17, 1990: JPT, subroutine REJECT added
Apr 17, 1991: JPT, reply buffer check added for Userinp.
Jun 29, 1991: KGB, correct alignment for all variable types.
Jul 3, 1991: PRR, exit status 1 for ERROR and DEPUTY etc.
Nov 29, 1991: JPT, atabort() added.
Dec 2, 1991: JPT, XEQ return codes revised.
Sep 07, 1992: JPT, change directory performed in init_c().
Nov 09, 1992: JPT, implemented EDITFILE
Oct 15, 1993: JPT, removed buffer size limitations
Oct 19, 1993: JPT, added logging of process starts and stops
Jan 4, 1994: JPT, implemented LISTCTRL
Feb 23, 1994: JPT, removed RAWPAR; implemented ALLPAR
Jul 21, 1994: JPT, implemented DECODExxx
Jul 22, 1994: JPT, implemented GIPSYTASK
Dec 8, 1994: JPT, implemented DCDERRSTR
Apr 8, 1997: JPT, implemented notify()
Nov 24, 1997: JPT, implemented keystatus()
Feb 9, 1998: JPT, implemented status_cb()
Jun 10, 1998: JPT, updated doc. for USERTEXT and DEPUTY
Jul 1, 1998: JPT, implemented SAVEPAR
Jan 17, 2001: JPT, implemented XEQCONT