N ATIONAL E NERGY R ESEARCH S CIENTIFIC C OMPUTING C ENTER Charles Leggett TruthAssociation EDM Workshop Event Data Model Session Jan 28 2003.

Slides:



Advertisements
Similar presentations
Linked List 1. Introduction to Linked List 2. Node Class 3. Linked List 4. The Bag Class with Linked List.
Advertisements

Singly Linked List BTECH, EE KAZIRANGA UNIVERSITY.
Operating Systems: Monitors 1 Monitors (C.A.R. Hoare) higher level construct than semaphores a package of grouped procedures, variables and data i.e. object.
. STL: C++ Standard Library (continued). STL Iterators u Iterators are allow to traverse sequences u Methods  operator*  operator->  operator++, and.
N ATIONAL E NERGY R ESEARCH S CIENTIFIC C OMPUTING C ENTER 1 Mixed Language Programming on Seaborg Mark Durst NERSC User Services.
Chapter 6 Structures By C. Shing ITEC Dept Radford University.
Templated Functions. Overloading vs Templating  Overloaded functions allow multiple functions with the same name.
1 Data Structures CSCI 132, Spring 2014 Lecture 8 Implementing Queues.
LINKED QUEUES P LINKED QUEUE OBJECT Introduction Introduction again, the problem with the previous example of queues is that we are working.
Stacks and Queues & Inheritance 2014 Spring CS32 Discussion Jungseock Joo.
Data Structures Data Structures Topic #8. Today’s Agenda Continue Discussing Table Abstractions But, this time, let’s talk about them in terms of new.
Bellevue University CIS 205: Introduction to Programming Using C++ Lecture 9: Pass-by-Value.
Pointers Example Use int main() { int *x; int y; int z; y = 10; x = &y; y = 11; *x = 12; z = 15; x = &z; *x = 5; z = 8; printf(“%d %d %d\n”, *x, y, z);
By: Blake Peters.  OODB- Object Oriented Database  An OODB is a database management system in which information is represented in the form of objects.
Data Structures Using C++ 2E
CMSC 202 Lesson 19 Polymorphism 2. Warmup What is wrong with the following code? What error will it produce? (Hint: it already compiles) for (unsigned.
N ATIONAL E NERGY R ESEARCH S CIENTIFIC C OMPUTING C ENTER Charles Leggett A Lightweight Histogram Interface Layer CHEP 2000 Session F (F320) Thursday.
N ATIONAL E NERGY R ESEARCH S CIENTIFIC C OMPUTING C ENTER 1 PDSF Host Database HEPiX Fall 2002 Cary Whitney
CS162 - Topic #11 Lecture: Recursion –Problem solving with recursion –Work through examples to get used to the recursive process Programming Project –Any.
N ATIONAL E NERGY R ESEARCH S CIENTIFIC C OMPUTING C ENTER 1 NERSC Visualization Greenbook Workshop Report June 2002 Wes Bethel LBNL.
Level 2 ID-tracking truth association Trigger AOD discussion 13 December 2006 Ricardo Gonçalo - RHUL.
N ATIONAL E NERGY R ESEARCH S CIENTIFIC C OMPUTING C ENTER Charles Leggett Updates to Interval of Validity Service (IOVSvc) ATLAS Software Week Dec
9 Associators How to relate objects to each other Create relations Save relations Use relations: Associators.
1 Data Structures CSCI 132, Spring 2014 Lecture 36 Binary Search Trees.
N ATIONAL E NERGY R ESEARCH S CIENTIFIC C OMPUTING C ENTER Charles Leggett Interval of Validity Service IOVSvc ATLAS Software Week May Architecture.
N ATIONAL E NERGY R ESEARCH S CIENTIFIC C OMPUTING C ENTER Charles Leggett Interval of Validity Service IOVSvc EDM Workshop Detector Description Session.
EASTERN MEDITERRANEAN UNIVERSITY Stacks EENG212 –Algorithms and Data Structures.
1 Data Structures CSCI 132, Spring 2014 Lecture 20 Linked Lists.
David Adams ATLAS DIAL/ADA JDL and catalogs David Adams BNL December 4, 2003 ATLAS software workshop Production session CERN.
N ATIONAL E NERGY R ESEARCH S CIENTIFIC C OMPUTING C ENTER 1 C. Leggett Intelligent (or not completely stupid) Unpacking Structure and Timing Studies of.
1 Data Structures CSCI 132, Spring 2014 Lecture 19 Lists.
N ATIONAL E NERGY R ESEARCH S CIENTIFIC C OMPUTING C ENTER Charles Leggett Callbacks May
1 Data Structures CSCI 132, Spring 2014 Lecture 34 Analyzing Hash Tables.
N ATIONAL E NERGY R ESEARCH S CIENTIFIC C OMPUTING C ENTER Charles Leggett Colors in the Message Service ATLAS software workshop March Architecture.
Class List { public: // TYPEDEF and MEMBER CONSTANTS enum { CAPACITY = 30 }; // Or: static const size_t CAPACITY = 30; typedef double Item; // CONSTRUCTOR.
N ATIONAL E NERGY R ESEARCH S CIENTIFIC C OMPUTING C ENTER Charles Leggett Interval of Validity Service IOVSvc ATLAS Software Week Architecture Session.
2005MEE Software Engineering Lecture 7 –Stacks, Queues.
1 Chapter 3 Lists, Stacks, and Queues Reading: Sections 3.1, 3.2, 3.3, 3.4 Abstract Data Types (ADT) Iterators Implementation of Vector.
1 Data Structures CSCI 132, Spring 2014 Lecture 33 Hash Tables.
1 Data Structures CSCI 132, Spring 2016 Notes 6 Applications using Stacks.
Int fact (int n) { If (n == 0) return 1; else return n * fact (n – 1); } 5 void main () { Int Sum; : Sum = fact (5); : } Factorial Program Using Recursion.
N ATIONAL E NERGY R ESEARCH S CIENTIFIC C OMPUTING C ENTER Charles Leggett Prototype GEANT4 Service for ATHENA framework ATLAS Software Workshop Dec 3.
Main Index Contents 11 Main Index Contents Sets Defined by a key along with other data Sets Defined by a key along with other data Key-Value Data Key-Value.
CPSC 252 Tables / Maps / Dictionaries Page 1 Tables, Maps and Dictionaries A table (or map or dictionary) is a collection of key/value pairs. In general.
9 Associators How to relate objects to each other Create relations Save relations Use relations: Associators.
Level 3 Tracking Tutorial R. Beuselinck 7 February 2001 Current status of level 3 tracking interface User access methods and parameter definitions Simple.
Linked Lists A formal data structure. Linked Lists Collections of data items “lined up in a row” Inserts and deletes can be done anywhere in the list.
N ATIONAL E NERGY R ESEARCH S CIENTIFIC C OMPUTING C ENTER Charles Leggett Transient Conditions/Detector Store using StoreGate ATLAS Software Workshop.
1 Data Structures and Algorithms Queue. 2 The Queue ADT Introduction to the Queue data structure Designing a Queue class using dynamic arrays Linked Queues.
Dale Roberts Department of Computer and Information Science, School of Science, IUPUI CSCI 240 Abstract Data Types Queues Dale Roberts, Lecturer
CSE190D: Topics in Database System Implementation
CS505 Data Structures and Algorithms
Chapter 16-2 Linked Structures
Title of your poster can go in this space Another line here if it is needed Name of person, another name, name 3, more names, yet another person Department.
پروتكل آموزش سلامت به مددجو
Associative Structures
Title of your poster can go in this space Another line here if it is needed Name of person, another name, name 3, more names, yet another person Department.
Title of your poster can go in this space Another line here if it is needed Name of person, another name, name 3, more names, yet another person Department.
Title of your poster can go in this space Another line here if it is needed Name of person, another name, name 3, more names, yet another person Department.
Arrays and Collections
Doubly Linked List Implementation
Default Arguments.
Lists - I The List ADT.
Lists - I The List ADT.
Title of your poster can go in this space Another line here if it is needed Name of person, another name, name 3, more names, yet another person Department.
Tree A tree is a data structure in which each node is comprised of some data as well as node pointers to child nodes
Doubly Linked List Implementation
Chapter 3 Lists, Stacks, and Queues
The List Container and Iterators
Title of your poster can go in this space Another line here if it is needed Name of person, another name, name 3, more names, yet another person Department.
Presentation transcript:

N ATIONAL E NERGY R ESEARCH S CIENTIFIC C OMPUTING C ENTER Charles Leggett TruthAssociation EDM Workshop Event Data Model Session Jan

2 Charles Leggett Purpose F Create bi-directional associations between HepMC::GenParticles and Identifiers (or Identifiables). F Provides the ability to query associations from either side. NOT F Does NOT fill the associations for you - you, or someone else, has to do this.

3 Charles Leggett Structure F Package is Simulation/TruthAssociation F HepMC::GenParticles are identified using their barcodes. F Identifiables are identified using Indentifiers F Associations between HepMC::GenParticles and Indentifiables can be many-to-many F Associations are held internally in two maps of sets: typedef long barcode std::map * > m_toTruth; std::map * > m_fromTruth;

4 Charles Leggett Usage F Currently, the TruthAssociation package only provides a simple class - it is not a service. F Items are inserted in the association with: virtual StatusCode insert( const Identifier theID, const barcode theTruth ); F Items can be retrieve by their Identifier, the barcode, or the HepMC::GenParticle* pointer: typedef std::set ::const_iterator TruthIterator; typedef std::set ::const_iterator IdentifierIterator; virtual int retrieveFromId( const Identifier theID, TruthIterator& first TruthIterator& last ) const; virtual int retrieveFromTruth( const barcode theTruth, IdentifierIterator& first, IdentifierIterator& last ) const; virtual int retrieveFromTruth( const HepMC::GenParticle* theTruth, IdentifierIterator& first, IdentifierIterator& last ) const; F user gets back a return code which is the number of entries retrieved, and a set of const iterators over those entries.

5 Charles Leggett Other Functions F Either map can be dumped to stdout: virtual void dumpIdentifierMap() const; virtual void dumpBarcodeMap() const; F Size of association can be retrieved: virtual long size( ) const; F Maps can be emptied: virtual void clear();

6 Charles Leggett Lastly F I told Srini that this talk would only take about 2 minutes, so it’s up to you, David, to keep the audience entertained for the next 18 minutes. Might I suggest a humorous anecdote, or perhaps a short song and dance number?