Low Level X Window Programming

Size: px
Start display at page:

Download "Low Level X Window Programming"

Transcription

1 Low Level X Window Programming

2 Ross J. Maloney Low Level X Window Programming An Introduction by Examples 123

3 Dr. Ross J. Maloney Yenolam Corporation Booragoon, WA Australia ISBN ISBN (ebook) Library of Congress Control Number: Springer International Publishing AG, part of Springer Nature 2017 This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of the material is concerned, specifically the rights of translation, reprinting, reuse of illustrations, recitation, broadcasting, reproduction on microfilms or in any other physical way, and transmission or information storage and retrieval, electronic adaptation, computer software, or by similar or dissimilar methodology now known or hereafter developed. The use of general descriptive names, registered names, trademarks, service marks, etc. in this publication does not imply, even in the absence of a specific statement, that such names are exempt from the relevant protective laws and regulations and therefore free for general use. The publisher, the authors and the editors are safe to assume that the advice and information in this book are believed to be true and accurate at the date of publication. Neither the publisher nor the authors or the editors give a warranty, express or implied, with respect to the material contained herein or for any errors or omissions that may have been made. The publisher remains neutral with regard to jurisdictional claims in published maps and institutional affiliations. Printed on acid-free paper This Springer imprint is published by the registered company Springer International Publishing AG part of Springer Nature The registered company address is: Gewerbestrasse 11, 6330 Cham, Switzerland

4 Preface This book is the missing part of most X Window programming books, the part which others either neglect or skip over quickly. Those omissions are the subject material of this book. Most books on X Window programming cover Xlib in passing. They pass on to use of toolkits for it is they which are most commonly used to write X Window programs. Such toolkits include Athena, Xt, Motif, GTK, Qt, among a number of others. Toolkits are used for they produce a finished graphics result in less time and can be used without entirely understanding what is going on behind the scenes. Low-level programming in X Window is analogous to assembly language programming. Whereas in assembler programming a knowledge of the computer hardware is required, in low-level X Window programming a knowledge of how the X Window System operated is required. From the perspective taken here, X toolkits are high-level languages and are not considered here. This contrasts to the standard X Window programming book. With respect to these levels, brief consideration is given to the protocol underlying X Window. This is the equivalent of machine language. This is not a practical way of coding an X Window program but is covered as foundation material. An increased level of abstraction and removal from hardware detail is provided by Xlib which occupies most of this book. An overview of Xcb which has recently appeared as a replacement of Xlib is also included. The philosophy in this book is to link the programming which produces outcomes for the program s user to the operation of X Window. The Xlib library functions have a direct connection to the messages passed between the client and server, the two main elements of an X Window system. This message connection means being able to write graphics programs which can perform the graphics operations the fastest possible under X. But to achieve such speed requires more knowledge. Without that knowledge, the required speed increase above that obtainable via a toolkit may not be obtained, let alone nothing appearing at all. More time is required in coding using Xlib than a toolkit. Whether a possible increase in execution speed balances out the longer coding time is a value judgement. v

5 vi Preface Knowledge is acquired here. Writing a program in Xlib is exercising knowledge of how the X Window system works; how the pieces are connected together to produce the total outcome. The aim of this book is to assist the reader in acquiring knowledge of using the Xlib library. A discuss and show me style is used here. A discussion of the concepts is given, and then, those discussions are used to write a Xlib program. The output produced is shown together with the listing of the program. Exercises are then included to extend the discussion and to encourage the reader to reflect on the concepts just covered. Each program is written in a standard style and is as short in length as possible. The aim is to equip the reader to produce Xlib programs to support many needs. X Window is present on computers ranging in performance from supercomputers to personal computers. The programmer engaged in different computing environments, application realms, and target end-users needs to bring knowledge specificto that environment, realm, and end-user type, to be successful. A toolbox (nor kit) of displaying colours, patterns, geometric shapes, text, and input control by mouse and keyboard each in an efficient and effective manner will help their adaptation. All these tasks can be done using a toolkit but done the way the toolkit is set up to do it. The reader will be exposed to handling all those tasks in this book to do them in an individual way. Although all the programs contained in this book were developed on a laptop running Linux, they should carry over to all X Window environments. Each chapter is designed to stand alone although there are some cross-references within the sections of a chapter and between chapters. The chapters are arranged in the order of increasing complexity. This book does not provide a reference to the functions of the Xlib library, nor does it use all those functions. It shows how to combine those Xlib functions to produce functioning programs. References such as Xlib Reference Manual edited by Adrian Nye and published by O Reilly & Associates, Inc. in 1993 provide detail of all Xlib functions together with their parameters, description of purpose and error returns. The reader should have access to such a source while reading and working through the examples contained here for obtaining a greater depth of knowledge. The book Xlib Programming Manual by Adrian Nye, published by O Reilly & Associates, Inc. in 1995, could be used to advantage to put Xlib into the context of the overall X Window system s component parts. This book takes a subset of the components covered in the Xlib Programming Manual and puts them together into working programs. As with those references, this book considers release of the X Window software.

