TCL Runtime Services, Volume 1: C

SECTION 1 - GENERAL INFORMATION

1.1 Document Summary
1.2 Environment
1.3 Volume Summary
1.4 References

SECTION 2 - GUIDE TO WRITING APPLICATION PROGRAMS

2.1 Introduction
2.2 Program Development Environment
2.2.1 Programming Language
2.2.2 Coding Conventions
2.2.2.1 Constants and Block Sizes
2.2.2.2 Entry Point Naming Conventions
2.2.2.3 Linking Convention
2.2.3 Program Initialization and Termination
2.2.4 TAE Include Files
2.2.4.1 Parameter Block - parblk.inc
2.2.4.2 TAE Application Routine Codes - pgminc.inc
2.2.4.3 C Language Standard Header - stdh.inp
2.2.4.4 Symbol Table Definition - symtab.inc
2.2.4.5 TAE Configuration - taeconf.inp
2.2.4.6 Terminal Package - terminc.inc
2.2.4.7 WPT Pachage - wptinc.inp
2.2.4.8 Image I/O Package - xiinc.inc
2.3 Guidelines for Writing Communicating Async-Processes
2.4 TAE Library Function Descriptions

SECTION 3 - PARAMETER AND VARIABLE MANIPULATION

3.1 Variable Types
3.2 The V-block
3.2.1 Contents
3.2.2 Uses of the V-block
3.3 Overview of Basic Variable Manipulation
3.3.1 Variable Receipt
3.3.2 Changing Values in an Existing V-block
3.3.3 Construction of a V-block
3.3.4 Additional Notes on V-blocks
3.4 Process Outputs
3.5 Dynamic Tutor Sessions
3.6 Status Codes and Abort/Continue Modes
3.7 Implicitly-defined Variables
3.8 Program Example
3.9 Variable Manipulation Functions
3.9.1 p_file - Get Host File
3.9.2 p_find - Find Variables with Error Check
3.9.3 p_forp - Format Variables
3.9.4 p_fvar - Find Variable
3.9.5 p_herr - Get Host-dependent Error Code
3.9.6 p_inifor - Initialize p_forp for Formatting Variables
3.9.7 p_inim - Receive a V-block from TM
3.9.8 p_rdb - Read a Saved V-block File
3.9.9 q_dynp - Send a V-block for Dynamic Parameters
3.9.10 q_init - Initialize a V-block Construction
3.9.11 q_intg - Set Integer Variable
3.9.12 q_out - Send V-block for Variable Outputs
3.9.13 q_real - Set Real Variable
3.9.14 q_string - Set String or Keyword Variable
3.9.15 q_wrtb - Write V-block to a Disk File
3.9.16 q_max - Set Maximum Vector Count of a Variable
3.9.17 q_min - Set Minimum Vector Count of a Variable
3.9.18 q_parmpage - Set the Page Indicator of a Variable
3.9.19 q_setnextmenu - Set the Next Menu to be Executed
3.9.20 q_stringlength - Set the Maximum String Length of a String or Keyword Variable
3.9.21 q_validing - Set Integer Valids
3.9.22 q_validreal - Set Real Valids
3.9.23 q_validstr - Set String Valids

SECTION 4 - TERMINAL I/O FUNCTIONS

4.1 t_clear - Clear Screen
4.2 t_highlight - Highlight a String
4.3 t_init - Initialize Terminal Package
4.4 t_input - Read Line from CRT
4.5 t_lclear - Clear Line on CRT
4.6 t_output - Write Line to CRT
4.7 t_pinit - Special Terminal Initialization
4.8 t_pos - Position Cursor
4.9 t_read - Read Line from Terminal
4.10 t_write - Write Line to Terminal

SECTION 5 - MESSAGE FUNCTION

5.1 m_msg - Log a Message

SECTION 6 - IMAGE I/O

6.1 i_clse - Close an Image File
6.2 i_herr - Return Last Host-dependent Error Code
6.3 i_opin - Open Existing File for Input or Input/Output
6.4 i_opou - Open File for Output
6.5 i_rdlb - Read a Label Record
6.6 i_read - Initiate Read to an Image File
6.7 i_wait - Wait for I/O (READ or WRITE) Completion on IFCB
6.8 i_write - Initiate Write to an Image File
6.9 i_wrlb - Write a Label Record
6.10 i_xtnd - Extend an Image File

SECTION 7 - INTERPROC COMMUNICATION FUNCTIONS

7.1 c_crepath - Create Path (mailbox (VMS) or Socket (Unix))
7.2 c_delpath - Delete Path
7.3 c_getmsg - Receive Message
7.4 c_pmwcd - Put Message with Connect/Disconnect

SECTION 8 - MISCELLANEOUS FUNCTIONS

8.1 z_exit - Terminate Application Process
8.2 z_init - General Process Initialization

APPENDIX A - HOST-DEPENDENT PROGRAMMING NOTES

A.1 VAX/VMS
A.1.1 Logical Names
A.1.2 Include Files
A.1.3 Compiling Linking with the TAE Subroutine
A.1.4 File Types Reserved by TAE
A.1.5 Event Flag Usage
A.1.6 Terminal Type Determination
A.1.7 Application Program Environment
A.1.8 Considerations in Using the DCL Command
A.1.9 Error Codes
A.1.10 VMS Interproc Communication
A.2 Unix
A.2.1 Directory Names
A.2.2 Library Files
A.2.3 Compiling And Linking C Application Programs
A.2.4 Debugger
A.2.5 c_ Unix Interproc Communication

APPENDIX B - DEMONSTRATION PROGRAMS

B.1 DEMOPGM
B.2 Dynamic q_ Functions
B.3 Simple C Server