QGIS Coding and Compilation Guide

Total Page:16

File Type:pdf, Size:1020Kb

QGIS Coding and Compilation Guide Quantum GIS Coding and Compilation Guide Version 1.5 'Thethys' Preamble This document is the original Coding and Compilation Guide of the described software Quantum GIS. The software and hardware described in this document are in most cases registered trademarks and are therefore subject to the legal requirements. Quantum GIS is subject to the GNU General Public License. Find more information on the Quantum GIS Homepage http://qgis.osgeo.org. The details, data, results etc. in this document have been written and verified to the best of knowledge and responsibility of the authors and editors. Nevertheless, mistakes concerning the content are possible. Therefore, all data are not liable to any duties or guarantees. The authors, editors and publishers do not take any responsibility or liability for failures and their consequences. Your are always welcome to indicate possible mistakes. This document has been typeset with LATEX. It is available as LATEX source code via subversion and online as PDF document via http://qgis.osgeo.org/documentation/manuals.html. Translated versions of this document can be downloaded via the documentation area of the QGIS project as well. For more information about contributing to this document and about translating it, please visit: http://www.qgis.org/wiki/index.php/Community_Ressources Links in this Document This document contains internal and external links. Clicking on an internal link moves within the document, while clicking on an external link opens an internet address. In PDF form, internal links are shown in blue, while external links are shown in red and are handled by the system browser. In HTML form, the browser displays and handles both identically. Coding Compilation Guide Authors and Editors: Tim Sutton Marco Hugentobler Gary E. Sherman Tara Athan Godofredo Contreras Werner Macho Carson J.Q. Farmer Otto Dassau Jürgen E. Fischer Davis Wills Magnus Homann Martin Dobias With thanks to Tisham Dhar for preparing the initial msys (MS Windows) environment documentation, to Tom Elwertowski and William Kyngesburye for help in the MAC OSX Installation Section and to Carlos Dávila. If we have neglected to mention any contributors, please accept our apologies for this oversight. Copyright °c 2004 - 2010 Quantum GIS Development Team Internet: http://qgis.osgeo.org License of this document Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foun- dation; with no Invariant Sections, no Front-Cover Texts and no Back-Cover Texts. A copy of the license is included in section 11 entitled "GNU Free Documentation License". QGIS 1.5 Installation and Coding Guide iii Contents Contents Title i Preamble ii Table of Contents iv 1 Writing a QGIS Plugin in C++ 1 1.1 Why C++ and what about licensing ............................. 1 1.2 Programming a QGIS C++ Plugin in four steps ...................... 1 1.3 Further information ...................................... 19 2 Creating C++ Applications 20 2.1 Creating a simple mapping widget ............................. 20 2.2 Working with QgsMapCanvas ................................ 23 3 Writing a QGIS Plugin in Python 27 3.1 Why Python and what about licensing ........................... 27 3.2 What needs to be installed to get started .......................... 27 3.3 Programming a simple PyQGIS Plugin in four steps ................... 28 3.4 Uploading the plugin to the repository ........................... 31 3.5 Further information ...................................... 32 4 Creating PyQGIS Applications 33 4.1 Designing the GUI ...................................... 33 4.2 Creating the MainWindow .................................. 34 4.3 Finishing Up ......................................... 39 4.4 Running the Application ................................... 40 5 Installation Guide 43 5.1 General Build Notes ..................................... 43 5.1.1 An overview of the dependencies required for building .............. 43 5.2 Building under windows using msys ............................ 43 5.2.1 MSYS: ......................................... 44 5.2.2 Qt4.3 ......................................... 44 5.2.3 Flex and Bison .................................... 45 5.2.4 Python stuff: (optional) ................................ 45 5.2.5 Subversion: ...................................... 46 5.2.6 CMake: ........................................ 46 5.2.7 QGIS: ......................................... 47 5.2.8 Compiling: ...................................... 47 5.2.9 Configuration ..................................... 48 5.2.10 Compilation and installation ............................. 48 QGIS 1.5 Installation and Coding Guide iv Contents 5.2.11 Run qgis.exe from the directory where it’s installed (CMAKE_INSTALL_PREFIX) 48 5.2.12 Create the installation package: (optional) ..................... 49 5.3 Building on Mac OSX using frameworks and cmake or Xcode .............. 49 5.3.1 Install Xcode ..................................... 49 5.3.2 Install Qt4 from .dmg ................................. 50 5.3.3 Install development frameworks for QGIS dependencies ............. 50 5.3.4 Install CMake for OSX ................................ 56 5.3.5 Install subversion for OSX .............................. 56 5.3.6 Check out QGIS from SVN ............................. 57 5.3.7 Configure the build .................................. 58 5.3.8 Building ........................................ 60 5.4 Building on GNU/Linux .................................... 61 5.4.1 Building QGIS with Qt4.x .............................. 61 5.4.2 Prepare apt ...................................... 62 5.4.3 Install Qt4 ....................................... 62 5.4.4 Install additional software dependencies required by QGIS ........... 63 5.4.5 GRASS Specific Steps ................................ 63 5.4.6 Setup ccache (Optional) ............................... 64 5.4.7 Prepare your development environment ...................... 64 5.4.8 Check out the QGIS Source Code ......................... 64 5.4.9 Starting the compile ................................. 65 5.4.10 Building Debian packages .............................. 66 5.4.11 Running QGIS .................................... 67 5.4.12 A practical case: Building QGIS and GRASS from source on Ubuntu with ECW and MrSID formats support ............................. 67 5.5 Creation of MSYS environment for compilation of Quantum GIS ............. 72 5.5.1 Initial setup ...................................... 72 5.5.2 Installing dependencies ............................... 73 5.5.3 Cleanup ........................................ 76 5.6 Building with MS Visual Studio ............................... 77 5.6.1 Setup Visual Studio ................................. 77 5.6.2 Download/Install Dependencies ........................... 78 5.6.3 Building QGIS with CMAKE ............................. 82 5.7 Building under Windows using MSVC Express ...................... 82 5.7.1 System preparation ................................. 83 5.7.2 Install the libraries archive .............................. 83 5.7.3 Install Visual Studio Express 2005 ......................... 84 5.7.4 Install Microsoft Platform SDK2 ........................... 84 5.7.5 Edit your vsvars ................................... 87 5.7.6 Environment Variables ................................ 88 5.7.7 Building Qt4.3.2 ................................... 89 5.7.8 Install Python ..................................... 91 QGIS 1.5 Installation and Coding Guide v Contents 5.7.9 Install SIP ....................................... 91 5.7.10 Install PyQt4 ..................................... 91 5.7.11 Install CMake ..................................... 92 5.7.12 Install Subversion .................................. 92 5.7.13 Initial SVN Check out ................................ 92 5.7.14 Create Makefiles using cmakesetup.exe ...................... 93 5.7.15 Running and packaging ............................... 94 6 QGIS Coding Standards 95 6.1 Classes ............................................ 95 6.1.1 Names ........................................ 95 6.1.2 Members ....................................... 95 6.1.3 Accessor Functions ................................. 96 6.1.4 Functions ....................................... 96 6.2 Qt Designer .......................................... 96 6.2.1 Generated Classes .................................. 96 6.2.2 Dialogs ........................................ 97 6.3 C++ Files ........................................... 97 6.3.1 Names ........................................ 97 6.3.2 Standard Header and License ........................... 97 6.3.3 SVN Keyword ..................................... 98 6.4 Variable Names ........................................ 98 6.5 Enumerated Types ...................................... 98 6.6 Global Constants ....................................... 99 6.7 Editing ............................................. 99 6.7.1 Tabs .......................................... 99 6.7.2 Indentation ...................................... 99 6.7.3 Braces ......................................... 100 6.8 API Compatibility ....................................... 100 6.9 Coding Style ......................................... 101 6.9.1 Where-ever Possible Generalize Code ....................... 101 6.9.2 Prefer Having Constants First in Predicates .................... 101 6.9.3 Whitespace Can Be Your Friend
Recommended publications
  • Freiesmagazin 12/2012
    freiesMagazin Dezember 2012 Topthemen dieser Ausgabe Slackware 14.0 Seite 3 Die wohl älteste noch aktive Linux-Distribution hat nach überdurchschnittlich langer Entwick- lungszeit die neue Version 14.0 veröffentlicht. Der Artikel gibt eine Übersicht über Altes und Neues, was sich seit Version 9.0 so alles geändert hat – und was nicht. (weiterlesen) Video Disk Recoder auf Basis von easyVDR 1.0 Seite 10 Der Artikel erklärt den Aufbau eines MediaCenters auf Basis der Distribution easyVDR und stellt die Neuerungen der Version 1.0 sowie deren Installation und Konfiguration vor. Der Schwerpunkt des Artikels liegt dabei in der Hardwareauswahl und den neuen Features der jetzt auf der Linux-Distribution Ubuntu basierten Version 1.0 sowie der „easy“ Inbetriebnahme dieser. (weiterlesen) Softmaker Office 2012 Seite 25 Der Markt für Büroprogramme ist unübersichtlich: In der Windows-Welt gilt Microsoft Office trotz der saftigen Preise immer noch als Referenz. Unter Linux dürfte dagegen LibreOffice mitt- lerweile den Stand eines Standards erreicht haben. Hinzu kommen noch zahlreiche freie An- wendungen und diverse kommerzielle Alternativen. Eines der Programme mit professionellem Anspruch ist SoftMaker Office, das nicht nur Nischenmärkte unter verschiedenen Systemen besetzen, sondern eine Alternative zu den Platzhirschen sein will. (weiterlesen) © freiesMagazin CC-BY-SA 3.0 Ausgabe 12/2012 ISSN 1867-7991 MAGAZIN Editorial Sechster Programmierwettbewerb werden dann ebenfalls einige Meta-Daten zu der Inhalt Linux allgemein Im März 2012 gab es mit dem fünften Wett- jeweiligen Ausgabe angezeigt. Slackware 14.0 S. 3 bewerb ein kleines Zwischenspiel außer der Aber auch so haben wir weiter an der CSS-Datei Video Disk Recoder auf Basis von S.
    [Show full text]
  • Java Code Documentation Example
    Java Code Documentation Example Fruitless Martino sometimes quick-freeze his peritonitis hugely and night-club so dispraisingly! Glottogonic and sublinear Finn melt his bodice permeates podding benevolently. Oswald usually medicines surgically or orbs telescopically when polyunsaturated Hugh dement evidentially and lewdly. The javadoc itself an unsupported extension and is also important in the description for code documentation comment merely repeats the banner section DocsapijavanetURLhtmlgetAuthority-- a method getAuhority in the. API reference code comments Google Developers. Omitting many times classes being documented type, and java example of each field, all trademarks and description below code completion window, which we used to. Java Programming Style Guide. The keyboard shortcut to comment multiple in Windows is shift alt A. 10 Best Practices to multiple While Writing Code Javarevisited. Concise presentations of java programming practices tasks and conventions amply illustrated with syntax highlighted code examples. Java Documentation Comments Tutorialspoint. Java Programming Guidelines. If this tag easily comment related comments java code, this user to new field in the dependency. The following examples demonstrate a pain line summary followed by detailed documentation in song three. CS 302 Commenting Guide Program Commenting Guide File. For sober you spawn use author tag to identify the author of a. Opinions expressed by the code example code documentation is overridden in the documentation for example code base classes and decide to allow bikes to achieve these methods. Example slope from the Javadoc documentation code can be documented inline Single Line comments are started by each may be positioned after a. The Documentation Comment Specification permits leading asterisks on enough first.
    [Show full text]
  • The Kdesvn Handbook
    The kdesvn Handbook Rajko Albrecht The kdesvn Handbook 2 Contents 1 Introduction 7 1.1 Terms . .7 2 Using kdesvn 8 2.1 kdesvn features . .8 2.2 Beginning with subversion and kdesvn . .8 2.2.1 Creating a working copy . .9 2.2.2 Committing local changes . .9 2.2.3 Update working copy . .9 2.2.4 Adding and Deleting from working copy . .9 2.2.4.1 Add items . 10 2.2.4.2 Deleting items from working copy and unversion . 10 2.2.5 Displaying logs . 10 2.2.5.1 The log display dialog . 10 2.3 Working on repositories . 11 2.3.1 Restoring deleted items . 11 2.3.2 Importing folders . 11 2.3.2.1 With drag and drop . 11 2.3.2.2 Select folder to import with directory-browser . 11 2.4 Other Operations . 11 2.4.1 Merge . 11 2.4.1.1 Internal merge . 12 2.4.1.2 Using external program for merge . 12 2.4.2 Resolving conflicts . 12 2.5 Properties used by kdesvn for configuration . 13 2.5.1 Bugtracker integration . 13 2.6 The revision tree . 13 2.6.1 Requirements . 14 2.7 Internal log cache . 14 2.7.1 Offline mode . 14 2.7.2 Log cache and revision tree . 14 The kdesvn Handbook 2.8 Meaning of icon overlays . 14 2.9 kdesvn and passwords . 16 2.9.1 Not saving passwords . 16 2.9.2 Saving passwords in KWallet . 16 2.9.3 Saving to subversion’s own password storage .
    [Show full text]
  • Comments and Documentation 2501ICT/7421Ictnathan
    C Comments Using Doxygen Comments and Documentation 2501ICT/7421ICTNathan René Hexel School of Information and Communication Technology Griffith University Semester 1, 2012 René Hexel Comments and Documentation C Comments Using Doxygen Outline 1 C Comments 2 Using Doxygen René Hexel Comments and Documentation C Comments Using Doxygen Comments Plain C allows comments between /* and */ /* this is a valid C comment */ Comments may not be nested /* this /* is not a valid C comment */ */ C99 also allows double-slash // end-of-line comments // this is a valid comment no closing sequence needed – the comment ends at the end of the line René Hexel Comments and Documentation C Comments Using Doxygen Comment Example Example (Program with Comments) /* * This program prints "j = 007". * It does not take any parameters and returns 0 on success. */ int main(void)/ * main function definition */ { int j; // our int variable to play with j=7; // assign a value to be printed printf("j = %03.3dnn",j); // print value with leading zeroes return 0; // everything is fine, exit program } René Hexel Comments and Documentation C Comments Using Doxygen Where to put comments? At the beginning of each file (module) describe the name of the module, purpose, author, and dates when first created and last modified Before each function (method) describe the purpose of the function or method, input parameters (arguments), return values (output parameters), and pre- and postconditions (contract) At the beginning of each class describe the purpose of the class, and things to
    [Show full text]
  • Dragonfly.Wpi.Edu/Book/ February 28, 2013 8:8 Computer Science Education Paper
    February 28, 2013 8:8 Computer Science Education paper Computer Science Education Vol. XX, No. XX, June 2013, 1–18 RESEARCH ARTICLE Dragonfly – Strengthening Programming Skills by Building a Game Engine from Scratch Mark Claypool Computer Science and Interactive Media & Game Development Worcester Polytechnic Institute, Worcester, MA 01609, USA email: [email protected] (Received 00 Month 200x; final version received 00 Month 200x) Computer game development has been shown to be an effective hook for motivating students to learn both introductory and advanced computer science topics. While games can be made from scratch, to simplify the programming required game development often uses game engines that handle complicated or frequently used components of the game. These game engines present the opportunity to strengthen programming skills and expose students to a range of fundamental computer science topics. While educational efforts have been effective in using game engines to improve computer science education, there have been no published papers describing and evaluating students building a game engine from scratch as part of their course work. This paper presents the Dragonfly-approach in which students build a fully functional game engine from scratch and make a game using their engine as part of a junior-level course. Details on the programming projects are presented, as well as an evaluation of the results from two offerings that used Dragonfly. Student performance on the projects as well as student assessments demonstrate the efficacy of having students build a game engine from scratch in strengthening their programming skills. Keywords: game engine, programming, object-oriented design, software engineering, game development 1 Introduction By the end of their second year, most computer science students have been exposed to a breadth of foundational materials, such as introductory programming, basic data structures and algo- rithms, and have begun to write programs of moderate size – hundreds of lines of code, perhaps up to even a thousand lines of code.
    [Show full text]
  • PHP Beyond the Web Shell Scripts, Desktop Software, System Daemons and More
    PHP Beyond the web Shell scripts, desktop software, system daemons and more Rob Aley This book is for sale at http://leanpub.com/php This version was published on 2013-11-25 This is a Leanpub book. Leanpub empowers authors and publishers with the Lean Publishing process. Lean Publishing is the act of publishing an in-progress ebook using lightweight tools and many iterations to get reader feedback, pivot until you have the right book and build traction once you do. ©2012 - 2013 Rob Aley Tweet This Book! Please help Rob Aley by spreading the word about this book on Twitter! The suggested hashtag for this book is #phpbeyondtheweb. Find out what other people are saying about the book by clicking on this link to search for this hashtag on Twitter: https://twitter.com/search?q=#phpbeyondtheweb Contents Welcome ............................................ i About the author ...................................... i Acknowledgements ..................................... ii 1 Introduction ........................................ 1 1.1 “Use PHP? We’re not building a website, you know!”. ............... 1 1.2 Are you new to PHP? ................................. 2 1.3 Reader prerequisites. Or, what this book isn’t .................... 3 1.4 An important note for Windows and Mac users ................... 3 1.5 About the sample code ................................ 4 1.6 External resources ................................... 4 1.7 Book formats/versions available, and access to updates ............... 5 1.8 English. The Real English. .............................. 5 2 Getting away from the Web - the basics ......................... 6 2.1 PHP without a web server .............................. 6 2.2 PHP versions - what’s yours? ............................. 7 2.3 A few good reasons NOT to do it in PHP ...................... 8 2.4 Thinking about security ...............................
    [Show full text]
  • Intro to Doxygen
    Intro to Doxygen Stephen Herbener JEDI Core Team 4/19/18 Doxywizard • GUI that helps you configure and run doxygen • Doxywizard assists in the creation of a doxygen configuration file • User enters information through GUI forms • The configuration file created by Doxywizard can be used directly by doxygen • Enables batch processing from the command line: doxygen <config_file> • Doxywizard can run doxygen for you • Hit the “Run” button • Captures output from doxygen in a GUI window • Doxywizard is supported by the developers of doxygen • https://www.stack.nl/~dimitri/doxygen/manual/doxywizard_usage.html Doxywizard: Start up On the Mac, click on the Doxygen icon in the Applications folder • Configuration buttons • Wizard: Quick and easy • Expert: All the gory details Doxywizard: Wizard configuration • Project • Mode • Set paths to source code and destination to • Select what to extract and the primary output documentation programming language in the source code Doxywizard: Wizard configuration • Output • Diagrams • Set the formats for the generated • Select any diagrams to be placed in the documentation generated documentation Doxywizard: Expert configuration • Set the path to the dot executable • EXTRACT_PRIVATE will include private data members • Typically: /usr/local/bin/dot and methods in generated documentation • EXTRACT_STATIC will include static members in generated documentation Doxywizard: Expert configuration • Make sure to include *.F90 file pattern Doxywizard: Run doxygen • You will get the same result by running on the command
    [Show full text]
  • Active@ Livecd User Guide Copyright © 1999-2015, LSOFT TECHNOLOGIES INC
    Active@ LiveCD User Guide Copyright © 1999-2015, LSOFT TECHNOLOGIES INC. All rights reserved. No part of this documentation may be reproduced in any form or by any means or used to make any derivative work (such as translation, transformation, or adaptation) without written permission from LSOFT TECHNOLOGIES INC. LSOFT TECHNOLOGIES INC. reserves the right to revise this documentation and to make changes in content from time to time without obligation on the part of LSOFT TECHNOLOGIES INC. to provide notification of such revision or change. LSOFT TECHNOLOGIES INC. provides this documentation without warranty of any kind, either, implied or expressed, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose. LSOFT may make improvements or changes in the product(s) and/or the program(s) described in this documentation at any time. All technical data and computer software is commercial in nature and developed solely at private expense. As the User, or Installer/Administrator of this software, you agree not to remove or deface any portion of any legend provided on any licensed program or documentation contained in, or delivered to you in conjunction with, this User Guide. LSOFT.NET logo is a trademark of LSOFT TECHNOLOGIES INC. Other brand and product names may be registered trademarks or trademarks of their respective holders. 2 Active@ LiveCD User Guide Contents 1 Product Overview................................................................................................................ 4 1.1 About Active@ LiveCD .................................................................................................. 4 1.2 Requirements for Using Active@ Boot Disk .................................................................... 6 1.3 Downloading and Creating Active@ LiveCD.................................................................... 6 1.4 Booting from a CD, DVD or USB Media .........................................................................
    [Show full text]
  • Session 402 Evan Cheng Sr
    What's New in the LLVM Compiler Session 402 Evan Cheng Sr. Manager, Compilation Technologies These are confidential sessions—please refrain from streaming, blogging, or taking pictures Focused on Providing Best-in-Class Tools Focused on Providing Best-in-Class Tools Support for latest hardware Focused on Providing Best-in-Class Tools Support for latest hardware Improving performance Focused on Providing Best-in-Class Tools Support for latest hardware Improving performance Improving developer productivity Support for Latest Hardware armv7s Architecture • Architecture for Apple A6 processor ■ iPhone 5 and new iPads • Extensive tuning and optimization in the compiler ■ Uses instructions only available in armv7s armv7s Architecture • Architecture for Apple A6 processor ■ iPhone 5 and new iPads • Extensive tuning and optimization in the compiler ■ Uses instructions only available in armv7s Important for achieving max performance! armv7s Architecture • Already part of the standard architectures for iOS apps Intel AVX • 256-bit floating-point vector computation ■ Twice as wide as SSE vectors ■ Supported in Sandy Bridge and Ivy Bridge processors • Good for loops with operations that can be performed in parallel ■ Floating-point intensive ■ High ratio of computation to memory bandwidth Intel AVX2 • Supported in “Haswell” processors ■ Extend the AVX instruction set to integers ■ Adds fused multiply-accumulate for increased floating point throughput ■ More extensive set of vector shuffle instructions Using AVX2 with Fallback to AVX / SSE • Check
    [Show full text]
  • Fedora 17 System Administrator's Guide
    Fedora 17 System Administrator's Guide Deployment, Configuration, and Administration of Fedora 17 Jaromír Hradílek Douglas Silas Martin Prpič Stephen Wadeley Eliška Slobodová Tomáš Čapek Petr Kovář John Ha System Administrator's Guide David O'Brien Michael Hideo Don Domingo Fedora 17 System Administrator's Guide Deployment, Configuration, and Administration of Fedora 17 Edition 1 Author Jaromír Hradílek [email protected] Author Douglas Silas [email protected] Author Martin Prpič [email protected] Author Stephen Wadeley [email protected] Author Eliška Slobodová [email protected] Author Tomáš Čapek [email protected] Author Petr Kovář [email protected] Author John Ha Author David O'Brien Author Michael Hideo Author Don Domingo Copyright © 2012 Red Hat, Inc. and others. The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/. The original authors of this document, and Red Hat, designate the Fedora Project as the "Attribution Party" for purposes of CC-BY-SA. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version. Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law. Red Hat, Red Hat Enterprise Linux, the Shadowman logo, JBoss, MetaMatrix, Fedora, the Infinity Logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
    [Show full text]
  • Using Doxygen to Generate Spanish and English Documentation
    Seventh LACCEI Latin American and Caribbean Conference for Engineering and Technology (LACCEI’2009) “Energy and Technology for the Americas: Education, Innovation, Technology and Practice” June 2-5, 2009, San Cristóbal, Venezuela. Using Doxygen to generate Spanish and English documentation Adolfo Di Mare Escuela de Ciencias de la Computación e Informática – Universidad de Costa Rica [email protected] ABSTRACT We describe how to use Doxygen to generate specifications for C++ modules both in English and Spanish. The method is simple and also facilitates maintaining documentation in several languages, which helps module and program internationalization. Keywords: documentation, data hidding, software engineering, implementation, abstraccion. Globalization has brought programmers together into a large family that produces every day millions of lines of code. As it has happened many times over, if the program under construction will be used only in rare instances there is a strong possibility that its documentation will not be written. Although at first glance this looks like savings, the developer will soon discover that module specification facilitates his work and shortens the time needed to build programs. The reason for this reality is simple: whoever does not know where he goes, winds up elsewhere (Di Mare, 2007). It is also important to incorporate test data definition in each module specification, as discussed in (Di Mare, 2008). When in here we speak about “languages” it should be understood as “spoken languages” as it is always assumed that programs are written in C++, but the documentation method for multiple languages described in here can be generalized to other computer languages in which the profesional documentation tool Doxygen is used (van Heesch, 2005).
    [Show full text]
  • Pipenightdreams Osgcal-Doc Mumudvb Mpg123-Alsa Tbb
    pipenightdreams osgcal-doc mumudvb mpg123-alsa tbb-examples libgammu4-dbg gcc-4.1-doc snort-rules-default davical cutmp3 libevolution5.0-cil aspell-am python-gobject-doc openoffice.org-l10n-mn libc6-xen xserver-xorg trophy-data t38modem pioneers-console libnb-platform10-java libgtkglext1-ruby libboost-wave1.39-dev drgenius bfbtester libchromexvmcpro1 isdnutils-xtools ubuntuone-client openoffice.org2-math openoffice.org-l10n-lt lsb-cxx-ia32 kdeartwork-emoticons-kde4 wmpuzzle trafshow python-plplot lx-gdb link-monitor-applet libscm-dev liblog-agent-logger-perl libccrtp-doc libclass-throwable-perl kde-i18n-csb jack-jconv hamradio-menus coinor-libvol-doc msx-emulator bitbake nabi language-pack-gnome-zh libpaperg popularity-contest xracer-tools xfont-nexus opendrim-lmp-baseserver libvorbisfile-ruby liblinebreak-doc libgfcui-2.0-0c2a-dbg libblacs-mpi-dev dict-freedict-spa-eng blender-ogrexml aspell-da x11-apps openoffice.org-l10n-lv openoffice.org-l10n-nl pnmtopng libodbcinstq1 libhsqldb-java-doc libmono-addins-gui0.2-cil sg3-utils linux-backports-modules-alsa-2.6.31-19-generic yorick-yeti-gsl python-pymssql plasma-widget-cpuload mcpp gpsim-lcd cl-csv libhtml-clean-perl asterisk-dbg apt-dater-dbg libgnome-mag1-dev language-pack-gnome-yo python-crypto svn-autoreleasedeb sugar-terminal-activity mii-diag maria-doc libplexus-component-api-java-doc libhugs-hgl-bundled libchipcard-libgwenhywfar47-plugins libghc6-random-dev freefem3d ezmlm cakephp-scripts aspell-ar ara-byte not+sparc openoffice.org-l10n-nn linux-backports-modules-karmic-generic-pae
    [Show full text]