6 Preface vii Thank You The existence of this book is a result of the open source initiative. All text and programs were written using vim. The programs were converted from source code to executable code using the gcc compiler and associated libraries. The photo editor xv was used to obtain the screenshots which show the programs operating. All programs, text preparation and associated experimentation were done on a Linux system. The prepared text was typeset using LATEX through many iterations. Without the X Window system and its associated libraries and utility programs, there would have been no subject matter and environment to elaborate upon. To the countless people who brought those elements into existence, maintain them, and make them available, may I express my thanks. Reader Background Assumed This book is aimed at those readers interested in understanding how to program X Window at a low level. The majority of that level considered here is Xlib with the addition of Xcb and the X Window protocol itself. It is assumed the reader knows the C language and has used X Windows to run application programs. A programming knowledge of one or more of the X toolkits available would be a further advantage so as to offer a contrast to using Xlib. Familiarity with the contents of, and access to a copy of Xlib Programming Manual for Version 11 by Adrian Nye, published in 1995 by O Reilly & Associates, Inc. ISBN , and Xlib Reference Manual edited by Adrian Nye, published by O Reilly & Associates, Inc. in 1993, ISBN , is assumed. These volumes provide essential auxiliary information and detail. The best advantage of this material is obtained by writing programs and debugging those programs. The examples and the exercises are starting points. The reader should have access to an X Window system which can be used for this practice. Perth, Australia November 2017 Ross J. Maloney

7 Contents 1 Preliminaries The Place of the X Protocol X Window Programming Gotchas Programming in X Window Getting Something to Show Basic Xlib Programming Code Blocks Creating a Single Window Open Connection to the Server Top-Level Window Exercises Smallest Xlib Program to Produce a Window Exercises A Simple but Useful Xlib Program Exercises A Moving Window Exercises Parts of Windows Can Disappear from View Testing Overlay Services Available from an X Server Consequences of No Server Overlay Services Exercises Changing a Window s Properties Summary Windows and Events Produce Menus Colour Exercises A Button to Click ix

8 x Contents 3.3 Events Exercises Menus Text Labelled Menu Buttons Exercises Further Consideration of Mouse Events Exercises A Mouse Behaviour Application Exercises Implementing Hierarchical Menus Exercises Which Window Gets the Event? Exercises Summary Pattern Maps and Labels The Pixmap Resource Pattern Patches Bitmap Patterns Exercises A Bitmap Cursor Exercises A Partially Transparent Pixmap Using Postscript to Create Labels Changing the Colour of a Pixmap Reducing Server Client Interaction by Images Exercises Creating Menus by Using the Image Format Exercises Forming Text Messages from Bitmap Glyphs Accessing X11 Standard Bitmap Fonts How to Use the Bitmap Fonts Exercises Using Pixmaps to Colour a Window s Background Exercises Summary Keyboard Entry and Displaying Text Elementary Keyboard Text X Entry Exercises What Fonts Are Available Keyboard Echoing on Windows Exercises

9 Contents xi 5.4 Putting Lines of Text in a Window Exercises Insertion Cursor Exercises Moving Between Text Input Windows Using Keys Exercises A Slider Bar Exercises Scrolling Text Scrolling Horizontally Scrolling Vertically Exercises Summary Classic Drawing Limit on Multiple Objects in a Request Drawing Lines, Circles, and a Coloured-In Square Exercises A Symbol Composed from Circle Parts Exercises A Circle Bouncing off Plain Edges Exercises Displaying the Multi Colours of a Photograph Exercises Summary Extensions Multi-colour XPM Pixmaps Exercises Network Connecting Client to Server Exercises Scalable Fonts Exercises Summary The Xcb Alternative Starting and Finishing with Xcb Creating and Using a Window Communicating with the Window Manager Events A Consolidation Program Exercises Colour, Fonts, then Text Exercises

10 xii Contents 8.7 A Classic Program Converted to Xcb Exercises Summary Closer to the X Protocol The X Window Environment Exercises Client/Server Interaction Exercises More than a Protocol is Required Exercises Summary References Index

Failure-Modes-Based Software Reading

Failure-Modes-Based Software Reading SPRINGER BRIEFS IN COMPUTER SCIENCE Yang-Ming Zhu Failure-Modes-Based Software Reading SpringerBriefs in Computer Science More information about this series at http://www.springer.com/series/10028 Yang-Ming

More information

Mobile Phone Security and Forensics

Mobile Phone Security and Forensics Mobile Phone Security and Forensics Iosif I. Androulidakis Mobile Phone Security and Forensics A Practical Approach Second Edition Iosif I. Androulidakis Pedini Ioannina Greece ISBN 978-3-319-29741-5

More information

Philip Andrew Simpson. FPGA Design. Best Practices for Team-based Reuse. Second Edition

Philip Andrew Simpson. FPGA Design. Best Practices for Team-based Reuse. Second Edition FPGA Design Philip Andrew Simpson FPGA Design Best Practices for Team-based Reuse Second Edition Philip Andrew Simpson San Jose, CA, USA ISBN 978-3-319-17923-0 DOI 10.1007/978-3-319-17924-7 ISBN 978-3-319-17924-7

More information

Fundamentals of Java Programming

Fundamentals of Java Programming Fundamentals of Java Programming Mitsunori Ogihara Fundamentals of Java Programming 123 Mitsunori Ogihara Department of Computer Science University of Miami Miami, FL, USA ISBN 978-3-319-89490-4 ISBN 978-3-319-89491-1

More information

Introduction to Computer Networking

Introduction to Computer Networking Introduction to Computer Networking Thomas G. Robertazzi Introduction to Computer Networking 123 Thomas G. Robertazzi Department of Electrical and Computer Engineering Stony Brook University Stony Brook,

More information

Intelligent Systems Reference Library

Intelligent Systems Reference Library Intelligent Systems Reference Library Volume 145 Series editors Janusz Kacprzyk, Polish Academy of Sciences, Warsaw, Poland e-mail: kacprzyk@ibspan.waw.pl Lakhmi C. Jain, University of Canberra, Canberra,

