Version 10.0-p01. User Interface II. Makoto Asai (SLAC) Geant4 Tutorial Course
|
|
|
- Cathleen Park
- 10 years ago
- Views:
Transcription
1 Version 10.0-p01 User Interface II Makoto Asai (SLAC) Geant4 Tutorial Course
2 Contents Mechanism of UI command Defining basic UI command Defining complicated UI command G4GenericMessenger UI command in multithreaded mode UserInterface II - M.Asai (SLAC) 2
3 Mechanism of UI command Version 10.0-p01
4 Mechanism of UI command 2. apply (G)UI 1. register command G4UImanager To define user s command : - Object shown in green must be instantiated by the user - Class shown in blue must be implemented and instantiated by the user messenger (G4UImessenger) 3. do it command (G4UIcommand) G4UIparameter 4. invoke Target class UserInterface II - M.Asai (SLAC) 4
5 Messenger class Each messenger class must be derived from G4UImessenger base class. A messenger class can handle more than one UI commands. A messenger class should be instantiated by the constructor of the target class to which commands should be delivered, and should be deleted by the destructor of the target class. Methods of messenger class Constructor Define (instantiate) commands / command directories Destructor Delete commands / command directories void SetNewValue(G4UIcommand* command, G4String newvalue) Convert "newvalue" parameter string to appropriate value(s) and invoke an appropriate method of the target class This method is invoked when a command is issued. G4String GetCurrentValue(G4UIcommand* command) Access to an appropriate get-method of the target class and convert the current value(s) to a string This method is invoked when the current value(s) of parameter(s) of a command is asked by (G)UI. UserInterface II - M.Asai (SLAC) 5
6 Defining basic UI command Version 10.0-p01
7 Definition (instantiation) of a command To be implemented in the constructor of a messenger class. A01DetectorConstMessenger::A01DetectorConstMessenger (A01DetectorConstruction* tgt) :target(tgt) { mydetdir = new G4UIdirectory("/mydet/"); mydetdir->setguidance("a01 detector setup commands."); } armcmd = new G4UIcmdWithADoubleAndUnit("/mydet/ armangle",this); armcmd->setguidance("rotation angle of the second arm."); armcmd->setparametername("angle",true); armcmd->setrange("angle>=0. && angle<180."); armcmd->setdefaultvalue(30.); armcmd->setdefaultunit("deg"); Guidance can (should) be more than one lines. The first line is utilized as a short description of the command. UserInterface II - M.Asai (SLAC) 7
8 G4UIcommand and its derivatives G4UIcommand is a class which represent a UI command. G4UIparameter represents a parameter. G4UIcommand can be directly used for a UI command. Geant4 provides its derivatives according to the types of associating parameters. These derivative command classes already have necessary parameter class object(s), thus you don t have to instantiate G4UIparameter object(s). G4UIcmdWithoutParameter G4UIcmdWithAString G4UIcmdWithABool G4UIcmdWithAnInteger G4UIcmdWithADouble, G4UIcmdWithADoubleAndUnit G4UIcmdWith3Vector, G4UIcmdWith3VectorAndUnit G4UIdirectory A UI command with other type of parameters must be defined by G4UIcommand base class with G4UIparameter. UserInterface II - M.Asai (SLAC) 8
9 Parameter name(s) These methods are available for derivative command classes which take parameter(s). void SetParameterName( const char*parname, G4bool omittable, G4bool currentasdefault=false); void SetParameterName( const char*nam1, const char*nam2, const char*nam3, G4bool omittable, G4bool currentasdefault=false); Parameter names are used in help, and also in the definition of parameter range. If "omittable" is true, the command can be issued without this particular parameter, and the default value will be used. If "currentasdefalult" is true, current value of the parameter is used as a default value, otherwise default value must be defined with SetDefaultValue() method. UserInterface II - M.Asai (SLAC) 9
10 Range, unit and candidates void SetRange(const char* rangestring) Available for a command with numeric-type parameters. Range of parameter(s) must be given in C++ syntax. acmd->setrange("x>0. && y>z && z<(x+y)"); Not only comparison with hard-coded number but also comparison between variables and simple calculation are available. Names of variables must be defined by SetParameterName() method. void SetDefaultUnit(const char* defunit) Available for a command which takes unit. Once the default unit is defined, no other unit of different dimension will be accepted. Alternatively, you can define a dimension (unit category) without setting a default unit. void SetUnitCategory(const char* unitcategory) void SetCandidates(const char* candidatelist) Available for a command with string type parameter Candidates must be delimited by a space. Candidates can be dynamically updated. UserInterface II - M.Asai (SLAC) 10
11 Available state void AvailableForStates(G4ApplicationState s1, ) Define command's applicability for Geant4 application states. Geant4 has six application states. G4State_PreInit Material, Geometry, Particle and/or Physics Process need to be initialized G4State_Idle Ready to start a run G4State_GeomClosed Geometry is optimized and ready to process an event G4State_EventProc An event is processing G4State_Quit, G4State_Abort UI command unavailable PreInit initialize beamon GeomClosed EventProc Abort Idle exit Quit UserInterface II - M.Asai (SLAC) 11
12 Conversion between string and values Derivatives of G4UIcommand with numeric and boolean parameters have corresponding conversion methods. From a string to value G4bool GetNewBoolValue(const char*) G4int GetNewIntValue(const char*) G4double GetNewDoubleValue(const char*) G4ThreeVector GetNew3VectorValue(const char*) To be used in SetNewValue() method in messenger. Unit is taken into account automatically. From value to string G4String ConvertToString(...) G4String ConvertToString(...,const char* unit) To be used in GetCurrentValue() method in messenger. UserInterface II - M.Asai (SLAC) 12
13 SetNewValue and GetCurrentValue void A01DetectorConstMessenger ::SetNewValue(G4UIcommand* command,g4string newvalue) { } if( command==armcmd ) { target->setarmangle(armcmd->getnewdoublevalue(newvalue)); } G4String A01DetectorConstMessenger ::GetCurrentValue(G4UIcommand* command) { } G4String cv; if( command==armcmd ) { cv = armcmd->converttostring(target->getarmangle(),"deg"); } return cv; UserInterface II - M.Asai (SLAC) 13
14 Defining complicated UI command Version 10.0-p01
15 Complicated UI command Complicated UI command means a UI command with parameters which is not included in the deliverable classes. G4UIcmdWithoutParameter, G4UIcmdWithAString, G4UIcmdWithABool, G4UIcmdWithAnInteger, G4UIcmdWithADouble, G4UIcmdWithADoubleAndUnit, G4UIcmdWith3Vector, G4UIcmdWith3VectorAndUnit A UI command with other type of parameters must be defined by G4UIcommand base class with G4UIparameter. G4UIparameter(const char * parname, char thetype, G4bool theomittable); parname" is the name of the parameter which will be used by the range checking and help "thetype" is the type of the parameter. b (boolean), i (integer), d (double), and s (string) Each parameter can take one line of guidance, a default value in case theomittable is true, a range (for numeric type parameter), and a candidate list (for string type parameter). UserInterface II - M.Asai (SLAC) 15
16 Complicated UI command A G4UIcommand object can take arbitrary number of G4UIparameter objects. Names of parameter must be different to each other (within the command). It takes arbitrary number of guidance lines. Availability for Geant4 states can be set. In addition to ranges defined to individual parameters, it may take another range definition where values of more than one parameters can be compared to each other. UserInterface II - M.Asai (SLAC) 16
17 /gun/ion command ioncmd = new G4UIcommand("/gun/ion",this); ioncmd->setguidance("set properties of ion to be generated."); ioncmd->setguidance("[usage] /gun/ion Z A Q"); ioncmd->setguidance(" Z:(int) AtomicNumber"); ioncmd->setguidance(" A:(int) AtomicMass"); ioncmd->setguidance(" Q:(int) Charge of Ion (in unit of e)"); ioncmd->setguidance(" E:(double) Excitation energy (in kev)"); G4UIparameter* param; param = new G4UIparameter("Z",'i',false); ioncmd->setparameter(param); param = new G4UIparameter("A",'i',false); ioncmd->setparameter(param); param = new G4UIparameter("Q",'i',true); param->setdefaultvalue("0"); ioncmd->setparameter(param); param = new G4UIparameter("E",'d',true); param->setdefaultvalue("0.0"); Parameters are registered along their orders. ioncmd->setparameter(param); UserInterface II - M.Asai (SLAC) 17
18 Converting string to values For complicated command, convenient conversion method is not available. Please use G4Tokenizer to tokenize the string and convert each token to numerical values. SetNewValue(G4UIcommand * command,g4string newvalues) { G4Tokenizer next( newvalues ); fatomicnumber = StoI(next()); fatomicmass = StoI(next()); G4String sq = next(); if (sq.isnull()) { fioncharge = fatomicnumber; } else { fioncharge = StoI(sQ); sq = next(); if (sq.isnull()) { fionexciteenergy = 0.0; } else { fionexciteenergy = StoD(sQ) * kev; G4UIcommand class has some basic conversion methods. StoI() : convert string to int StoD() : convert string to double ItoS() : convert int to string DtoS() : convert double to string Be careful of omittable parameters. } } UserInterface II - M.Asai (SLAC) 18
19 G4GeneralMessenger Version 10.0-p01
20 G4GenericMessenger G4GenericMessenger is a short- cut for defining simple UI commands that are associated with one target class, grouped in one command directory, and dealing only with na=ve variable types. G4GenericMessenger is a concrete class you can just instan=ate without implemen=ng a dedicated messenger class. class G4GenericMessenger : public G4UImessenger { Target class object public: G4GenericMessenger(void* obj, const G4String& dir = "", const G4String& doc = ""); Command& DeclareProperty (const G4String& name, const G4AnyType& variable, const G4String& doc = ""); Command& DeclarePropertyWithUnit (const G4String& name, const G4String& defaultunit, const G4AnyType& variable, const G4String& doc = ""); Command& DeclareMethod (const G4String& name, const G4AnyMethod& fun, const G4String& doc = ""); Command& DeclareMethodWithUnit (const G4String& name, const G4String& defaultunit, Command name Command directory Target class data member Target class public set method const G4AnyMethod& fun, const G4String& doc = ""); UserInterface II - M.Asai (SLAC) 20
21 example B5PrimaryGeneratorAc=on::B5PrimaryGeneratorAc=on() { fmessenger = new G4GenericMessenger(this, "/B5/generator/, "Primary generator control"); } // momentum command G4GenericMessenger::Command& momentumcmd = fmessenger- >DeclarePropertyWithUnit("momentum", "GeV", fmomentum, "Mean momentum of primaries."); momentumcmd.setparametername("p", true); momentumcmd.setrange("p>=0."); momentumcmd.setdefaultvalue("1."); B5PrimaryGeneratorAc=on::~B5PrimaryGeneratorAc=on() { delete fmessenger; } UserInterface II - M.Asai (SLAC) 21
22 UI command in multithreaded mode Version 10.0-p01
23 UI command in mul=threaded mode In mul=threaded mode, each thread (both master and worker) has its own G4UImanager object. Commands instan=ated in a thread are registered to the G4UImanager of that thread. Every UI command is executed in the master thread if the command is defined in the master thread, and then distributed to G4UImanager object of each worker thread prior to the beginning of thread- local event loop. If a command should not be distributed to worker threads, SetToBeBroadcasted(false) should be invoked for the command. If a command is hard- coded in a object in a worker thread, it is executed only in that worker thread. UserInterface II - M.Asai (SLAC) 23
Visual Basic Programming. An Introduction
Visual Basic Programming An Introduction Why Visual Basic? Programming for the Windows User Interface is extremely complicated. Other Graphical User Interfaces (GUI) are no better. Visual Basic provides
Object Oriented Software Design II
Object Oriented Software Design II Introduction to C++ Giuseppe Lipari http://retis.sssup.it/~lipari Scuola Superiore Sant Anna Pisa February 20, 2012 G. Lipari (Scuola Superiore Sant Anna) C++ Intro February
EE8205: Embedded Computer System Electrical and Computer Engineering, Ryerson University. Multitasking ARM-Applications with uvision and RTX
EE8205: Embedded Computer System Electrical and Computer Engineering, Ryerson University Multitasking ARM-Applications with uvision and RTX 1. Objectives The purpose of this lab is to lab is to introduce
CpSc212 Goddard Notes Chapter 6. Yet More on Classes. We discuss the problems of comparing, copying, passing, outputting, and destructing
CpSc212 Goddard Notes Chapter 6 Yet More on Classes We discuss the problems of comparing, copying, passing, outputting, and destructing objects. 6.1 Object Storage, Allocation and Destructors Some objects
Storage Classes CS 110B - Rule Storage Classes Page 18-1 \handouts\storclas
CS 110B - Rule Storage Classes Page 18-1 Attributes are distinctive features of a variable. Data type, int or double for example, is an attribute. Storage class is another attribute. There are four storage
Primary particle. Geant4 tutorial Paris, 4-8 June 2007. Giovanni Santin ESA / ESTEC. Rhea System SA
Primary particle Geant4 tutorial Paris, 4-8 June 2007 Giovanni Santin ESA / ESTEC Rhea System SA With material from previous tutorials by Makoto Asai Contents G4VUserPrimaryGeneratorAction Primary vertex
TUTORIAL FOR INITIALIZING BLUETOOTH COMMUNICATION BETWEEN ANDROID AND ARDUINO
TUTORIAL FOR INITIALIZING BLUETOOTH COMMUNICATION BETWEEN ANDROID AND ARDUINO some pre requirements by :-Lohit Jain *First of all download arduino software from www.arduino.cc *download software serial
Introduction to Python
Introduction to Python Sophia Bethany Coban Problem Solving By Computer March 26, 2014 Introduction to Python Python is a general-purpose, high-level programming language. It offers readable codes, and
Vim, Emacs, and JUnit Testing. Audience: Students in CS 331 Written by: Kathleen Lockhart, CS Tutor
Vim, Emacs, and JUnit Testing Audience: Students in CS 331 Written by: Kathleen Lockhart, CS Tutor Overview Vim and Emacs are the two code editors available within the Dijkstra environment. While both
Software documentation systems
Software documentation systems Basic introduction to various user-oriented and developer-oriented software documentation systems. Ondrej Holotnak Ondrej Jombik Software documentation systems: Basic introduction
The C Programming Language course syllabus associate level
TECHNOLOGIES The C Programming Language course syllabus associate level Course description The course fully covers the basics of programming in the C programming language and demonstrates fundamental programming
Printer Connection Manager
IT DIRECT Printer Connection Manager Information Technology Direct Limited PO Box 33-1406 Auckland NZ Table of Contents OVERVIEW...2 SETUP INSTRUCTIONS:...3 INSTALLATION...5 Install with New Settings.xml
Facebook Twitter YouTube Google Plus Website Email
PHP MySQL COURSE WITH OOP COURSE COVERS: PHP MySQL OBJECT ORIENTED PROGRAMMING WITH PHP SYLLABUS PHP 1. Writing PHP scripts- Writing PHP scripts, learn about PHP code structure, how to write and execute
CORBA Programming with TAOX11. The C++11 CORBA Implementation
CORBA Programming with TAOX11 The C++11 CORBA Implementation TAOX11: the CORBA Implementation by Remedy IT TAOX11 simplifies development of CORBA based applications IDL to C++11 language mapping is easy
Polymorphism. Problems with switch statement. Solution - use virtual functions (polymorphism) Polymorphism
Polymorphism Problems with switch statement Programmer may forget to test all possible cases in a switch. Tracking this down can be time consuming and error prone Solution - use virtual functions (polymorphism)
Free Java textbook available online. Introduction to the Java programming language. Compilation. A simple java program
Free Java textbook available online "Thinking in Java" by Bruce Eckel, 4th edition, 2006, ISBN 0131872486, Pearson Education Introduction to the Java programming language CS 4354 Summer II 2015 The third
An Incomplete C++ Primer. University of Wyoming MA 5310
An Incomplete C++ Primer University of Wyoming MA 5310 Professor Craig C. Douglas http://www.mgnet.org/~douglas/classes/na-sc/notes/c++primer.pdf C++ is a legacy programming language, as is other languages
3.5. cmsg Developer s Guide. Data Acquisition Group JEFFERSON LAB. Version
Version 3.5 JEFFERSON LAB Data Acquisition Group cmsg Developer s Guide J E F F E R S O N L A B D A T A A C Q U I S I T I O N G R O U P cmsg Developer s Guide Elliott Wolin [email protected] Carl Timmer [email protected]
Free Java textbook available online. Introduction to the Java programming language. Compilation. A simple java program
Free Java textbook available online "Thinking in Java" by Bruce Eckel, 4th edition, 2006, ISBN 0131872486, Pearson Education Introduction to the Java programming language CS 4354 Summer II 2014 Jill Seaman
C++ INTERVIEW QUESTIONS
C++ INTERVIEW QUESTIONS http://www.tutorialspoint.com/cplusplus/cpp_interview_questions.htm Copyright tutorialspoint.com Dear readers, these C++ Interview Questions have been designed specially to get
Sample CSE8A midterm Multiple Choice (circle one)
Sample midterm Multiple Choice (circle one) (2 pts) Evaluate the following Boolean expressions and indicate whether short-circuiting happened during evaluation: Assume variables with the following names
Using NetBeans IDE to Build Quick UI s Ray Hylock, GISo Tutorial 3/8/2011
Using NetBeans IDE to Build Quick UI s Ray Hylock, GISo Tutorial 3/8/2011 We will be building the following application using the NetBeans IDE. It s a simple nucleotide search tool where we have as input
Scanner. It takes input and splits it into a sequence of tokens. A token is a group of characters which form some unit.
Scanner The Scanner class is intended to be used for input. It takes input and splits it into a sequence of tokens. A token is a group of characters which form some unit. For example, suppose the input
Crash Course in Java
Crash Course in Java Based on notes from D. Hollinger Based in part on notes from J.J. Johns also: Java in a Nutshell Java Network Programming and Distributed Computing Netprog 2002 Java Intro 1 What is
Netscape Internet Service Broker for C++ Programmer's Guide. Contents
Netscape Internet Service Broker for C++ Programmer's Guide Page 1 of 5 [Next] Netscape Internet Service Broker for C++ Programmer's Guide Nescape ISB for C++ - Provides information on how to develop and
r-one Python Setup 1 Setup 2 Using IDLE 3 Using IDLE with your Robot ENGI 128: Introduction to Engineering Systems Fall, 2014
r-one Python Setup 1 Setup The files needed are available in the Resources page of http://www.clear.rice.edu/engi128. You will need to setup two files: Python 2.7.8 and PySerial 1. Download Python 2.7.8.
Textbook: T. Issariyakul and E. Hossain, Introduction to Network Simulator NS2, Springer 2008. 1
Event Driven Simulation in NS2 Textbook: T. Issariyakul and E. Hossain, Introduction to Network Simulator NS2, Springer 2008. 1 Outline Recap: Discrete Event v.s. Time Driven Events and Handlers The Scheduler
java.util.scanner Here are some of the many features of Scanner objects. Some Features of java.util.scanner
java.util.scanner java.util.scanner is a class in the Java API used to create a Scanner object, an extremely versatile object that you can use to input alphanumeric characters from several input sources
CS 111 Classes I 1. Software Organization View to this point:
CS 111 Classes I 1 Software Organization View to this point: Data Objects and primitive types Primitive types operators (+, /,,*, %). int, float, double, char, boolean Memory location holds the data Objects
Multichoice Quetions 1. Atributes a. are listed in the second part of the class box b. its time is preceded by a colon. c. its default value is
Multichoice Quetions 1. Atributes a. are listed in the second part of the class box b. its time is preceded by a colon. c. its default value is preceded by an equal sign d. its name has undereline 2. Associations
Translating to Java. Translation. Input. Many Level Translations. read, get, input, ask, request. Requirements Design Algorithm Java Machine Language
Translation Translating to Java Introduction to Computer Programming The job of a programmer is to translate a problem description into a computer language. You need to be able to convert a problem description
CS193D Handout 06 Winter 2004 January 26, 2004 Copy Constructor and operator=
CS193D Handout 06 Winter 2004 January 26, 2004 Copy Constructor and operator= We already know that the compiler will supply a default (zero-argument) constructor if the programmer does not specify one.
J a v a Quiz (Unit 3, Test 0 Practice)
Computer Science S-111a: Intensive Introduction to Computer Science Using Java Handout #11 Your Name Teaching Fellow J a v a Quiz (Unit 3, Test 0 Practice) Multiple-choice questions are worth 2 points
MetroPro Remote Access OMP-0476F. Zygo Corporation Laurel Brook Road P.O. Box 448 Middlefield, Connecticut 06455
MetroPro Remote Access OMP-0476F Zygo Corporation Laurel Brook Road P.O. Box 448 Middlefield, Connecticut 06455 Telephone: (860) 347-8506 E-mail: [email protected] Website: www.zygo.com ZYGO CUSTOMER SUPPORT
JDK 1.5 Updates for Introduction to Java Programming with SUN ONE Studio 4
JDK 1.5 Updates for Introduction to Java Programming with SUN ONE Studio 4 NOTE: SUN ONE Studio is almost identical with NetBeans. NetBeans is open source and can be downloaded from www.netbeans.org. I
AP Computer Science Java Subset
APPENDIX A AP Computer Science Java Subset The AP Java subset is intended to outline the features of Java that may appear on the AP Computer Science A Exam. The AP Java subset is NOT intended as an overall
CISC 181 Project 3 Designing Classes for Bank Accounts
CISC 181 Project 3 Designing Classes for Bank Accounts Code Due: On or before 12 Midnight, Monday, Dec 8; hardcopy due at beginning of lecture, Tues, Dec 9 What You Need to Know This project is based on
First Java Programs. V. Paúl Pauca. CSC 111D Fall, 2015. Department of Computer Science Wake Forest University. Introduction to Computer Science
First Java Programs V. Paúl Pauca Department of Computer Science Wake Forest University CSC 111D Fall, 2015 Hello World revisited / 8/23/15 The f i r s t o b l i g a t o r y Java program @author Paul Pauca
Certified PHP Developer VS-1054
Certified PHP Developer VS-1054 Certification Code VS-1054 Certified PHP Developer Vskills certification for PHP Developers assesses the candidate for developing PHP based applications. The certification
Chapter 2 Introduction to Java programming
Chapter 2 Introduction to Java programming 1 Keywords boolean if interface class true char else package volatile false byte final switch while throws float private case return native void protected break
Programming Languages CIS 443
Course Objectives Programming Languages CIS 443 0.1 Lexical analysis Syntax Semantics Functional programming Variable lifetime and scoping Parameter passing Object-oriented programming Continuations Exception
Tutorial: 3D Pipe Junction Using Hexa Meshing
Tutorial: 3D Pipe Junction Using Hexa Meshing Introduction In this tutorial, you will generate a mesh for a three-dimensional pipe junction. After checking the quality of the first mesh, you will create
Sources: On the Web: Slides will be available on:
C programming Introduction The basics of algorithms Structure of a C code, compilation step Constant, variable type, variable scope Expression and operators: assignment, arithmetic operators, comparison,
Embedded Systems Design Course Applying the mbed microcontroller
Embedded Systems Design Course Applying the mbed microcontroller Serial communications with SPI These course notes are written by R.Toulson (Anglia Ruskin University) and T.Wilmshurst (University of Derby).
Extracting, Storing And Viewing The Data From Dicom Files
Extracting, Storing And Viewing The Data From Dicom Files L. Stanescu, D.D Burdescu, A. Ion, A. Caldare, E. Georgescu University of Kraiova, Romania Faculty of Control Computers and Electronics www.software.ucv.ro/en.
Glossary of Object Oriented Terms
Appendix E Glossary of Object Oriented Terms abstract class: A class primarily intended to define an instance, but can not be instantiated without additional methods. abstract data type: An abstraction
Capabilities of a Java Test Execution Framework by Erick Griffin
Capabilities of a Java Test Execution Framework by Erick Griffin Here we discuss key properties and capabilities of a Java Test Execution Framework for writing and executing discrete Java tests for testing
Object Oriented Software Design II
Object Oriented Software Design II C++ intro Giuseppe Lipari http://retis.sssup.it/~lipari Scuola Superiore Sant Anna Pisa February 26, 2012 G. Lipari (Scuola Superiore Sant Anna) C++ Intro February 26,
JAVA.UTIL.SCANNER CLASS
JAVA.UTIL.SCANNER CLASS http://www.tutorialspoint.com/java/util/java_util_scanner.htm Copyright tutorialspoint.com Introduction The java.util.scanner class is a simple text scanner which can parse primitive
PART-A Questions. 2. How does an enumerated statement differ from a typedef statement?
1. Distinguish & and && operators. PART-A Questions 2. How does an enumerated statement differ from a typedef statement? 3. What are the various members of a class? 4. Who can access the protected members
Windows PowerShell Essentials
Windows PowerShell Essentials Windows PowerShell Essentials Edition 1.0. This ebook is provided for personal use only. Unauthorized use, reproduction and/or distribution strictly prohibited. All rights
Affdex SDK for Android. Developer Guide For SDK version 1.0
Affdex SDK for Android Developer Guide For SDK version 1.0 www.affdex.com/mobile-sdk 1 August 4, 2014 Introduction The Affdex SDK is the culmination of years of scientific research into emotion detection,
CAPIX Job Scheduler User Guide
CAPIX Job Scheduler User Guide Version 1.1 December 2009 Table of Contents Table of Contents... 2 Introduction... 3 CJS Installation... 5 Writing CJS VBA Functions... 7 CJS.EXE Command Line Parameters...
Geant4 Visualization. Andrea Dotti April 19th, 2015 Geant4 tutorial @ M&C+SNA+MC 2015
Geant4 Visualization Andrea Dotti April 19th, 2015 Geant4 tutorial @ M&C+SNA+MC 2015 HepRep/HepRApp Slides from Joseph Perl (SLAC) and Laurent Garnier (LAL/IN2P3) DAWN OpenGL OpenInventor RayTracer HepRep/FRED
Basic Java Constructs and Data Types Nuts and Bolts. Looking into Specific Differences and Enhancements in Java compared to C
Basic Java Constructs and Data Types Nuts and Bolts Looking into Specific Differences and Enhancements in Java compared to C 1 Contents Hello World Program Statements Explained Java Program Structure in
REPAST JAVA GETTING STARTED
REPAST JAVA GETTING STARTED NICK COLLIER & MICHAEL NORTH - REPAST DEVELOPMENT TEAM 0. Before we Get Started Before we can do anything with Repast Simphony, we need to make sure that we have a proper installation
16 Collection Classes
16 Collection Classes Collections are a key feature of the ROOT system. Many, if not most, of the applications you write will use collections. If you have used parameterized C++ collections or polymorphic
Geant4 User's Guide for Application Developers
Geant4 User's Guide for Application Developers Version: geant4 0.2 Publication date 4 December 205 Geant4 Collaboration Geant4 User's Guide for Application Developers by Geant4 Collaboration Version: geant4
Fundamentals of Java Programming
Fundamentals of Java Programming This document is exclusive property of Cisco Systems, Inc. Permission is granted to print and copy this document for non-commercial distribution and exclusive use by instructors
Programming and Software Development (PSD)
Programming and Software Development (PSD) Course Descriptions Fundamentals of Information Systems Technology This course is a survey of computer technologies. This course may include computer history,
13 Classes & Objects with Constructors/Destructors
13 Classes & Objects with Constructors/Destructors 13.1 Introduction In object oriented programming, the emphasis is on data rather than function. Class is a way that binds the data & function together.
Object-Oriented Design Lecture 4 CSU 370 Fall 2007 (Pucella) Tuesday, Sep 18, 2007
Object-Oriented Design Lecture 4 CSU 370 Fall 2007 (Pucella) Tuesday, Sep 18, 2007 The Java Type System By now, you have seen a fair amount of Java. Time to study in more depth the foundations of the language,
JAVA - QUICK GUIDE. Java SE is freely available from the link Download Java. So you download a version based on your operating system.
http://www.tutorialspoint.com/java/java_quick_guide.htm JAVA - QUICK GUIDE Copyright tutorialspoint.com What is Java? Java is: Object Oriented Platform independent: Simple Secure Architectural- neutral
Other GEANT4 capabilities
Other GEANT4 capabilities Event biasing Parameterisation (fast simulation) Persistency Parallelisation and integration in a distributed computing environment Outline! Event biasing! Parameterization (fast
Variable Base Interface
Chapter 6 Variable Base Interface 6.1 Introduction Finite element codes has been changed a lot during the evolution of the Finite Element Method, In its early times, finite element applications were developed
N3458: Simple Database Integration in C++11
N3458: Simple Database Integration in C++11 Thomas Neumann Technische Univeristät München [email protected] 2012-10-22 Many applications make use of relational database to store and query their data. However,
Invitation to Ezhil : A Tamil Programming Language for Early Computer-Science Education 07/10/13
Invitation to Ezhil: A Tamil Programming Language for Early Computer-Science Education Abstract: Muthiah Annamalai, Ph.D. Boston, USA. Ezhil is a Tamil programming language with support for imperative
C++FA 5.1 PRACTICE MID-TERM EXAM
C++FA 5.1 PRACTICE MID-TERM EXAM This practicemid-term exam covers sections C++FA 1.1 through C++FA 1.4 of C++ with Financial Applications by Ben Van Vliet, available at www.benvanvliet.net. 1.) A pointer
Managing XML Documents Versions and Upgrades with XSLT
Managing XML Documents Versions and Upgrades with XSLT Vadim Zaliva, [email protected] 2001 Abstract This paper describes mechanism for versioning and upgrding XML configuration files used in FWBuilder
Channel Access Client Programming. Andrew Johnson Computer Scientist, AES-SSG
Channel Access Client Programming Andrew Johnson Computer Scientist, AES-SSG Channel Access The main programming interface for writing Channel Access clients is the library that comes with EPICS base Written
Python Documentation & Startup
Python Documentation & Startup Presented 16 DEC 2010: Training Module Version 1.01 By Dr. R. Don Green, Ph.D. Email: [email protected] Website: http://drdg.tripod.com Prerequisites If needed, refer to and
Client SuiteScript Developer s Guide
Client SuiteScript Developer s Guide Copyright NetSuite, Inc. 2005 All rights reserved. January 18, 2007 This document is the property of NetSuite, Inc., and may not be reproduced in whole or in part without
1998-2002 by NetMedia, Inc. All rights reserved. Basic Express, BasicX, BX-01, BX-24 and BX-35 are trademarks of NetMedia, Inc. 2.
Version 2.0 1998-2002 by NetMedia, Inc. All rights reserved. Basic Express, BasicX, BX-01, BX-24 and BX-35 are trademarks of NetMedia, Inc. 2.00H 2 Contents 1. Downloader...4 2. Editor and compiler...8
Ch 7-1. Object-Oriented Programming and Classes
2014-1 Ch 7-1. Object-Oriented Programming and Classes May 10, 2014 Advanced Networking Technology Lab. (YU-ANTL) Dept. of Information & Comm. Eng, Graduate School, Yeungnam University, KOREA (Tel : +82-53-810-2497;
Exercise 1: Python Language Basics
Exercise 1: Python Language Basics In this exercise we will cover the basic principles of the Python language. All languages have a standard set of functionality including the ability to comment code,
MPLAB Harmony System Service Libraries Help
MPLAB Harmony System Service Libraries Help MPLAB Harmony Integrated Software Framework v1.08 All rights reserved. This section provides descriptions of the System Service libraries that are available
Introduction to Java
Introduction to Java The HelloWorld program Primitive data types Assignment and arithmetic operations User input Conditional statements Looping Arrays CSA0011 Matthew Xuereb 2008 1 Java Overview A high
[PRAKTISCHE ASPEKTE DER INFORMATIK SS 2014]
2014 Institut für Computergraphik, TU Braunschweig Pablo Bauszat [PRAKTISCHE ASPEKTE DER INFORMATIK SS 2014] All elemental steps that will get you started for your new life as a computer science programmer.
Creating a Simple, Multithreaded Chat System with Java
Creating a Simple, Multithreaded Chat System with Java Introduction by George Crawford III In this edition of Objective Viewpoint, you will learn how to develop a simple chat system. The program will demonstrate
Debugging with TotalView
Tim Cramer 17.03.2015 IT Center der RWTH Aachen University Why to use a Debugger? If your program goes haywire, you may... ( wand (... buy a magic... read the source code again and again and...... enrich
Programmierpraktikum
Programmierpraktikum Claudius Gros, SS2012 Institut für theoretische Physik Goethe-University Frankfurt a.m. 1 of 21 10/16/2012 09:29 AM Java - A First Glance 2 of 21 10/16/2012 09:29 AM programming languages
Moving from CS 61A Scheme to CS 61B Java
Moving from CS 61A Scheme to CS 61B Java Introduction Java is an object-oriented language. This document describes some of the differences between object-oriented programming in Scheme (which we hope you
Building a Multi-Threaded Web Server
Building a Multi-Threaded Web Server In this lab we will develop a Web server in two steps. In the end, you will have built a multi-threaded Web server that is capable of processing multiple simultaneous
C++ Overloading, Constructors, Assignment operator
C++ Overloading, Constructors, Assignment operator 1 Overloading Before looking at the initialization of objects in C++ with constructors, we need to understand what function overloading is In C, two functions
Java CPD (I) Frans Coenen Department of Computer Science
Java CPD (I) Frans Coenen Department of Computer Science Content Session 1, 12:45-14:30 (First Java Programme, Inheritance, Arithmetic) Session 2, 14:45-16:45 (Input and Programme Constructs) Materials
Web development... the server side (of the force)
Web development... the server side (of the force) Fabien POULARD Document under license Creative Commons Attribution Share Alike 2.5 http://www.creativecommons.org/learnmore Web development... the server
El Dorado Union High School District Educational Services
El Dorado Union High School District Course of Study Information Page Course Title: ACE Computer Programming II (#495) Rationale: A continuum of courses, including advanced classes in technology is needed.
Java Interview Questions and Answers
1. What is the most important feature of Java? Java is a platform independent language. 2. What do you mean by platform independence? Platform independence means that we can write and compile the java
Virtuozzo Virtualization SDK
Virtuozzo Virtualization SDK Programmer's Guide February 18, 2016 Copyright 1999-2016 Parallels IP Holdings GmbH and its affiliates. All rights reserved. Parallels IP Holdings GmbH Vordergasse 59 8200
You are to simulate the process by making a record of the balls chosen, in the sequence in which they are chosen. Typical output for a run would be:
Lecture 7 Picking Balls From an Urn The problem: An urn has n (n = 10) balls numbered from 0 to 9 A ball is selected at random, its' is number noted, it is set aside, and another ball is selected from
Driving a Time-based Simulation from MATLAB for Custom Calculations and Control
Driving a Time-based Simulation from MATLAB for Custom Calculations and Control Wes Sunderman Roger Dugan June 2010 The OpenDSS allows other programs to drive the simulations and perform custom calculations
Building a Custom User Manager
Building a Custom User Manager Coversant, Inc 10/1/2008 Contents Intended Audience... 3 Recommended Reading... 3 Building a Custom User Manager... 3 Threading Considerations... 4 Responsibilities of a
Getting Started with the Internet Communications Engine
Getting Started with the Internet Communications Engine David Vriezen April 7, 2014 Contents 1 Introduction 2 2 About Ice 2 2.1 Proxies................................. 2 3 Setting Up ICE 2 4 Slices 2
INTRODUCTION TO OBJECTIVE-C CSCI 4448/5448: OBJECT-ORIENTED ANALYSIS & DESIGN LECTURE 12 09/29/2011
INTRODUCTION TO OBJECTIVE-C CSCI 4448/5448: OBJECT-ORIENTED ANALYSIS & DESIGN LECTURE 12 09/29/2011 1 Goals of the Lecture Present an introduction to Objective-C 2.0 Coverage of the language will be INCOMPLETE
Computers. An Introduction to Programming with Python. Programming Languages. Programs and Programming. CCHSG Visit June 2014. Dr.-Ing.
Computers An Introduction to Programming with Python CCHSG Visit June 2014 Dr.-Ing. Norbert Völker Many computing devices are embedded Can you think of computers/ computing devices you may have in your
