Amazon.com: Developing Imaging Applications With Xielib (9780134429144): Syd Logan: Books

Have one to sell? Sell yours here
Developing Imaging Applications With Xielib
 
See larger image
 
Tell the Publisher!
I'd like to read this book on Kindle

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.

Developing Imaging Applications With Xielib [Textbook Binding]

Syd Logan (Author)
5.0 out of 5 stars  See all reviews (2 customer reviews)


Available from these sellers.



Book Description

November 18, 1997
44291-3 Leverage the power of XIE image processing in your X Windows applications! The XIE extension to X Windows enables developers to quickly create robust, highly-efficient image display and enhancement software. Developing Imaging Applications with XIElib is the first book to deliver practical answers, hands-on guidance, strategies and XIElib sample code for solving real image processing problems. The book starts with an overview of image processing for developers new to the field. Next, it introduces XIElib and the problems it is intended to solve. The book covers all critical aspects of XIElib development, including: *Working with photoflos and resources *New high-level routines that simplify I/O *Importing and exporting images in multiple graphics formats *Managing process elements *XIElib event and error handling *Making sure that image data is compatible with the colormap and visual of a window You'll find never-before-published guidance on essential XIElib techniques such as dithering, colorspaces, geometry, and image encoding and decoding-with especially detailed coverage of JPEG.Several complete sample clients are provided in the book and on CD-ROM, both to illustrate XIElib client writing and provide a starting point for your own applications. XIE represents a breakthrough in image processing, but practical developer's information about it has been scarce-until now. Developing Imaging Applications with XIElib gives you the information, tools and sample code you need to create XIElib visual applications more powerful than you ever imagined.

Editorial Reviews

From the Publisher

This book provides material which goes beyond the XIElib Specification and the XIE Protocol Specification and which is required to both understand and write useful XIE image processing clients for a wide variety of X server platforms. Numerous complete sample clients are provided in source code form to illustrate XIElib client writing, and provide a starting point for the development of your own XIE imaging applications.

From the Inside Flap

Preface

One of the factors contributing to the longevity of the X Window System is the extensibility of the protocol between the client and server. X extensions are the mechanism by which this extensibility is achieved. An X extension is invented, when the need arises, to provide functionality in an area previously unaddressed by the core protocol or an existing X extension. In this way, the X Window System is able to stay current with the technology of the day.


XIE is an X extension that provides long-awaited functionality in the area of image display and enhancement, and has the notable feature that it supports the decompression of several popular image encodings on the server side. This not only relieves the client of the responsibility for decompressing image data, but it also reduces the time that image data takes to travel between the client and the server (or, the other way around, between the server and client).


XIE has yet to take off, even though almost three years have passed since X11R6 and XIE were first released. Perhaps the reason is that the world is still one largely dominated by X11R5. Server vendors usually take a few years to create and release products which are based upon a new release of the X Consortium sample server, and additional time is needed for users to make the switch once these products are made available. However, since there are now a number of X terminals, Macintosh and PC X servers, and workstation X servers that support X11R6 (and therefore, support XIE), this excuse is quickly becoming one that can no longer stand up to scrutiny.


I think the true reason for the current lack of activity surrounding XIE is that, until now, little or no documentation has been available from which developers could learn how to write XIElib clients, not to mention a shortage of sample code. My goal in writing the first edition of this book was to address both of these problems directly.


Book Organization