More information

SpringerBriefs in Computer Science

SpringerBriefs in Computer Science SpringerBriefs in Computer Science Series editors Stan Zdonik, Brown University, Providence, Rhode Island, USA Shashi Shekhar, University of Minnesota, Minneapolis, Minnesota, USA Xindong Wu, University

More information

George Grätzer. Practical L A TEX

George Grätzer. Practical L A TEX Practical L A TEX George Grätzer Practical L A TEX 123 George Grätzer Toronto, ON, Canada Additional material to this book can be downloaded from http://extras.springer.com ISBN 978-3-319-06424-6 ISBN

More information

Wireless Networks. Series Editor Xuemin Sherman Shen University of Waterloo Waterloo, Ontario, Canada

Wireless Networks. Series Editor Xuemin Sherman Shen University of Waterloo Waterloo, Ontario, Canada Wireless Networks Series Editor Xuemin Sherman Shen University of Waterloo Waterloo, Ontario, Canada More information about this series at http://www.springer.com/series/14180 Sachin Shetty Xuebiao Yuchi

More information

Guide to OSI and TCP/IP Models

Guide to OSI and TCP/IP Models SPRINGER BRIEFS IN COMPUTER SCIENCE Mohammed M. Alani Guide to OSI and TCP/IP Models SpringerBriefs in Computer Science Series editors Stan Zdonik Peng Ning Shashi Shekhar Jonathan Katz Xindong Wu Lakhmi

More information

Computer Communications and Networks. Series editor A.J. Sammes Centre for Forensic Computing Cranfield University, Shrivenham campus Swindon, UK

Computer Communications and Networks. Series editor A.J. Sammes Centre for Forensic Computing Cranfield University, Shrivenham campus Swindon, UK Computer Communications and Networks Series editor A.J. Sammes Centre for Forensic Computing Cranfield University, Shrivenham campus Swindon, UK The Computer Communications and Networks series is a range

More information

Research on Industrial Security Theory

Research on Industrial Security Theory Research on Industrial Security Theory Menggang Li Research on Industrial Security Theory Menggang Li China Centre for Industrial Security Research Beijing, People s Republic of China ISBN 978-3-642-36951-3

More information

Index. A Aim of book, 3 Approach options taken here, 1 toolkits, 1 Approaches to options selection, 56

Index. A Aim of book, 3 Approach options taken here, 1 toolkits, 1 Approaches to options selection, 56 References Champine GA (1991) MIT Project Athena: a model for distributed campus computing. Digital Press, Massachusetts, USA Gettys J, Scheifler RW (2002) Xlib - c language x interface: X consortium standard.

More information

Functional Programming in R

Functional Programming in R Functional Programming in R Advanced Statistical Programming for Data Science, Analysis and Finance Thomas Mailund Functional Programming in R: Advanced Statistical Programming for Data Science, Analysis

More information

Windows 10 Revealed. The Universal Windows Operating System for PC, Tablets, and Windows Phone. Kinnary Jangla

Windows 10 Revealed. The Universal Windows Operating System for PC, Tablets, and Windows Phone. Kinnary Jangla Windows 10 Revealed The Universal Windows Operating System for PC, Tablets, and Windows Phone Kinnary Jangla Windows 10 Revealed Kinnary Jangla Bing Maps San Francisco, California, USA ISBN-13 (pbk): 978-1-4842-0687-4

More information

Stefan Waldmann. Topology. An Introduction

Stefan Waldmann. Topology. An Introduction Topology Stefan Waldmann Topology An Introduction 123 Stefan Waldmann Julius Maximilian University of Würzburg Würzburg Germany ISBN 978-3-319-09679-7 ISBN 978-3-319-09680-3 (ebook) DOI 10.1007/978-3-319-09680-3

More information

The Dark Side of Silicon

The Dark Side of Silicon The Dark Side of Silicon Amir M. Rahmani Pasi Liljeberg Ahmed Hemani Axel Jantsch Hannu Tenhunen Editors The Dark Side of Silicon Energy Efficient Computing in the Dark Silicon Era 123 Editors Amir M.

More information

SpringerBriefs in Computer Science

SpringerBriefs in Computer Science SpringerBriefs in Computer Science Series Editors Stan Zdonik Peng Ning Shashi Shekhar Jonathan Katz Xindong Wu Lakhmi C. Jain David Padua Xuemin (Sherman) Shen Borko Furht V.S. Subrahmanian Martial Hebert

More information

Iterative Design of Teaching-Learning Sequences

Iterative Design of Teaching-Learning Sequences Iterative Design of Teaching-Learning Sequences Dimitris Psillos Petros Kariotoglou Editors Iterative Design of Teaching- Learning Sequences Introducing the Science of Materials in European Schools Editors

More information

Interfacing with C++

Interfacing with C++ Interfacing with C++ Jayantha Katupitiya Kim Bentley Interfacing with C++ Programming Real-World Applications ABC Dr. Jayantha Katupitiya Senior Lecturer School of Mechanical and Manufacturing Engineering

More information

Microsoft Computer Vision APIs Distilled

Microsoft Computer Vision APIs Distilled Microsoft Computer Vision APIs Distilled Getting Started with Cognitive Services Alessandro Del Sole Microsoft Computer Vision APIs Distilled Alessandro Del Sole Cremona, Italy ISBN-13 (pbk): 978-1-4842-3341-2

