Studio E Sviluppo Di Un Progetto Per La Portabilitá Multipiattaforma Di Un

Total Page:16

File Type:pdf, Size:1020Kb

Studio E Sviluppo Di Un Progetto Per La Portabilitá Multipiattaforma Di Un STUDIOESVILUPPODIUNPROGETTOPERLA PORTABILITÁMULTIPIATTAFORMADIUN SISTEMAPERLAVISUALIZZAZIONEDIAMBIENTI VIRTUALITRIDIMENSIONALIINTERATTIVI ilario sanseverino Giugno 2014 Ilario Sanseverino: Studio e sviluppo di un progetto per la portabili- tá multipiattaforma di un sistema per la visualizzazione di ambienti virtuali tridimensionali interattivi, © Giugno 2014 ABSTRACT Object of this thesis is to investigate the existing solutions avail- able for cross-platforming, analysing in particular the specific case study of the conversion of a large project, related to a com- plex multimedia application native to the Microsoft (MS) Win- dows environment, into a multi-platform project, discussing the problems encountered and the solutions adopted. SOMMARIO Lo scopo di questa tesi è di investigare le soluzioni esistenti per la portabilità multipiattaforma, in particolare analizzando lo specifico caso di studio della conversione di un grande proget- to, relativo ad una complessa applicazione multimediale nativa per l’ambiente MS Windows, in un progetto multipiattaforma, discutendo dei problemi incontrati e delle soluzioni adottate. iii INDICE 1 introduzione1 2 stato dell’arte5 2.1 Macchine Virtuali 5 2.1.1 ScummVM 7 2.1.2 Mupen64+ 8 2.2 Linguaggi interpretati 8 2.2.1 Java 10 2.2.2 Web apps 11 2.3 Sorgenti ad hoc 12 2.4 Portabilità per libreria 14 2.4.1 Cocos2d 15 2.4.2 Unity 16 2.4.3 Marmalade 18 2.5 Wine 20 2.6 Considerazioni 21 3 architettura 24 3.1 Struttura originale 25 3.1.1 Parser 26 3.1.2 Engine 31 3.1.3 Procedural 35 3.1.4 VR 36 3.1.5 Avatar 37 3.1.6 Multimedia 38 3.1.7 Audio 39 3.2 Librerie utilizzate 39 3.2.1 Boost 40 3.2.2 SDL 41 3.2.3 FFmpeg 43 3.2.4 LibFFI 44 3.2.5 Libarchive 46 3.3 Modifiche apportate 46 3.3.1 Message passing 48 3.3.2 Embedded Resources 49 3.3.3 Video 51 4 implementazione 54 4.1 Building... 54 4.1.1 Piccoli bug insidiosi 56 4.2 Restyling 59 4.2.1 Networking 59 iv indice v 4.2.2 Audio 61 4.2.3 Device di input 62 4.2.4 Console 65 4.2.5 DLL esterne 65 4.2.6 Video Library 68 4.2.7 Shared Memory 80 4.3 File Embedder 82 5 conclusioni 85 5.1 Obiettivi raggiunti 85 5.2 Confronti 86 5.2.1 Capacità del sistema 86 5.2.2 Lego Editor 88 5.2.3 Novità 93 5.2.4 Retrocompatibilità 94 5.2.5 Oculus VR 96 5.3 Sviluppi futuri 99 i appendice 104 bibliografia 106 ELENCODELLEFIGURE Figura 1 Mappa dei branch di Cocos2d 15 Figura 2 Configurazioni specifiche in Unity 17 Figura 3 Marmalade c++ stack 18 Figura 4 Marmalade workflow 19 Figura 5 Marmalade Juice stack 20 Figura 6 Architettura di Wine 22 Figura 7 CVmMemManager e derivate 27 Figura 8 Infrastruttura per le classi s3d 29 Figura 9 Virtual Machine 30 Figura 10 Extract and Execute 31 Figura 11 Diagramma di sequenza dell’engine 32 Figura 12 Oggetti multimediali 33 Figura 13 Download ed estrazione 34 Figura 14 Schermate di xvr 35 Figura 15 ProceduralLib 36 Figura 16 AvatarLib 38 Figura 17 Interazione con la libreria multimediale 39 Figura 18 Architettura per la OnTimer 47 Figura 19 Message queue 48 Figura 20 Supporto all’internazionalizzazione 50 Figura 21 Video Library 52 Figura 22 Video riprodotto con la nuova libreria 79 Figura 23 Tentativo di riproduzione col player ori- ginale 79 Figura 24 “Riproduzione” di video con wine 80 Figura 25 Test sul numero di poligoni in azione 86 Figura 26 Esecuzione con 2000 oggetti 89 Figura 27 Esecuzione con 6000 oggetti 90 Figura 28 Una semplice costruzione ottenuta con l’editor 90 Figura 29 Logo 3d 91 Figura 30 Confronto 91 Figura 31 Esempi di output tramite console 94 Figura 32 Livorno Virtuale 96 Figura 33 Ambiente tridimensionale vasto e detta- gliato 97 Figura 34 Esempi di uso di shader GLSL 98 vi Figura 35 Script per Oculus, prima e dopo lo shad- ing 100 Figura 36 Interazione tramite Oculus Rift 101 ELENCODELLETABELLE Tabella 1 Branch di Cocos2d e caratteristiche 16 Tabella 2 Alcune metriche relative al progetto 26 Tabella 3 Piattaforme supportate da LibFFI 45 Tabella 4 Confronto sul framerate 92 Tabella 5 Comportamento della rete 93 Tabella 6 Righe di codice degli shader 95 ELENCODEILISTATI Listato 1 Inclusione delle funzioni OpenGL 57 Listato 2 Header per le funzioni di rete 60 Listato 3 WSA Setup 61 Listato 4 Close socket and WSA cleanup 61 Listato 5 Caricamento di file Wav in OpenAL 63 Listato 6 CVmJoystick: vecchio costruttore 64 Listato 7 CVmJoystick: nuovo costruttore 64 Listato 8 CVmJoystick: vecchia query 64 Listato 9 CVmJoystick: nuova query 64 Listato 10 Gestione della tastiera 66 Listato 11 CVmExternDLL: vecchia invocazione 67 Listato 12 CVmExternDLL: nuova invocazione 68 Listato 13 costruttore copia di VFrame 69 Listato 14 Operatori di confronto 70 Listato 15 Iteratore inverso in enqueue 70 Listato 16 Iteratore inverso in shiftTime 70 Listato 17 Query con coda vuota 71 Listato 18 Dati per FFmpeg 72 Listato 19 Dati per VThread 72 Listato 20 Decodifica di un frame video 74 vii Listato 21 Decodifica di un frame audio 75 Listato 22 Calcolo del Presentation TimeStamp (PTS) 76 Listato 23 Pausa 76 Listato 24 Binary file embedder 83 Listato 25 Test sul numero di poligoni supportati 87 ACRONIMI API Application Programming Interface EAX Environmental Audio eXtensions EFX Effects eXtensions FFI Foreign Function Interface GCC GNU Compiler Collection GLSL GL Shading Language GLUT OpenGL Utility Toolkit GPL GNU General Public License GTK+ GIMP ToolKit HMD Head Mounted Display IDE Integrated Development Environment JIT Just In Time LGPL GNU Lesser General Public License LOD Level Of Detail MCI Multimedia Control Interface MinGW Minimal GNU for Windows MS Microsoft MSDNAA Microsoft Developer Network Academic Alliance MSVC Microsoft Visual C++ viii acronimi ix MSVS Microsoft Visual Studio POD Plain Old Data PPC PowerPC PTS Presentation TimeStamp RCOD Red Cross Of Death SCUMM Script Creation Utility for Maniac Mansion SDK Software Development Kit SDL Simple DirectMedia Layer SVN Subversion VM Virtual Machine Wine Wine Is Not an Emulator WSA Windows Socket API XVR eXtreme Virtual Reality 1 INTRODUZIONE Per cross-platforming si intende comunemente la capacità di un software di poter essere eseguito su due o più configurazioni diverse di hardware/sistema operativo, come ad esempio un gioco che funziona sia su PC che su console, o un programma in grado di girare su MS Windows, GNU/Linux e Mac OSX senza differenze di comportamento eccessivamente marcate. Agli albori dell’home computing gli sviluppatori non aveva- no a che fare con una grande varietà di sistemi. I primi mi- crocomputer, come l’Apple II o il Commodore PET, avevano un hardware ben definito e scarse possibilità di modifica. Inol- tre erano oggetti difficili da reperire e parecchio costosi, quin- di chi possedeva un calcolatore si concentrava sullo sviluppo per quella macchina specifica, cercando di sfruttare al meglio le componenti a disposizione. Con la sempre maggiore diffusione dell’elettronica di consu- mo la situazione ha cominciato a cambiare: le prestazioni dei componenti tecnologici sono migliorate incredibilmente, i prez- zi dell’hardware sono scesi, sul mercato sono approdati i PC assemblati; inoltre la produzione di software è diventata un af- fare molto redditizio, provocando un cambiamento sostanzia- le dell’approccio produttivo, passando dall’appassionato che programma “artigianalmente” nel suo garage alle aziende che producono per vendere al maggior numero di utenti possibile. Pertanto è diventato imprescindibile avere layer d’astrazione sull’hardware e standard d’interoperabilità. Negli anni ’90 MS Windows ha fatto indiscussamente da pa- drone sul mercato PC consumer; le esigenze di programma- zione multipiattaforma erano per lo più limitate all’ambiente videoludico, in cui distribuire un gioco sia su PC che sulle va- rie console disponibili poteva essere un affare remunerativo. Al giorno d’oggi invece la situazione è molto più complicata: con l’avvento degli smartphone gli utenti non sono più tanto dispo- sti a tollerare che i loro programmi preferiti siano legati ad un sistema operativo particolare, si aspettano di poter passare da telefono a tablet a PC in maniera rapida ed efficace. Inoltre è più probabile che siano i software ad essere acquistati in base alla disponibilità per il proprio dispositivo che non il viceversa 1 introduzione 2 (come invece accade per le console, in cui esiste il concetto di killer app, il software talmente desiderato da spingere le vendite dell’hardware). Il mobile computing non ha solo portato una grande diffusio- ne di sistemi operativi non Microsoft tra gli utenti, ma anche nuovi paradigmi di utilizzo ed interazione basati su sensori e dispositivi, quali il GPS, i sensori inerziali o gli schermi multi- touch, fino ad allora indisponibili o non utilizzati. La program- mazione multipiattaforma comporta, dunque, tutta una serie di problemi, tecnici (quali caratteristiche sono riconosciute dal compilatore? Quali librerie posso dare per scontate e quali inve- ce devo fornire insieme al programma? Quali feature non sup- portate possono essere sostituite, quali escluse e quali invece devono essere considerate vitali?) e d’interfaccia (in quale mo- do posso efficacemente tradurre una complessa combinazione di tasti per joystick in gesture e accelerazioni?). In compenso il cross-platforming presenta anche molti van- taggi. In primo luogo la disponibilità per sistemi differenti con- sente all’utente di utilizzare i programmi che desidera in un unico ambiente, senza la necessità di multi-boot o macchine vir- tuali dedicate. Inoltre si aggiunge un layer d’astrazione anche sul software, e come affermò una volta David J. Wheeler “all problems in computer science can be solved by another level of indirection” [10].
Recommended publications
  • Blotch3d User Manual with Just a Few Lines Code You Can Create Real-Time 3D Apps for Multiple Platforms
    Blotch3D User Manual With just a few lines code you can create real-time 3D apps for multiple platforms. QUICK START INTRODUCTION PROJECT STRUCTURE DEVELOPMENT MAKING 3D MODELS DYNAMICALLY CHANGING A SPRITE’S ORIENTATION AND POSITION MATRIX INTERNALS A SHORT GLOSSARY OF 3D GRAPHICS TERMS TROUBLESHOOTING RIGHTS Quick start (This quick start section is for Windows. See below for other platforms, like Android, etc.) 1. Get the installer for the latest release of MonoGame from http://www.monogame.net/downloads/ and run it. (Do NOT get the current development version nor the NuGet package.) 2. Get the Blotch3D repository zip from https://github.com/Blotch3D/Blotch3D and unzip it. 3. Open the Visual Studio solution file. 4. Build and run the example projects. 5. See IntelliSense comments for reference documentation. Introduction Blotch3D is a C# library that vastly simplifies many of the fundamental tasks in development of 3D applications and games. Examples are provided that show how with just a few lines of code you can… • Load standard file types of 3D models as “sprites” and display and move them in 3D with real- time performance. • Set a model’s material, texture, and how it responds to lighting. • Load textures from standard image files. • Show 2D and in-world (as a texture) text in any font, size, color, etc. at any 2D or 3D position, and make text follow a sprite in 2D or 3D. • Attach sprites to other sprites to create associated structures of sprite trees as large as you want. Child sprite orientation and position is relative to its parent sprite’s orientation and position, and can be changed dynamically.
    [Show full text]
  • A Basic Design Approach to Clean Room
    www.PDHcenter.com PDH Course M143 www.PDHonline.org A Basic Design Guide for Clean Room Applications Course Content PART – I OVERVIEW Clean rooms are defined as specially constructed, environmentally controlled enclosed spaces with respect to airborne particulates, temperature, humidity, air pressure, airflow patterns, air motion, vibration, noise, viable (living) organisms, and lighting. Particulate control includes: !" Particulate and microbial contamination !" Particulate concentration and dispersion “Federal Standard 209E” defines a clean room as a room in which the concentration of airborne particles is controlled to specified limits. “British Standard 5295” defines a clean room as a room with control of particulate contamination, constructed and used in such a way as to minimize the introduction, generation and retention of particles inside the room and in which the temperature, humidity, airflow patterns, air motion and pressure are controlled. Today, many manufacturing processes require that spaces be designed to control particulate and microbial contamination while maintaining reasonable installation and operating costs. Clean rooms are typically used in manufacturing, packaging, and research facilities associated with these industries: 1. Semiconductor: This industry drives the state of the art clean room design, and this industry accounts for a significant number of all operating clean rooms. 2. Pharmaceutical: Clean rooms control living particles that would produce undesirable bacterial growth in the preparation of biological, pharmaceutical, and other medical products as well as in genetic engineering research. Page 1 of 61 www.PDHcenter.com PDH Course M143 www.PDHonline.org 3. Aerospace: The manufacturing and assembling of aerospace electronics, missiles and satellites were the first application of clean rooms.
    [Show full text]
  • System Administration
    System Administration Varian NMR Spectrometer Systems With VNMR 6.1C Software Pub. No. 01-999166-00, Rev. C0503 System Administration Varian NMR Spectrometer Systems With VNMR 6.1C Software Pub. No. 01-999166-00, Rev. C0503 Revision history: A0800 – Initial release for VNMR 6.1C A1001 – Corrected errors on pg 120, general edit B0202 – Updated AutoTest B0602 – Added additional Autotest sections including VNMRJ update B1002 – Updated Solaris patch information and revised section 21.7, Autotest C0503 – Add additional Autotest sections including cryogenic probes Applicability: Varian NMR spectrometer systems with Sun workstations running Solaris 2.x and VNMR 6.1C software By Rolf Kyburz ([email protected]) Varian International AG, Zug, Switzerland, and Gerald Simon ([email protected]) Varian GmbH, Darmstadt, Germany Additional contributions by Frits Vosman, Dan Iverson, Evan Williams, George Gray, Steve Cheatham Technical writer: Mike Miller Technical editor: Dan Steele Copyright 2001, 2002, 2003 by Varian, Inc., NMR Systems 3120 Hansen Way, Palo Alto, California 94304 1-800-356-4437 http://www.varianinc.com All rights reserved. Printed in the United States. The information in this document has been carefully checked and is believed to be entirely reliable. However, no responsibility is assumed for inaccuracies. Statements in this document are not intended to create any warranty, expressed or implied. Specifications and performance characteristics of the software described in this manual may be changed at any time without notice. Varian reserves the right to make changes in any products herein to improve reliability, function, or design. Varian does not assume any liability arising out of the application or use of any product or circuit described herein; neither does it convey any license under its patent rights nor the rights of others.
    [Show full text]
  • Personal Computing
    Recent History of Computers: Machines for Mass Communication Waseda University, SILS, Science, Technology and Society (LE202) The communication revolution ‚ In the first period of the history of computers, we see that almost all development is driven by the needs and the financial backing of large organizations: government, military, space R&D, large corporations. ‚ In the second period, we will notice that the focus is now shifting to small companies, individual programers, hobbyists and mass consumers. ‚ The focus in the first period was on computation and control. In the second period, it is on usability and communication. ‚ A mass market for computers was created, through the development of a user-friendly personal computer. Four generations of computers 1st 2nd 3rd 4th 5th Period 1940s–1955 1956–1963 1964–1967 1971–present ? Tech- vacuum transistors integrated micro- ? nology tubes circuits processors Size full room large desk sized desk-top, ? (huge) machine hand-held Software machine assembly operating GUI ? language language systems interface The microprocessor ‚ In 1968, the “traitorous seven” left Fairchild Semiconductor to found Intel. ‚ In 1969, Busicom, a Japanese firm, commissioned Intel to make a microprocessor for a handheld calculator. ‚ This lead to the Intel 4004. Intel bought the rights to sell the chip to other companies. ‚ Intel immediately began the process of designing more and more powerful microchips. Schematic: The Intel 4004 ‚ This has lead to computers small enough to fit in our hands. Consumer electronics ‚ The microprocessor made it possible to create more affordable consumer electronics. ‚ The Walkman came out in 1979. Through the 1980s video players, recorders and stereos were marketed.
    [Show full text]
  • Rights Reserved. Permission to Make Digital Or Hard Copies of All Or Part Of
    Copyright © 1994, by the author(s). All rights reserved. Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, to republish, to post on servers or to redistribute to lists, requires prior specific permission. MICROSOFT WINDOWS NT AND THE COMPETITION FOR DESKTOP COMPUTING by Brad Peters, William R. Bush, and A. Richard Newton Memorandum No. UCB/ERL M94/3 31 January 1994 MICROSOFT WINDOWS NT AND THE COMPETITION FOR DESKTOP COMPUTING by Brad Peters, William R. Bush, and A. Richard Newton Memorandum No. UCB/ERL M94/3 31 January 1994 MICROSOFT WINDOWS NT AND THE COMPETITION FOR DESKTOP COMPUTING by Brad Peters, William R. Bush, and A. Richard Newton Memorandum No. UCB/ERL M94/3 31 January 1994 ELECTRONICS RESEARCH LABORATORY College ofEngineering University ofCalifornia, Berkeley 94720 MICROSOFT WINDOWS NT AND THE COMPETITION FOR DESKTOP COMPUTING by Brad Peters, William R. Bush, and A. Richard Newton Memorandum No. UCB/ERL M94/3 31 January 1994 ELECTRONICS RESEARCH LABORATORY College ofEngineering University ofCalifornia, Berkeley 94720 Microsoft Windows NT And The Competition for Desktop Computing January 1994 Department ofElectrical Engineering and Computer Sciences University ofCalifornia Berkeley, California 94720 Abstract This report contains two papers, An Introduction to Microsoft Windows NT And Its Competitors, and The Status ofWindows NT and Its Competitors At The End of1993. The first paper, written in April 1993,presents an overview of the technology of Windows NT, and analyzes the competitors and competitive factors in the desktop operating system race.
    [Show full text]
  • Cleanroom Design
    CLEANROOM DESIGN by Douglas H Erickson Bachelor of Architecture Bachelor of Science in Architectural Studies Washington State University Pullman, Washington 1975 SUBMITTED TO THE DEPARTMENT OF ARCHITECTURE IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE MASTER OF SCIENCE IN ARCHITECTURE STUDIES at the MASSACHUSETTS INSTITUTE OF TECHNOLOGY June, 1987 © Douglas H Erickson 1987 The author hereby grants to M.I.T. permission to reproduce and to distribute publicly copies of this thesis document in whole or in part Signature of Author Douglas H Erickson Department of Architecture May 8, 1987 Certified by Dr. Leon Glicksman Senior Research Scientist Thesis Advisor Accepted by t bJulian Beinart Chairman MAzSSAOsmTS INSr~iDpartment Committee for Graduate Students F TECHNOLOGY tlr 1 UmgAES Room 14-0551 77 Massachusetts Avenue Cambridge, MA 02139 Ph: 617.253.2800 MITLib Email: [email protected] Document Services http://Ilibraries.mitedu/docs DISCLAIMER OF QUALITY Due to the condition of the original material, there are unavoidable flaws in this reproduction, We have made every effort possible to provide you with the best copy available. If you are dissatisfied with this product and find it unusable, please contact Document Services as soon as possible. Thank you. Some pages in the original document contain pictures, graphics, or text that is illegible. Pages 96 - 131 CLEANROOM DESIGN by Douglas H Erickson Submitted to the Department of Architecture on May 8, 1987 in partial fulfinent of the requirements for the Degree of Master of Science in Architecture Studies ABSTRACT The development of the integrated circuit which replaced the vacuum tube, started the size reduction process for computer components.
    [Show full text]
  • Breaking Manufacturers' Aftermarket Monopoly and Restoring
    APRIL 2020 Fixing America: Breaking Manufacturers’ Aftermarket Monopoly and Restoring Consumers’ Right to Repair DANIEL A. HANLEY CLAIRE KELLOWAY SANDEEP VAHEESAN 1 1 Contents Executive Summary ................................................................................. 2 I. Introduction ........................................................................................... 3 II. History of Restricting Repair .............................................................. 4 The History of Open Aftermarkets ............................................................. 4 Early Efforts to Close Afternarkets ............................................................. 6 III. Methods of Restricting Repair .......................................................... 9 Tying of Aftermarket Parts and Service ...................................................... 9 Exclusive Dealing of Aftermarket Parts and Service ................................ 10 Refusal to Sell Essential Tools, Parts, Diagnostics, Manuals, and Software 10 Predatory and Exclusionary Design ........................................................ 11 Leveraging Copyright Law to Lock Software and Hardware .................... 12 Restrictive End User License Agreements ................................................ 13 IV. The Effects and Consequences of Restricted Repair ...................... 15 Increased Costs to Consumers ................................................................ 15 Stifling the Repair Economy and Local Resiliency ..................................
    [Show full text]
  • The Library for System Solutions End User Interface Reference
    The Library for System Solutions End User Interface Reference Document Number GG24-4107-00 July 1994 International Technical Support Organization Boca Raton Center Take Note! Before using this information and the product it supports, be sure to read the general information under “Special Notices” on page xi. First Edition (July 1994) This edition applies to IBM and non-IBM products for End User Interface development. Order publications through your IBM representative or the IBM branch office serving your locality. Publications are not stocked at the address given below. An ITSO Technical Bulletin Evaluation Form for reader′s feedback appears facing Chapter 1. If the form has been removed, comments may be addressed to: IBM Corporation, International Technical Support Organization Dept. 91J Building 235-2 Internal Zip 4423 901 NW 51st Street Boca Raton, Florida 33431-1328 When you send information to IBM, you grant IBM a non-exclusive right to use or distribute the information in any way it believes appropriate without incurring any obligation to you. Copyright International Business Machines Corporation 1994. All rights reserved. Note to U.S. Government Users — Documentation related to restricted rights — Use, duplication or disclosure is subject to restrictions set forth in GSA ADP Schedule Contract with IBM Corp. Abstract This document is part of the Library for Systems Solutions, which is intended for professionals involved in defining solutions in the heterogeneous computing environments. The library consists of three types of documents: • Computing Technology • Function Reference • Technology Reference This document is the Function Reference book regarding End User Interface. The book consists of two parts.
    [Show full text]
  • Game-Based Learning
    Game-based Learning Motion-based Educational Game Per Olav Flaten Henrik Reitan Master of Science in Informatics Submission date: June 2016 Supervisor: Alf Inge Wang, IDI Norwegian University of Science and Technology Department of Computer and Information Science Problem Description Title: Game-based Learning Sub-title: Motion-based Educational Game This project focuses on the development, testing and experimentation with motion-based educational games. The games will use body movement as input to provide a natural user interface and will provide learning through gesture based movement. The project consists of a state-of the-art study, prototyping and develop- ment, testing and experimentation with real users, and analysis of the ex- perimental data. The project will utilize technology like Kinect or similar. Assignment given: 13:01.2015 Supervisor: Alf Inge Wang Abstract This master's project is dedicated to investigate the potential for educa- tional games with a motion controller based interface. Through professor Alf Inge Wang at NTNU we were assigned the task of brainstorming and developing a concept that would utilize motion controllers, more speci- cally the Microsoft Kinect, and investigate if it could be useful outside of a traditional game setting. Additionally it was expressed a desire to have em- phasis on reusable software that would benet future projects investigating the same area or using the same technology. Throughout our research period we have discovered several interesting things. We found that although the Kinect failed to gain any traction on its in- tended area of use, it is a very impressive piece of aordable technology that is worth investigating further.
    [Show full text]
  • Michel Sotura, PE March 18 at Rock Bottom
    Shaping Tomorrow’s Built Environment Today Volume 50, No. 7 March 2015 Punch List President’s Message Dear Chapter Members & Friends, energy efficiency and greenhouse gas emissions and outlines a Spring has arrived in Seattle with range of near-term (by 2015) and the prospect of extended daylight long-term (by 2030) actions to put Contents and so many options for outdoor Seattle on the path to achieving activities. Traditionally attendance • President’s Message ..........................1 those goals. to our meetings decrease in the • January Chapter Meeting ................2 second part of the year but I Several representative of the • Upcoming Meetings .........................3 chapter will meet in the coming • TAC Awards Winners..........................4 believe the upcoming chapter weeks with the city. Please • TAC Award Info & RP Thanks ...........5 programs should encourage you contact the board of governors • ASHRAE Winter Conference.. ..........6 to participate actively till May. if you would like your ideas to be • Outstanding Items .............................7 This month our chapter meeting expressed regarding this initiative. technical topic will be Clean Room design. The presentation will To conclude I would like to provide an overview of clean room encourage our members and standards, clean room theory and friends in participating to our Chapter Officers ventilation strategies. So please annual ASHRAE Golf Field Day that join us for our lunch meeting on benefit ASHRAE Research. President Michel Sotura, PE March 18 at Rock Bottom. The event takes place on Friday President-Elect Tamas Besnik, PE On March 25, the young ASHRAE June 5 at the Harbour Pointe Golf VP/Secretary Kathi Shoemake, PE engineers (YEA) will tour the Club in Mukilteo.
    [Show full text]
  • Studying and Enabling Reuse in Android Mobile Apps Andrew Steven Holtzhauer College of William & Mary - Arts & Sciences
    W&M ScholarWorks Dissertations, Theses, and Masters Projects Theses, Dissertations, & Master Projects 2014 Studying and Enabling Reuse in android Mobile Apps andrew Steven Holtzhauer College of William & Mary - Arts & Sciences Follow this and additional works at: https://scholarworks.wm.edu/etd Part of the Computer Sciences Commons Recommended Citation Holtzhauer, andrew Steven, "Studying and Enabling Reuse in android Mobile Apps" (2014). Dissertations, Theses, and Masters Projects. Paper 1539626959. https://dx.doi.org/doi:10.21220/s2-0fsx-bc44 This Thesis is brought to you for free and open access by the Theses, Dissertations, & Master Projects at W&M ScholarWorks. It has been accepted for inclusion in Dissertations, Theses, and Masters Projects by an authorized administrator of W&M ScholarWorks. For more information, please contact [email protected]. Studying and Enabling Reuse in Android Mobile Apps Andrew Steven Holtzhauer Stafford, VA Bachelor of Science, College of William and Mary, 2012 A Thesis presented to the Graduate Faculty of the College of William and Mary in Candidacy for the Degree of Master of Science Department of Computer Science The College of William and Mary August 2014 COMPLIANCE PAGE Research approved by Protection of Human Subjects Committee Protocol number(s): PHSC-2013-06-07-8782 Date(s) of approval: 2013-06-14 APPROVAL PAGE This Thesis is submitted in partial fulfillment of the requirements for the degree of Master of Science Andrew Steven Holtzhauer Approved by the Committee, August 20T4 littefe Cfiair Assistant Professor Denys feoshyvanyk, Computer Science The College of William and Mary Associate Professor Peter Kemper, Computer Science The College of William and Mary fessor Collin McM+tfar/Computer Science University of Notre Dame ABSTRACT In the recent years, studies of design and programming practices in mobile development are gaining more attention from researchers.
    [Show full text]
  • International Technical Support Organization Managing AIX V4 on PCI-Based RISC System/6000 Workstations (40P/43P) September 1995 Publication No
    International Technical Support Organization SG24-2581-00 Managing AIX V4 on PCI-Based RISC System/6000 Workstations (40P/43P) September 1995 IBML International Technical Support Organization SG24-2581-00 Managing AIX V4 on PCI-Based RISC System/6000 Workstations (40P/43P) September 1995 Take Note! Before using this information and the product it supports, be sure to read the general information under “Special Notices” on page xvii. First Edition (September 1995) This edition applies to the AIX Version 4.1.2 and AIX Version 4.1.3 operating system. Order publications through your IBM representative or the IBM branch office serving your locality. Publications are not stocked at the address given below. An ITSO Technical Bulletin Evaluation Form for reader′s feedback appears facing Chapter 1. If the form has been removed, comments may be addressed to: IBM Corporation, International Technical Support Organization Dept. JN9 Building 821 Internal Zip 2834 11400 Burnet Road Austin, Texas 78758-3493 When you send information to IBM, you grant IBM a non-exclusive right to use or distribute the information in any way it believes appropriate without incurring any obligation to you. Copyright International Business Machines Corporation 1995. All rights reserved. Note to U.S. Government Users — Documentation related to restricted rights — Use, duplication or disclosure is subject to restrictions set forth in GSA ADP Schedule Contract with IBM Corp. Abstract The RISC System/6000 family of products, typically based on the Microchannel bus architecture, has been expanded to include a new line of products based on the PowerPC microprocessor, the Peripheral Component Interconnect (PCI) bus architecture and the PowerPC Reference Platform Specification (PReP).
    [Show full text]