Chapter 1 introduces the subject of image processing to those readers who may be approaching this discipline for the first time. Chapter 2 provides an overview of image processing using the facilities provided by core X. A sample client that performs median filtering on an image, based upon Xlib APIs, is discussed. Chapter 3 provides an overview of XIE, and discusses motivations that led to its development. It also discusses the architecture of XIE, and then goes on to present the source code of a sample XIE client in detail. Information on how to build the client in a generic Unix environment is also provided. Problems associated with the client that are presented are also described to motivate the discussion of several topics that are presented later in the book, most notably those in Chapter 19. Chapter 4 discusses photoflos and resources in detail, presenting the XIElib API that is used to create, execute, modify, and destroy photoflos as well as work with the various resource types XIE introduces. XieGetClientData, which can be used to read resource, histogram, and image data from the server, is also discussed. Because I/O between the server and a client is, in my opinion, provided at too low of a level by XIElib, and requires a knowledge of XIE event processing to be done successfully, a higher-level routine that is designed to ease this task considerably is presented and discussed in detail. Chapter 5 introduces the import element, which is the point at which resource and image data enters a photoflo from the outside world. XIElib provides no facility for reading image data that is embedded in a file format such as TIFF or determining its attributes; Chapter 6 contrasts file formats and image encodings, and provides a detailed overview of the TIFF file format. Programming tasks related to file formats that the XIElib programmer must address are clearly defined. Routines that can be used to read and write CCITT FAX image data from and to TIFF files, as well as readers and writers for PPM, PGM, and JFIF (JPEG) file formats, are provided on the CD that accompanies this book. Chapter 7 describes XIE's export elements in detail. Export elements are used to write image and resource data from a photoflo to a resource, or make it available for reading by the client. Chapters 8, 9, 10, and 11 discuss process elements. After one is familiar with XIElib programming a bit, these four chapters can be used as a reference to the XIElib APIs that can be used to add process elements to a photoflo graph. Chapter 12 introduces the reader to the various events and errors that are defined by XIE. An overview of error and event handling in Xlib and Xt is provided. Strategies for dealing with events and errors in XIElib clients are then presented. Chapters 13 through 18 introduce and discuss XIE techniques. Techniques allow a client to specify the algorithm that is to be used by a photoflo element when performing its task. For example, the Dither process element supports both error-diffusion and ordered dither techniques. Chapter 15 provides a detailed discussion of colorspaces as related to the colorspace conversion techniques that are supported by XIE. Chapters 16 and 17 describe the various image encode and decode techniques supported by the ImportClientPhoto and ExportClientPhoto elements, with Chapter 17 devoted exclusively to a discussion of JPEG. Chapter 18 discusses Geometry techniques; significant portions of this chapter were taken from the XIE Protocol Specification and edited where necessary. Finally, Chapter 19 discusses the important topic of preparing image data for display in an X window of an arbitrary visual class and depth. Code is developed in this chapter that can, when given information about the image data that is to be displayed and the visual class and depth of the window into which it will be rendered, append the appropriate process elements to the end of a photoflo graph in order for the image to display correctly. Appendices are also provided following Chapter 19.


Source Code CD

A CD with source code is provided with this book. Release notes and descriptions of each client are provided in the file named README. com/crash/s/slogan.

Acknowledgments

A book like this cannot be written without the help of others.


Bob Shelley, the author of the XIE protocol, as well as the architect of the X11R6 XIE-SI while at AGE Logic, was kind enough to carefully review significant portions of this manuscript. His comments led to the discovery of many errors in an early draft of the book, for which I am most grateful. Similar thanks go to Larry Hare, another member of the XIE-SI team, who was a constant source of constructive criticism, inspiration, and guidance during the XIE-SI project. Daniel Dardailler (formerly of the X Consortium) and Greg Baxes both provided useful comments after reading an early version of the manuscript. Al Tabayoyon also provided a careful review of an early draft of the chapter that deals with colorspace conversions, for which I am grateful.


Dr. J. Ben Fahy was an active participant in the design of the 5.0 protocol, and was responsible for the material in the XIE 5.0 Protocol Specification that describes the Geometry sample techniques. Major portions of that material were edited by me and included in Chapter 18 of this book. Ben, along with Drs. Dean Verheiden and Gary Rogers, the remaining members of the XIE-SI development team at AGE Logic, deserve my thanks for helping me to learn various aspects of XIE. Robert Alford, former Vice President of Engineering at AGE Logic, deserves special thanks for believing in my capabilities, and for allowing me to participate as a member of the XIE-SI team.