More information

Essential Angular for ASP.NET Core MVC

Essential Angular for ASP.NET Core MVC Essential Angular for ASP.NET Core MVC Adam Freeman Essential Angular for ASP.NET Core MVC Adam Freeman London, UK ISBN-13 (pbk): 978-1-4842-2915-6 ISBN-13 (electronic): 978-1-4842-2916-3 DOI 10.1007/978-1-4842-2916-3

More information

Graphics Programming in c++

Graphics Programming in c++ Graphics Programming in c++ Springer London Berlin Heidelberg New York Barcelona Budapest Hong Kong Milan Paris Santa Clara Singapore Tokyo Mark Walmsley Graphics Programming in c++ Writing Graphics Applications

More information

Polymeric Biomaterials for Tissue Regeneration

Polymeric Biomaterials for Tissue Regeneration Polymeric Biomaterials for Tissue Regeneration Changyou Gao Editor Polymeric Biomaterials for Tissue Regeneration From Surface/Interface Design to 3D Constructs Editor Changyou Gao Department of Polymer

More information

Pro MERN Stack. Full Stack Web App Development with Mongo, Express, React, and Node. Vasan Subramanian

Pro MERN Stack. Full Stack Web App Development with Mongo, Express, React, and Node. Vasan Subramanian Pro MERN Stack Full Stack Web App Development with Mongo, Express, React, and Node Vasan Subramanian Pro MERN Stack Vasan Subramanian Bangalore, Karnataka, India ISBN-13 (pbk): 978-1-4842-2652-0 ISBN-13

More information

Wide Area 2D/3D Imaging

Wide Area 2D/3D Imaging Wide Area 2D/3D Imaging Benjamin Langmann Wide Area 2D/3D Imaging Development, Analysis and Applications Benjamin Langmann Hannover, Germany Also PhD Thesis, University of Siegen, 2013 ISBN 978-3-658-06456-3

More information

English for Academic Research. Series editor Adrian Wallwork Pisa Italy

English for Academic Research. Series editor Adrian Wallwork Pisa Italy English for Academic Research Series editor Adrian Wallwork Pisa Italy This series aims to help non-native, English-speaking researchers communicate in English. The books in this series are designed like

More information

Computer Science Workbench. Editor: Tosiyasu L. Kunii

Computer Science Workbench. Editor: Tosiyasu L. Kunii Computer Science Workbench Editor: Tosiyasu L. Kunii H. Kitagawa T.L. Kunii The U nnortnalized Relational Data Model F or Office Form Processor Design With 78 Figures Springer-Verlag Tokyo Berlin Heidelberg

More information

ITIL 2011 At a Glance. John O. Long

ITIL 2011 At a Glance. John O. Long ITIL 2011 At a Glance John O. Long SpringerBriefs in Computer Science Series Editors Stan Zdonik Peng Ning Shashi Shekhar Jonathan Katz Xindong Wu Lakhmi C. Jain David Padua Xuemin Shen Borko Furht VS

More information

Java Quick Syntax Reference. Second Edition. Mikael Olsson

Java Quick Syntax Reference. Second Edition. Mikael Olsson Java Quick Syntax Reference Second Edition Mikael Olsson Java Quick Syntax Reference Second Edition Mikael Olsson Java Quick Syntax Reference Mikael Olsson Hammarland, Länsi-Suomi, Finland ISBN-13 (pbk):

More information

Embedded and Real-Time Operating Systems

Embedded and Real-Time Operating Systems Embedded and Real-Time Operating Systems K.C. Wang Embedded and Real-Time Operating Systems 123 K.C. Wang School of Electrical Engineering and Computer Science Washington State University Pullman, WA USA

More information

The Windows 10 Productivity Handbook

The Windows 10 Productivity Handbook The Windows 10 Productivity Handbook Discover Expert Tips, Tricks, and Hidden Features in Windows 10 Mike Halsey The Windows 10 Productivity Handbook Mike Halsey Sheffield, Yorkshire, UK ISBN-13 (pbk):

More information

MATLAB Programming for Numerical Analysis. César Pérez López

MATLAB Programming for Numerical Analysis. César Pérez López MATLAB Programming for Numerical Analysis César Pérez López MATLAB Programming for Numerical Analysis Copyright 2014 by César Pérez López This work is subject to copyright. All rights are reserved by the

More information

Jinkun Liu Xinhua Wang. Advanced Sliding Mode Control for Mechanical Systems. Design, Analysis and MATLAB Simulation

Jinkun Liu Xinhua Wang. Advanced Sliding Mode Control for Mechanical Systems. Design, Analysis and MATLAB Simulation Jinkun Liu Xinhua Wang Advanced Sliding Mode Control for Mechanical Systems Design, Analysis and MATLAB Simulation Jinkun Liu Xinhua Wang Advanced Sliding Mode Control for Mechanical Systems Design, Analysis

More information

Software Development for SAP R/3

Software Development for SAP R/3 Software Development for SAP R/3 Springer-Verlag Berlin Heidelberg GmbH Ulrich Mende Software Development for SAP R/3 Data Dictionary, ABAP/4, Interfaces With Diskette With 124 Figures and Many Example

More information

Building Custom Tasks for SQL Server Integration Services

Building Custom Tasks for SQL Server Integration Services Building Custom Tasks for SQL Server Integration Services Andy Leonard Building Custom Tasks for SQL Server Integration Services Andy Leonard Farmville, Virginia, USA ISBN-13 (pbk): 978-1-4842-2939-2 ISBN-13

