Previous:
VICAR Porting Guide
Up:
VICAR Porting Guide
Next:
List of Tables
Contents
Contents
List of Tables
Introduction
About This Guide
What is a Port
Reasons for Porting
Philosophy of Port
TBD List
Acronym List
Portability Constraints
Variable Arguments
Data Types
Language Differences
Mixed-Language Interface
Subroutine Names
RTL Calling Conventions
Terminator
No Optional Arguments
Fortran Calling Sequence
Character Strings
Fortran Data Types
C Calling Sequence
Differences from Fortran
C Data Types
Backwards Compatibility with VMS
RTL Routine Changes
New Optional Keywords
New Routines
Parameter Routines
x
/
zvip
x
/
zviparmd
x
/
zvipone
x
/
zvipstat
x
/
zvparmd
x
/
zvpone
x
/
zvpstat
Translation Routines
x
/
zvtrans
x
/
zvtrans_in
x
/
zvtrans_inb
x
/
zvtrans_inu
x
/
zvtrans_out
x
/
zvtrans_set
Miscellaneous Routines
x
/
zlpinfo
x
/
zmove
x
/
zvcmdout
x
/
zvhost
x
/
zvpixsize
x
/
zvpixsizeb
x
/
zvpixsizeu
x
/
zvselpi
Fortran String Conversion Routines
Common Features
sc2for
sc2for_array
sfor2c
sfor2c_array
sfor2len
sfor2ptr
System Internal Routines
New Features in Old Routines
Deprecated RTL Functionality
Obsolete Routines
Property Labels
Using Property Labels
Property Names
Data Types and Host Representations
VICAR File Representations
VICAR Data Type Labels
Pixel Type Declarations
Pixel Sizes
Converting Data Types & Hosts
Dealing with Binary Labels
Separate Host Types
Using Binary Labels
Binary Label Type
Porting C
RTL Differences
Include Files
VMS-Specific Code
Machine Dependencies
Porting Fortran
RTL Differences
Include Files
No EQUIVALENCE for Type Conversion
CHARACTER*n for Strings
READ & WRITE to Strings
Array I/O
VMS Fortran Extensions
VMS-Specific Code
Machine Dependencies
Porting TCL
Mixing Fortran and C
Bridge Routines
Naming Subroutines
Passing Numeric Arguments
Passing Strings
Accepting Fortran Strings in C
Accepting C Strings in Fortran
SUBLIB Subroutine Library
Relationship to Old SUBLIB
When to Create a SUBLIB Subroutine
Calling Sequences
Fortran vs. C
Other-Language Bridges
Help Files
Creating Applications
vimake
Creating and Using a VICAR Imakefile
Valid
vimake
Commands
Module Type Macros
Name List Macros
Main Language Macros
Languages Used Macros
Build Flag Macros
Module Class Macros
Documentation Macros
Library Macros
Using the Generated VMS Build File
Using the Generated Unix Makefile
Application Packer
vpack
vunpack
Test Routines
VICAR Directory Structure
Application Examples
Summary of Major Portability Rules
Summary of Calling Sequences
About this document ...