I'd also like to thank Greg Doench of Prentice Hall, for taking the time to talk with me about my ideas for a book (ideas that came to me moments after I strolled past the Prentice Hall booth at X World '94 in New York), for considering my formal proposal that followed, and for consenting to the project that led to this book. Mary Treacy and Leabe Berman, Greg's editorial assistants, handled my numerous phone calls and e-mail queries graciously.


The production editor for this project, Mary Sudul, was responsible for getting the manuscript into good shape prior to its publication, and deserves thanks for her efforts. Christina Carroll was the copyeditor for the book. Christina was inhumanly thorough in her critique of the manuscript, which I appreciate (I think :-). I can only hope that while reading my manuscript she learned as much about XIE as I learned about punctuation, grammar, capitalization, and so forth, while reviewing her comments. Lisa Iarkowski skillfully guided the book and CD-ROM through the final review process.


My family (Mom, Dad, and Rod) deserve many thanks for their support. I'd also like to thank Nguyen Hoang and her cat, "


Product Details

  • Textbook Binding: 640 pages
  • Publisher: Prentice Hall (November 18, 1997)
  • Language: English
  • ISBN-10: 0134429141
  • ISBN-13: 978-0134429144
  • Product Dimensions: 10 x 7 x 1 inches
  • Shipping Weight: 1.8 pounds
  • Average Customer Review: 5.0 out of 5 stars  See all reviews (2 customer reviews)
  • Amazon Best Sellers Rank: #5,048,250 in Books (See Top 100 in Books)

More About the Author

Discover books, learn about writers, read author blogs, and more.

 

Customer Reviews

2 Reviews
5 star:
 (2)
4 star:    (0)
3 star:    (0)
2 star:    (0)
1 star:    (0)
 
 
 
 
 
Average Customer Review
5.0 out of 5 stars (2 customer reviews)
 
 
 
 
Share your thoughts with other customers:
Most Helpful Customer Reviews

1 of 1 people found the following review helpful:
5.0 out of 5 stars Out of this world!, June 23, 2000
This review is from: Developing Imaging Applications With Xielib (Textbook Binding)
This book is absolutely amazing. Before I read it, I hadn't a clue about what so-called "XIE" was or what you could do with it. Now, after reading this masterpiece of a work, I still don't know much about it, but I'm developing my very own imaging applications and making a lot of money -- in little time! Thanks Syd Logan!
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


2 of 3 people found the following review helpful:
5.0 out of 5 stars Out of this world!, June 23, 2000
This review is from: Developing Imaging Applications With Xielib (Textbook Binding)
This book is Fantastic with a capital F! Before I picked up this book, I had no idea what this so-called "XIE" was or what it could do. Now, having read this book, I'm considered the local X(ie)Pert (get it?), the imaging applications that I'm developing are bringing in tons of cash - in little time! Thanks Syd Logan!
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No

Share your thoughts with other customers: Create your own review
 
 
 
Only search this product's reviews



Tag this product

 (What's this?)
Think of a tag as a keyword or label you consider is strongly related to this product.
Tags will help all customers organize and find favorite items.
Your tags: Add your first tag
 

Sell a Digital Version of This Book in the Kindle Store

If you are a publisher or author and hold the digital rights to a book, you can sell a digital version of it in our Kindle Store. Learn more

Customer Discussions

This product's forum
Discussion Replies Latest Post
No discussions yet

Ask questions, Share opinions, Gain insight
Start a new discussion
Topic:
First post:
Prompts for sign-in
 


Active discussions in related forums
Search Customer Discussions
Search all Amazon discussions
   
Related forums


Listmania!


Create a Listmania! list

So You'd Like to...


Create a guide


Look for Similar Items by Category


Look for Similar Items by Subject