More information

Multidimensional Queueing Models in Telecommunication Networks

Multidimensional Queueing Models in Telecommunication Networks Multidimensional Queueing Models in Telecommunication Networks ThiS is a FM Blank Page Agassi Melikov Leonid Ponomarenko Multidimensional Queueing Models in Telecommunication Networks Agassi Melikov Department

More information

HP DECwindows Motif for OpenVMS Documentation Overview

HP DECwindows Motif for OpenVMS Documentation Overview HP for OpenVMS Documentation Overview Order Number: BA402-90002 July 2006 This overview provides information about for OpenVMS Version 1.6 documentation. Revision/Update Information: This manual supersedes

More information

Advances in Computer Vision and Pattern Recognition

Advances in Computer Vision and Pattern Recognition Advances in Computer Vision and Pattern Recognition Founding editor Sameer Singh, Rail Vision, Castle Donington, UK Series editor Sing Bing Kang, Microsoft Research, Redmond, WA, USA Advisory Board Horst

More information

Robust SRAM Designs and Analysis

Robust SRAM Designs and Analysis Robust SRAM Designs and Analysis Jawar Singh Saraju P. Mohanty Dhiraj K. Pradhan Robust SRAM Designs and Analysis 123 Jawar Singh Indian Institute of Information Technology Design and Manufacturing Dumna

More information

The Joy of. An Overview of the X Window System. Niall Mansfield

The Joy of. An Overview of the X Window System. Niall Mansfield The Joy of An Overview of the X Window System Niall Mansfield Preface V PART 1 X in a Nutshell 1 A Brief Overview of the X System 3 1.1 X is a client/server window system 4 1.2 The user interface is not

More information

How to...create a Video VBOX Gauge in Inkscape. So you want to create your own gauge? How about a transparent background for those text elements?

How to...create a Video VBOX Gauge in Inkscape. So you want to create your own gauge? How about a transparent background for those text elements? BASIC GAUGE CREATION The Video VBox setup software is capable of using many different image formats for gauge backgrounds, static images, or logos, including Bitmaps, JPEGs, or PNG s. When the software

More information

Gengsheng Lawrence Zeng. Medical Image Reconstruction. A Conceptual Tutorial

Gengsheng Lawrence Zeng. Medical Image Reconstruction. A Conceptual Tutorial Gengsheng Lawrence Zeng Medical Image Reconstruction A Conceptual Tutorial Gengsheng Lawrence Zeng Medical Image Reconstruction A Conceptual Tutorial With 163 Figures Author Prof. Dr. Gengsheng Lawrence

More information

Agile Swift. Swift Programming Using Agile Tools and Techniques. Godfrey Nolan

Agile Swift. Swift Programming Using Agile Tools and Techniques. Godfrey Nolan Agile Swift Swift Programming Using Agile Tools and Techniques Godfrey Nolan Agile Swift: Swift Programming Using Agile Tools and Techniques Godfrey Nolan Huntington Woods, Michigan, USA ISBN-13 (pbk):

More information

COMPONENT-ORIENTED PROGRAMMING

COMPONENT-ORIENTED PROGRAMMING COMPONENT-ORIENTED PROGRAMMING COMPONENT-ORIENTED PROGRAMMING ANDY JU AN WANG KAI QIAN Southern Polytechnic State University Marietta, Georgia A JOHN WILEY & SONS, INC., PUBLICATION Copyright 2005 by John

More information

Time-of-Flight and Structured Light Depth Cameras

Time-of-Flight and Structured Light Depth Cameras Time-of-Flight and Structured Light Depth Cameras Pietro Zanuttigh Giulio Marin Carlo Dal Mutto Fabio Dominio Ludovico Minto Guido Maria Cortelazzo Time-of-Flight and Structured Light Depth Cameras Technology

More information

High Availability and Disaster Recovery

High Availability and Disaster Recovery High Availability and Disaster Recovery Klaus Schmidt High Availability and Disaster Recovery Concepts, Design, Implementation With 83 Figures and 26 Tables 123 Klaus Schmidt Stockheimer Str. 20 60385

More information

More information about this series at

More information about this series at Edition With modern computer technology everywhere, the importance of data integrity and the security of IT systems has increased immensely. Given the complexityand rapid progress of information

More information

Inside Relational Databases with Examples in Access

Inside Relational Databases with Examples in Access Inside Relational Databases with Examples in Access Inside Relational Databases with Examples in Access Mark Whitehorn and Bill Marklyn 123 Mark Whitehorn Applied Computing Division, University of Dundee,

More information

Advanced Data Mining Techniques

Advanced Data Mining Techniques Advanced Data Mining Techniques David L. Olson Dursun Delen Advanced Data Mining Techniques Dr. David L. Olson Department of Management Science University of Nebraska Lincoln, NE 68588-0491 USA dolson3@unl.edu

More information

Android Continuous Integration

Android Continuous Integration Android Continuous Integration Build-Deploy-Test Automation for Android Mobile Apps Pradeep Macharla Android Continuous Integration Pradeep Macharla North Carolina, USA ISBN-13 (pbk): 978-1-4842-2795-4

More information

Web Development with Java

Web Development with Java Web Development with Java Tim Downey Web Development with Java Using Hibernate, JSPs and Servlets Tim Downey, BS, MS Florida International University Miami, FL 33199, USA British Library Cataloguing in

More information

Whitestein Series in software Agent Technologies. About whitestein Technologies

