CONTENTS Title Page Copyright Page Preface 1 Introduction to XIE 1.1 What Is XIE 1.2 Hardware and Software Requirements 1.3 XIE Services 1.3.1 Resource Management Services 1.3.2 Transport Services 1.3.3 Import and Export Services 1.3.4 Operator Services 1.3.5 Statistical Services 1.3.6 Process Control Services 1.3.7 Miscellaneous Services 2 Creating and Deleting Client and Server Images 2.1 Creating Client-Side XieImages 2.1.1 Copying an Existing XieImage 2.1.2 Creating a New XieImage 2.2 Creating XieImages from Server Photomaps 2.2.1 Transporting Photomap Streams to XieImages 2.2.2 Transporting Photomap Tiles to XieImages 2.3 Deleting Client-Side XieImages 2.4 Creating Server-Side Images 2.4.1 Transporting XieImage Streams to Photomaps 2.4.2 Transporting XieImage Tiles to Photomaps 2.5 Creating Photomaps from Existing Photomaps 2.6 Deleting Server-Side Photomaps 3 Importing and Exporting Images in XIE 3.1 Importing Images 3.1.1 The Import Process 3.2 Exporting Images 3.2.1 Allocating and Sharing Colors in a Colormap 3.2.1.1 How XIE Allocates and Shares Colors 3.2.1.2 Controlling the Color Match 3.2.2 Exporting Images to Static Gray and True Color Visual Classes 3.2.3 Exporting Images to a Static Color Visual Class 3.2.4 Exporting Images to Pseudocolor and Gray Scale Visual Classes 3.2.5 Exporting Images to a Direct Color Visual Class 3.2.6 Exporting Images When a LUT is Supplied 3.2.7 Exporting Images to a Bitonal Visual Class 4 Using Operator Service Routines 4.1 Constrained and Unconstrained Image Data 4.1.1 Constraint Models 4.2 Geometric Operator Routines 4.2.1 Cropping and Copying an Image 4.2.2 Scaling an Image 4.2.3 Rotating an Image 4.2.4 Obtaining a Flipped Image 4.2.5 Translating an Image 4.2.6 Filling an Image 4.3 Radiometric Operator Routines 4.3.1 Constraining an Image 4.3.2 Matching a Histogram 4.3.3 Separating a Spectral Component 4.3.4 Combining Spectral Components 4.3.5 Dithering an Image 4.3.6 Extracting the Luminance Component 4.4 Ensemble Operator Routines 4.4.1 Obtaining an Arithmetically Combined Photomap 4.4.2 Obtaining a Relationally Compared Photomap 4.4.3 Obtaining a Logically Combined Photomap 4.4.4 Obtaining a Mathematically Adjusted Photomap 4.5 Remapping Routines 4.5.1 Point Remapping 4.5.2 Area Remapping 4.6 Statistical Operator Routines 4.6.1 Calculating a Frequency Histogram 4.6.2 Calculating Point Pixel Statistics 4.6.3 Generating a Statistical Image 5 Using XIE Photoflos 5.1 What Is a Photoflo? 5.2 Photoflo Limitations 5.3 Photoflo Resources 5.4 Data Flow within Photoflos 5.5 Photoflo Processing 5.5.1 Creating a Photoflo Resource 5.5.2 Binding Photomaps to a Photoflo 5.5.3 Appending Processing Elements to a Photoflo 5.5.4 Creating Phototaps 5.5.5 Creating Permanent Photomaps 5.5.6 Starting Photoflo Execution 5.5.7 Transporting Data to and from a Photoflo 5.5.8 Aborting Photoflo Execution 5.5.9 Freeing Photoflo Resources 5.5.10 Querying Photoflo Status 5.6 Sample Photoflos 5.6.1 Sample Photoflo One 5.6.2 Sample Photoflo Two 6 Using Memory Management Services 6.1 Image Data Arrays 6.2 Block Memory 7 Obtaining Resource Information 7.1 Server Support 7.2 Resource Identifiers 7.3 Resource Types 7.4 Component Mapping 7.5 Component Count 7.6 Plane Count 8 Enabling and Querying XIE Events 8.1 Enabling Events 8.2 Querying Enabled Events 9 XIE Library Routines XIE$ABORT_FLO XIE$ABORT_STREAM XIE$AREA XIE$AREA_STATS XIE$ARITHMETIC XIE$BIND_MAP_TO_FLO XIE$CALLOC XIE$CALLOC_BITS XIE$CFREE XIE$CHECK_FUNCTION XIE$CHROME_COM XIE$CHROME_SEP XIE$CLONE_PHOTO XIE$COMPARE XIE$CONSTRAIN XIE$COPY_IMAGE XIE$CREATE_CPP XIE$CREATE_IMAGE XIE$CREATE_PHOTO XIE$CREATE_ROI XIE$CREATE_TMP XIE$CROP XIE$DITHER XIE$EXECUTE_FLO XIE$EXPORT XIE$FILL XIE$FIND_RESOURCE XIE$FREE XIE$FREE_BITS XIE$FREE_EXPORT XIE$FREE_IMAGE XIE$FREE_RESOURCE XIE$GET_IMAGE XIE$GET_IMAGE_DATA XIE$GET_STREAM XIE$GET_TILE XIE$HISTOGRAM XIE$IMPORT XIE$IS_BITONAL XIE$IS_CPP XIE$IS_GRAY_SCALE XIE$IS_IDC XIE$IS_PHOTO XIE$IS_PHOTOFLO XIE$IS_PHOTOMAP XIE$IS_PHOTOTAP XIE$IS_RGB XIE$IS_ROI XIE$IS_TMP XIE$LIST_FUNCTIONS XIE$LOGICAL XIE$LUMINANCE XIE$MALLOC XIE$MALLOC_BITS XIE$MATCH_HISTOGRAM XIE$MATH XIE$MIRROR XIE$PHOTO_COUNT XIE$PLANE_COUNT XIE$POINT XIE$POINT_STATS XIE$PUT_IMAGE XIE$PUT_IMAGE_DATA XIE$PUT_STREAM XIE$PUT_TILE XIE$QUERY_CPP XIE$QUERY_EVENTS XIE$QUERY_EXPORT XIE$QUERY_FLO XIE$QUERY_MAP XIE$QUERY_OP_DEFAULTS XIE$QUERY_ROI XIE$QUERY_TMP XIE$REALLOC XIE$REALLOC_BITS XIE$ROTATE XIE$SCALE XIE$SELECT_EVENTS XIE$SET_OP_DEFAULTS XIE$SET_STREAM XIE$TAP_FLO XIE$TRANSLATE XIE$XID A XIE Error Messages B Include Files B.1 XieLib.h Header File B.2 XieAppl.h Header File B.3 XieUdpDef.h Header File B.4 XieProto.h Header File C Universal Data Plane Descriptor D VAX C Application Program Samples Glossary FIGURES 1-1 The Relationship Between XIE and the X11 Window System 1-2 XIE Relationship to Other DECimage Application Services for VMS Components 2-1 Band_Interleaved_By_Pixel Component Organization 2-2 Band_Interleaved_By_Plane Component Organization 2-3 Bit_Interleaved_By_Plane Component Organization 3-1 The Import Process 3-2 The Export Process 3-3 RGB Color Cube 5-1 Default Photoflo Image Data Flow 5-2 Downstream Photoflo Image Data Flow 5-3 Photoflo Image Data Flow Using a Bound Photomap 5-4 Photoflo Image Data Flow to a Permanent Photomap 5-5 Sample Photoflo One 5-6 Sample Photoflo Two TABLES 1 Example Table 1-1 XIE Resource Management Services Routines 1-2 XIE Transport Services Routines 1-3 XIE Import and Export Services Routines 1-4 XIE Operator Services Routines 1-5 XIE Statistical Services Routines 1-6 XIE Process Control Services Routines 1-7 XIE Miscellaneous Services Routines 2-1 XieImage Attribute Descriptions 2-2 Relationship of Image Type and Component Organization for Stream Transport 5-1 XIE Routines You Can Use in Photoflos 5-2 XIE Routines That Use or Return Photo Resources 7-1 Plane Count Information 9-1 Headings in the Routine Template 9-2 XIE Routines 9-3 Area Operator Symbols 9-4 Area Statistics Operator Symbols 9-5 Arithmetic Operator Symbols 9-6 Compare Operator Symbols 9-7 Constraint Model Symbols 9-8 Mode Symbols 9-9 Initial XieImageRec Field Values 9-10 Initial UdpRec Field Values 9-11 Transport Setup Symbols 9-12 Returned Status 9-13 Logical Operator Symbols 9-14 Histogram Shape Symbols 9-15 Distribution Parameter One Meaning and Defaults 9-16 Distribution Parameter Two Defaults 9-17 Mathematical Function Symbols 9-18 Image Plane Information 9-19 Point Statistics Field Symbols 9-20 Transport Setup Mode Symbols 9-21 Photoflo Status Returns 9-22 Constraint Model Symbols 9-23 Event Mask Symbols 9-24 Constraint Model Symbols C-1 Udp Data Structure Field Descriptions