LHCb Core Software Meeting, 13 Dec. 2006 1/5 Proposal for Reflex Dictionaries in LHCb E. Rodrigues, NIKHEF Python – C++ bindings  Python knows about our.

Slides:



Advertisements
Similar presentations
JAXB Java Architecture for XML Binding Andy Fanton Khalid AlBayat.
Advertisements

Requirements  Specifications  ….. Use cases, tests classes, … Requirements must be: --complete --consistent --unambiguous --correct.
CSCI 639 Topics in Software Engineering Assignment #5 Fall 2008.
11 3 / 12 CHAPTER Databases MIS105 Lec14 Irfan Ahmed Ilyas.
LHCb Simulation Tutorial CERN, 21 st -22 nd February B 00 l e How to pass a detector geometry to.
Identifiers for Everyone J. Bogart Core Software Workshop April
DaVinci status Juan Palacios LHCb Software Week March, 2009.
7.1 The Software Engineering Discipline 7.2 The Software Life Cycle 報告者 : 林建任.
SCRAM Software Configuration, Release And Management Background SCRAM has been developed to enable large, geographically dispersed and autonomous groups.
Typical Software Documents with an emphasis on writing proposals.
CMS Report – GridPP Collaboration Meeting VI Peter Hobson, Brunel University30/1/2003 CMS Status and Plans Progress towards GridPP milestones Workload.
CSCI 6962: Server-side Design and Programming Introduction to Java Server Faces.
K. Harrison CERN, 20th April 2004 AJDL interface and LCG submission - Overview of AJDL - Using AJDL from Python - LCG submission.
LC Software Workshop, May 2009, CERN P. Mato /CERN.
SOFTWARE REUSABILITY AJAYINDER SINGH CSC What is Software Reuse Software reuse is the process of implementing or updating software systems using.
1 5.1 Software Engineering Practice  Provide value to the user  KIS—keep it simple!  Maintain the product and project “vision”  What you produce,
LHCb Core Software Meeting, 18 Jan /4 Containers in GaudiPython E. Rodrigues, NIKHEF Why >>> for i in range( hits.size() ): >>> for i in range(
ATLAS and GridPP GridPP Collaboration Meeting, Edinburgh, 5 th November 2001 RWL Jones, Lancaster University.
Distributed Version Management Distributed Version of Management for Computer Software (DVMS)
Database Design and Management CPTG /23/2015Chapter 12 of 38 Functions of a Database Store data Store data School: student records, class schedules,
Heather Kelly PPA Scientific Computing Apps LAT was launched as part of the Fermi Gamma-ray Space Telescope on June 11 th 2008.
Dale E. Gary Professor, Physics, Center for Solar-Terrestrial Research New Jersey Institute of Technology 1 9/25/2012Prototype Review Meeting.
EGEE-III INFSO-RI Enabling Grids for E-sciencE EGEE and gLite are registered trademarks Stephen Childs Trinity College Dublin &
LHCb Lausanne Workshop, 21st March /12 Tracking Software for DC’06 E. Rodrigues, NIKHEF LHCb Tracking and Alignment Workshop  To do list, and done.
SEAL Core Libraries and Services CLHEP Workshop 28 January 2003 P. Mato / CERN Shared Environment for Applications at LHC.
SEAL Project Core Libraries and Services 18 December 2002 P. Mato / CERN Shared Environment for Applications at LHC.
LC Software Workshop, May 2009, CERN P. Mato /CERN.
LHCb-ATLAS GANGA Workshop, 21 April 2004, CERN 1 DIRAC Software distribution A.Tsaregorodtsev, CPPM, Marseille LHCb-ATLAS GANGA Workshop, 21 April 2004.
FLORIDA PUBLIC HURRICANE LOSS MODEL V6.1 Computer Science February 2-4, Dr. Shu-Ching Chen School of Computing and Information Sciences Florida.
Refitting Tracks from DST E. Rodrigues, NIKHEF LHCb Tracking and Alignment Workshop, Lausanne, 8-9th November 2006  Motivations  Step-by-step …  Current.
INFSO-RI Enabling Grids for E-sciencE Ganga 4 – The Ganga Evolution Andrew Maier.
GLAST LAT Offline SoftwareCore review, Jan. 17, 2001 Review of the “Core” software: Introduction Environment: THB, Thomas, Ian, Heather Geometry: Joanne.
Software Engineering Lecture # 1.
LHCb Lausanne Workshop, 21st March /8 Tracking Open Issues E. Rodrigues, NIKHEF LHCb Tracking and Alignment Workshop Some topics to discuss …
Report from the WLCG Operations and Tools TEG Maria Girone / CERN & Jeff Templon / NIKHEF WLCG Workshop, 19 th May 2012.
1 Introduction Layout of tutorial Where to find documentation.
23/2/2000Status of GAUDI 1 P. Mato / CERN Computing meeting, LHCb Week 23 February 2000.
1 DIRAC Job submission A.Tsaregorodtsev, CPPM, Marseille LHCb-ATLAS GANGA Workshop, 21 April 2004.
1 FESA architecture v.1.0 Framework Configuration & Data-entry Tool 5 th December 2003.
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 15. Review Interaction-Oriented Software Architectures – MVC.
Separate distribution of the analysis code (and more) P. Hristov 19/03/2014.
LHCb Software Week, 26th April /23 Tracking in LHCb E. Rodrigues, NIKHEF LHCb Software Week A Status Report.
Data Placement Intro Dirk Duellmann WLCG TEG Workshop Amsterdam 24. Jan 2012.
Resources & Bitmaps Adding clip art to your application.
INFSO-RI Enabling Grids for E-sciencE Using of GANGA interface for Athena applications A. Zalite / PNPI.
Summary of persistence discussions with LHCb and LCG/IT POOL team David Malon Argonne National Laboratory Joint ATLAS, LHCb, LCG/IT meeting.
Systems, their relations & information. Concepts and Status of the new central service for tracking relations between CERN accelerator systems TE/MPE TM.
Project Work Plan SEAL: Core Libraries and Services 7 January 2003 P. Mato / CERN Shared Environment for Applications at LHC.
David Adams ATLAS AJDL: Abstract Job Description Language David Adams BNL June 29, 2004 PPDG Collaboration Meeting Williams Bay.
JRA1 Meeting – 09/02/ Software Configuration Management and Integration EGEE is proposed as a project funded by the European Union under contract.
Maite Barroso – WP4 Workshop – 10/12/ n° 1 -WP4 Workshop- Developers’ Guide Maite Barroso 10/12/2002
Online Model - Goals Program package in Python to obtain and manipulate a online model of the machine Highly modular approach which allows for include.
LHCb Software Week 25/11/99 Gonzalo Gracia Abril 1 r Status of Geant4 in LHCb. r Ideas on how to populate the LHCb Detector Description Data Base (LHCb.
The LHCb Software and Computing NSS/IEEE workshop Ph. Charpentier, CERN B00le.
Java Beans Sagun Dhakhwa.
Arab Open University 2nd Semester, M301 Unit 5
Physical Units Event Data Model Access to MonteCarlo truth
Status of the Track Event Model Classes and Tools E. Rodrigues, NIKHEF
BUS 375 Str Lessons in Excellence-- bus375.com. BUS 375 Assignment 1 MS Project Familiarization For more course tutorials visit Prior to.
NASPAC 2.0 Architecture January 27, 2010
Gridifying the LHCb Monte Carlo production system
2 Getting Started.
G4 Workshop 2002 Detector Description Parallel Session
2 Getting Started.
LHCb Data Quality Check web. cern
SEAL Project Core Libraries and Services
Input for ad hoc on software update on 7th Dec. from Japan
Input for ad hoc on software update on 7th Dec. from Japan
Revision Update and Reports
Presentation transcript:

LHCb Core Software Meeting, 13 Dec /5 Proposal for Reflex Dictionaries in LHCb E. Rodrigues, NIKHEF Python – C++ bindings  Python knows about our C++ objects via dictionaries  All is nicely done “behind the scenes” … Dictionaries  All our XML-defined event classes have the corresponding dictionaries built automatically  Other (event) classes defined in.h &.cpp needed some extra “hand-made” files for producing the dictionaries  Same for Gaudi tools LHCb Core Software Meeting

LHCb Core Software Meeting, 18 Jan /5 The Tracking Example Track Event Classes  Event/TrackEvent  Tr/TrackFitEvent  Kernel/LHCbKernel Tracking Tools Interfaces  Tr/TrackInterfaces  Tr/TrackMCInterfaces  Kernel/LHCbKernel All dictionaries produced in each package Dictionaries produced In TrackPython package ALL TRACKING CLASSES AND TOOLS ARE AVAILABLE IN PYTHON Dictionaries produced In LHCbKernel package

LHCb Core Software Meeting, 18 Jan /5 Other Examples DaVinci tools  Phys/PhysDict  Any other package? Monte Carlo classes and tools  Event/MCEvent  … Where are other Python dictionaries built?

LHCb Core Software Meeting, 18 Jan /5 Proposal of Guideline Proposal  We need a well-defined and consistent way of building dictionaries  Dictionaries for custom classes and tools should be built in the same package where these are defined, not in separate packages  Only exception: when a large number of related classes and interfaces are in separate packages, build a single dictionary in a dedicated new package - e.g. Det/DetSys - e.g. Det/DetSysBenefits  Since non-MC/MC classes and tools are defined (or should) in separate packages, also the dictionaries will have the same clear separation - not quite the case at present, e.g. Phys/PhysDict - not quite the case at present, e.g. Phys/PhysDict  When classes and tools are updated, corrected, etc. the corresponding dictionaries are automatically updated accordingly upon recompilation

LHCb Core Software Meeting, 18 Jan /5 What needs to be done (Event) Classes  Dictionaries for all our LHCb event classes exist « by construction »  Make sure we have dictionaries for all relevant custom classes that are not defined in XML Tool Interfaces  Converge towards a small number of packages for interfaces  Clearly separate Monte Carlo interfaces from real-data ones - e.g: Tr/Track(MC)Interfaces, Phys/Phys(MC)Interfaces, Det/DetSys, etc.  Make sure we have dictionaries for all tool interfaces we may need/want to use in Python