Whitestein Series in software Agent Technologies. About whitestein Technologies Whitestein Series in software Agent Technologies Series Editors: Marius Walliser Stefan Brantschen Monique Calisti Thomas Hempfling This series reports new developments in agent-based software technologies

More information

Laura Tateosian. Python For ArcGIS

Laura Tateosian. Python For ArcGIS Python For ArcGIS Laura Tateosian Python For ArcGIS Laura Tateosian North Carolina State University Raleigh, NC, USA ISBN 978-3-319-18397-8 DOI 10.1007/978-3-319-18398-5 ISBN 978-3-319-18398-5 (ebook)

More information

Contents. Table of Contents. Table of Contents... iii Preface... xvii. Getting Started iii

Contents. Table of Contents. Table of Contents... iii Preface... xvii. Getting Started iii Contents Discovering the Possibilities... iii Preface... xvii Preface to the First Edition xvii Preface to the Second Edition xviii Getting Started... 1 Chapter Overview 1 Philosophy Behind this Book 1

More information

Contributions to Economics

Contributions to Economics Contributions to Economics Kesra Nermend Vector Calculus in Regional Development Analysis Comparative Regional Analysis Using the Example of Poland Physica Verlag A Springer Company Dr. inž. Kesra Nermend

More information

Network-Embedded Management and Applications

Network-Embedded Management and Applications Network-Embedded Management and Applications Alexander Clemm Ralf Wolter Editors Network-Embedded Management and Applications Understanding Programmable Networking Infrastructure Editors Alexander Clemm

More information

SUNLITE is a trademark of Bruno Nicolaudie. WINDOWS is a trademark of the MICROSOFT CORPORATION. All rights reserved. No parts of this work may be

SUNLITE is a trademark of Bruno Nicolaudie. WINDOWS is a trademark of the MICROSOFT CORPORATION. All rights reserved. No parts of this work may be SUNLITE is a trademark of Bruno Nicolaudie. WINDOWS is a trademark of the MICROSOFT CORPORATION. All rights reserved. No parts of this work may be reproduced in any form or by any means - graphic, electronic,

More information

Fundamentals of Operating Systems. Fifth Edition

Fundamentals of Operating Systems. Fifth Edition Fundamentals of Operating Systems Fifth Edition Fundamentals of Operating Systems A.M. Lister University of Queensland R. D. Eager University of Kent at Canterbury Fifth Edition Springer Science+Business

More information

CorelDRAW X7. Kogent Learning Solutions Inc. Authored by: Published by:

CorelDRAW X7. Kogent Learning Solutions Inc. Authored by: Published by: CorelDRAW X7 Authored by: Kogent Learning Solutions Inc. Published by: Copyright by 2014 Dreamtech Press, 19-A, Ansari Road, Daryaganj, New Delhi-110002 This book may not be duplicated in any way without

More information

TASK SCHEDULING FOR PARALLEL SYSTEMS

TASK SCHEDULING FOR PARALLEL SYSTEMS TASK SCHEDULING FOR PARALLEL SYSTEMS Oliver Sinnen Department of Electrical and Computer Engineering The University of Aukland New Zealand TASK SCHEDULING FOR PARALLEL SYSTEMS TASK SCHEDULING FOR PARALLEL

More information

SQL Server AlwaysOn Revealed

SQL Server AlwaysOn Revealed SQL Server AlwaysOn Revealed Second Edition Peter A. Carter SQL Server AlwaysOn Revealed, 2nd Edition Peter A. Carter Botley, United Kingdom ISBN-13 (pbk): 978-1-4842-2396-3 ISBN-13 (electronic): 978-1-4842-2397-0

More information

LEGITIMATE APPLICATIONS OF PEER-TO-PEER NETWORKS

LEGITIMATE APPLICATIONS OF PEER-TO-PEER NETWORKS LEGITIMATE APPLICATIONS OF PEER-TO-PEER NETWORKS DINESH C. VERMA IBM T. J. Watson Research Center A JOHN WILEY & SONS, INC., PUBLICATION LEGITIMATE APPLICATIONS OF PEER-TO-PEER NETWORKS LEGITIMATE APPLICATIONS

More information

Background Information About GTK+ and Related Libraries

Background Information About GTK+ and Related Libraries Background Information About GTK+ and Related Libraries The X Window System The X Window System is a networking and display protocol which provides windowing on bitmapped displays. X provides the basic

More information

Modeling and Simulation in Scilab/Scicos with ScicosLab 4.4

Modeling and Simulation in Scilab/Scicos with ScicosLab 4.4 Modeling and Simulation in Scilab/Scicos with ScicosLab 4.4 Stephen L. Campbell, Jean-Philippe Chancelier and Ramine Nikoukhah Modeling and Simulation in Scilab/Scicos with ScicosLab 4.4 Second Edition

More information

DIS: Design and imaging software

DIS: Design and imaging software Using IT productivity tools and applications This is the ability to use a software application designed to create, modify and layout artwork or images for display in print or on a screen (eg vector graphics

More information

Foundations of 3D Graphics Programming

Foundations of 3D Graphics Programming Foundations of 3D Graphics Programming Jim X. Chen Edward J. Wegman Foundations of 3D Graphics Programming Using JOGL and Java3D With 139 Figures Jim X. Chen, PhD Computer Science Department George Mason

More information

Expression Design Lab Exercises

Expression Design Lab Exercises Expression Design Lab Exercises Creating Images with Expression Design 2 Beaches Around the World (Part 1: Beaches Around the World Series) Information in this document, including URL and other Internet

More information

Wireless Networks. Series Editor: Xuemin (Sherman) Shen University of Waterloo, Waterloo, Ontario, Canada

Wireless Networks. Series Editor: Xuemin (Sherman) Shen University of Waterloo, Waterloo, Ontario, Canada Wireless Networks Series Editor: Xuemin (Sherman) Shen University of Waterloo, Waterloo, Ontario, Canada More information about this series at http://www.springer.com/series/14180 Rongxing Lu Privacy-Enhancing

More information

Preface. This Book and Simulation Software Bundle Project

Preface. This Book and Simulation Software Bundle Project Preface This Book and Simulation Software Bundle Project Dear Reader, this book project brings to you a unique study tool for ESD protection solutions used in analog-integrated circuit (IC) design. Quick-start

More information

C SCI The X Window System Stewart Weiss

C SCI The X Window System Stewart Weiss The X Window System The X Window System is a networking and display protocol which provides windowing on bitmapped displays. X provides the basic framework for building GUI environments, such as drawing

More information

JavaScript Quick Syntax Reference

JavaScript Quick Syntax Reference JavaScript Quick Syntax Reference Mikael Olsson JavaScript Quick Syntax Reference Copyright 2015 by Mikael Olsson This work is subject to copyright. All rights are reserved by the Publisher, whether the

More information

Geometric Modeling and Algebraic Geometry

Geometric Modeling and Algebraic Geometry Geometric Modeling and Algebraic Geometry Bert Jüttler Ragni Piene Editors Geometric Modeling and Algebraic Geometry 123 Bert Jüttler Institute of Applied Geometry Johannes Kepler University Altenberger

More information

The Information Retrieval Series. Series Editor W. Bruce Croft

The Information Retrieval Series. Series Editor W. Bruce Croft The Information Retrieval Series Series Editor W. Bruce Croft Sándor Dominich The Modern Algebra of Information Retrieval 123 Sándor Dominich Computer Science Department University of Pannonia Egyetem

More information

Oracle Linux 7. Accessibility User's Guide

Oracle Linux 7. Accessibility User's Guide Oracle Linux 7 Accessibility User's Guide E92218-01 February 2018 Oracle Legal Notices Copyright 2018, Oracle and/or its affiliates. All rights reserved. This software and related documentation are provided

More information

Real-Time Graphics Rendering Engine

Real-Time Graphics Rendering Engine Hujun Bao Wei Hua Real-Time Graphics Rendering Engine With 66 figures, 11 of them in color ADVANCED TOPICS IN SCIENCE AND TECHNOLOGY IN CHINA ADVANCED TOPICS IN SCIENCE AND TECHNOLOGY IN CHINA Zhejiang

More information

Christopher Kormanyos. Real-Time C++ Efficient Object-Oriented and Template Microcontroller Programming Second Edition

Christopher Kormanyos. Real-Time C++ Efficient Object-Oriented and Template Microcontroller Programming Second Edition Christopher Kormanyos Real-Time C++ Efficient Object-Oriented and Template Microcontroller Programming Second Edition Real-Time C++ Christopher Kormanyos Real-Time C++ Efficient Object-Oriented and Template

More information

MACMILAN MASTER SBUEI

MACMILAN MASTER SBUEI Mastering JavaO MACMILAN MASTER SBUEI Accounting Advanced English Language Advanced Pure Mathematics Arabic Banking Basic Management Biology British Politics Business Administration Business Communication

More information

How-To Guide SAP 3D Visual Enterprise Author Document Version: Markups and Measurements

How-To Guide SAP 3D Visual Enterprise Author Document Version: Markups and Measurements How-To Guide SAP 3D Visual Enterprise Author Document Version: 1.0-2014-06-03 Document History Document Version Description 1.0 First version Document History 2014 SAP AG or an SAP affiliate company. All

More information

Contents. I. Starting a New Presentation Try it! II. Choosing a Theme III. Tailoring the theme IV Background Styles...

Contents. I. Starting a New Presentation Try it! II. Choosing a Theme III. Tailoring the theme IV Background Styles... Contents PowerPoint 2007... 2 I. Starting a New Presentation... 4... 4 II. Choosing a Theme... 4... 4 III. Tailoring the theme... 5 IV Background Styles... 5... 5 V. Add slides, pick layouts... 6... 6

More information

Course Syllabus. Course Title. Who should attend? Course Description. Adobe Animate CC

Course Syllabus. Course Title. Who should attend? Course Description. Adobe Animate CC Course Title Adobe Animate CC Course Description Adobe Animate CC (Creative Clouds) is the world's most powerful graphic design program for adding interactivity and creating animation and multimedia content

More information

Essential Series. Springer-Verlag London Ltd.

Essential Series. Springer-Verlag London Ltd. Essential Series Springer-Verlag London Ltd. Also in this series: Essential Visual Basic 4.0 fast 3-540-19998-5 Essential Delphi 2.0 fast 3-540-76026-1 Essential Java fast 3-540-76052-0 Essential Visual

More information

Create Electronic Presentations

Create Electronic Presentations ISBN 1-74123-779-3 Create Electronic Presentations PowerPoint 2007 BSBITU302A Software Publications Pty. Ltd. BSBITU302A This book supports BSBITU302A, Create Electronic Presentations in the Business Services

More information

Mastering BorlandC++ 4.5

Mastering BorlandC++ 4.5 Mastering BorlandC++ 4.5 Second Edition Tom Swan jsams 201 West 103rd Street Indianapolis, Indiana 46290 Contents Part I Environments 1 1 Introducing Borland C++ 4.5 3 Requirements 4 Installing Borland

More information

Stereo Scene Flow for 3D Motion Analysis

Stereo Scene Flow for 3D Motion Analysis Stereo Scene Flow for 3D Motion Analysis Andreas Wedel Daniel Cremers Stereo Scene Flow for 3D Motion Analysis Dr. Andreas Wedel Group Research Daimler AG HPC 050 G023 Sindelfingen 71059 Germany andreas.wedel@daimler.com

More information

Textadept Quick Reference

Textadept Quick Reference THIRD EDITION Textadept Quick Reference Mitchell Textadept Quick Reference by Mitchell Copyright 2013, 2015, 2016 Mitchell. All rights reserved. Contact the author at mitchell@foicica.com. Although great

More information

ESKIMM1 (SQA Unit Code - F9CM 04) Multimedia software

ESKIMM1 (SQA Unit Code - F9CM 04) Multimedia software Overview This is the ability to use multimedia software designed to combine, manipulate and animate a variety of objects and data types in layouts appropriate for subsequent production to screen. In general,

More information

Understanding the Concepts and Features of Macro Programming 1

Understanding the Concepts and Features of Macro Programming 1 Contents Preface ix Acknowledgments xi Part 1 Understanding the Concepts and Features of Macro Programming 1 Chapter 1 Introduction 3 What Is the SAS Macro Facility? 4 What Are the Advantages of the SAS

More information

MASTERING COBOL PROGRAMMING

MASTERING COBOL PROGRAMMING MASTERING COBOL PROGRAMMING MACMILLAN MASTER SERIES Banking Basic English Law Basic Management Biology British Politics Business Communication Business Microcomputing Chemistry COBOL Programming Commerce

More information

Computer Communications and Networks. Editor A.J. Sammes Centre for Forensic Computing Cranfield University Shrivenham Campus Swindon, UK

Computer Communications and Networks. Editor A.J. Sammes Centre for Forensic Computing Cranfield University Shrivenham Campus Swindon, UK Computer Communications and Networks Editor A.J. Sammes Centre for Forensic Computing Cranfield University Shrivenham Campus Swindon, UK The Computer Communications and Networks series is a range of textbooks,

More information

Unlocking the Power of OPNET Modeler

Unlocking the Power of OPNET Modeler Unlocking the Power of OPNET Modeler For fast, easy modeling, this practical guide provides all the essential information you need to know. A wide range of topics is covered, including custom protocols,

More information

Beyond 20/20. Browser - English. Version 7.0, SP3

Beyond 20/20. Browser - English. Version 7.0, SP3 Beyond 20/20 Browser - English Version 7.0, SP3 Notice of Copyright Beyond 20/20 Desktop Browser Version 7.0, SP3 Copyright 1992-2006 Beyond 20/20 Inc. All rights reserved. This document forms part of

More information

PERFORMANCE ANALYSIS OF REAL-TIME EMBEDDED SOFTWARE

PERFORMANCE ANALYSIS OF REAL-TIME EMBEDDED SOFTWARE PERFORMANCE ANALYSIS OF REAL-TIME EMBEDDED SOFTWARE PERFORMANCE ANALYSIS OF REAL-TIME EMBEDDED SOFTWARE Yau-Tsun Steven Li Monterey Design Systems, Inc. Sharad Malik Princeton University ~. " SPRINGER

More information

Digital VLSI Design with Verilog

Digital VLSI Design with Verilog Digital VLSI Design with Verilog John Michael Williams Digital VLSI Design with Verilog A Textbook from Silicon Valley Polytechnic Institute Second Edition John Michael Williams Wilsonville, OR USA Additional

More information

Beginning Functional JavaScript

Beginning Functional JavaScript Beginning Functional JavaScript Functional Programming with JavaScript Using EcmaScript 6 Anto Aravinth Beginning Functional JavaScript Anto Aravinth Chennai, Tamil Nadu, India ISBN-13 (pbk): 978-1-4842-2655-1

More information

Enabling Technologies for Wireless E-Business

Enabling Technologies for Wireless E-Business Enabling Technologies for Wireless E-Business Weidong Kou Yelena Yesha (Eds.) Enabling Technologies for Wireless E-Business With 141 Figures and 15 Tables ABC Editors Weidong Kou Chinese State Key Laboratory

More information

Digital Preservation Metadata for Practitioners

Digital Preservation Metadata for Practitioners Digital Preservation Metadata for Practitioners Angela Dappert Rebecca Squire Guenther Sébastien Peyrard Editors Digital Preservation Metadata for Practitioners Implementing PREMIS 123 Editors Angela Dappert

More information

Android Continuous Integration

Android Continuous Integration Android Continuous Integration Build-Deploy-Test Automation for Android Mobile Apps Pradeep Macharla Android Continuous Integration Build-Deploy-Test Automation for Android Mobile Apps Pradeep Macharla

More information

Computing Long Term Plan

Computing Long Term Plan Beebot Virtual 2Go or Daisy Dino on ipad Give and follow instructions, which include straight and turning commands, one at a time. Explore outcomes when instructions are given in a sequence Give a simple

More information

SpringerBriefs in Computer Science

SpringerBriefs in Computer Science SpringerBriefs in Computer Science More information about this series at http://www.springer.com/series/10028 Atle Refsdal Bjørnar Solhaug Ketil Stølen Cyber-Risk Management 123 Atle Refsdal SINTEF ICT

More information