From f8194f4b618571b7154a049b13451f5ba6377d49 Mon Sep 17 00:00:00 2001 From: cvs2svn <cvs2svn@53ecefc3-a64d-0410-9bdf-b8581fa3287e> Date: Wed, 21 Nov 2007 18:22:17 +0000 Subject: [PATCH] This commit was manufactured by cvs2svn to create tag 'GAUDI_v19r6'. git-svn-id: svn+ssh://svn.cern.ch/reps/gaudi/distribution/tags/GAUDI/GAUDI_v19r6@4508 53ecefc3-a64d-0410-9bdf-b8581fa3287e --- GaudiRelease/.cvsignore | 10 + GaudiRelease/cmt/.cvsignore | 8 + GaudiRelease/cmt/requirements | 81 + GaudiRelease/doc/BuildDoxyDoc.bat | 3 + GaudiRelease/doc/DoxyCommon.cfg | 39 + GaudiRelease/doc/DoxyFile.cfg | 19 + GaudiRelease/doc/DoxyTags.cfg | 5 + GaudiRelease/doc/Doxyfooter.html | 4 + GaudiRelease/doc/DoxygenMain.doc | 75 + GaudiRelease/doc/Doxyheader.html | 22 + GaudiRelease/doc/dottool.cfg | 13 + GaudiRelease/doc/release.notes.html | 4326 ++++++++++++++++++++++ GaudiRelease/doc/release.notes.v10r0.txt | 264 ++ GaudiRelease/doc/release.notes.v10r1 | 71 + GaudiRelease/doc/release.notes.v10r2 | 36 + GaudiRelease/doc/release.notes.v10r3 | 42 + GaudiRelease/doc/release.notes.v10r4 | 42 + GaudiRelease/doc/release.notes.v11r0 | 253 ++ GaudiRelease/doc/release.notes.v11r1 | 72 + GaudiRelease/doc/release.notes.v11r2 | 77 + GaudiRelease/doc/release.notes.v11r3 | 52 + GaudiRelease/doc/release.notes.v11r4 | 5 + GaudiRelease/doc/release.notes.v7 | 344 ++ GaudiRelease/doc/release.notes.v8 | 203 + GaudiRelease/doc/release.notes.v9 | 160 + GaudiRelease/doc/release.notes.v9r1 | 39 + GaudiRelease/doc/release.notes.v9r2 | 71 + 27 files changed, 6336 insertions(+) create mode 100644 GaudiRelease/.cvsignore create mode 100644 GaudiRelease/cmt/.cvsignore create mode 100644 GaudiRelease/cmt/requirements create mode 100755 GaudiRelease/doc/BuildDoxyDoc.bat create mode 100644 GaudiRelease/doc/DoxyCommon.cfg create mode 100644 GaudiRelease/doc/DoxyFile.cfg create mode 100644 GaudiRelease/doc/DoxyTags.cfg create mode 100644 GaudiRelease/doc/Doxyfooter.html create mode 100644 GaudiRelease/doc/DoxygenMain.doc create mode 100644 GaudiRelease/doc/Doxyheader.html create mode 100644 GaudiRelease/doc/dottool.cfg create mode 100644 GaudiRelease/doc/release.notes.html create mode 100644 GaudiRelease/doc/release.notes.v10r0.txt create mode 100644 GaudiRelease/doc/release.notes.v10r1 create mode 100644 GaudiRelease/doc/release.notes.v10r2 create mode 100644 GaudiRelease/doc/release.notes.v10r3 create mode 100644 GaudiRelease/doc/release.notes.v10r4 create mode 100644 GaudiRelease/doc/release.notes.v11r0 create mode 100644 GaudiRelease/doc/release.notes.v11r1 create mode 100644 GaudiRelease/doc/release.notes.v11r2 create mode 100644 GaudiRelease/doc/release.notes.v11r3 create mode 100644 GaudiRelease/doc/release.notes.v11r4 create mode 100644 GaudiRelease/doc/release.notes.v7 create mode 100644 GaudiRelease/doc/release.notes.v8 create mode 100644 GaudiRelease/doc/release.notes.v9 create mode 100644 GaudiRelease/doc/release.notes.v9r1 create mode 100644 GaudiRelease/doc/release.notes.v9r2 diff --git a/GaudiRelease/.cvsignore b/GaudiRelease/.cvsignore new file mode 100644 index 000000000..2784062e6 --- /dev/null +++ b/GaudiRelease/.cvsignore @@ -0,0 +1,10 @@ +slc3_ia32_gcc323* +slc4_ia32_gcc34* +slc4_amd64_gcc34* +win32_vc71* +i686-slc3-gcc323* +i686-slc4-gcc34* +i686-slc4-gcc41* +x86_64-slc4-gcc34* +x86_64-slc4-gcc41* +genConf diff --git a/GaudiRelease/cmt/.cvsignore b/GaudiRelease/cmt/.cvsignore new file mode 100644 index 000000000..0d635c032 --- /dev/null +++ b/GaudiRelease/cmt/.cvsignore @@ -0,0 +1,8 @@ +cleanup.* +setup.* +*.make +Makefile +*.nmake +*.nmakesav +NMake +install.history diff --git a/GaudiRelease/cmt/requirements b/GaudiRelease/cmt/requirements new file mode 100644 index 000000000..f6e4abab3 --- /dev/null +++ b/GaudiRelease/cmt/requirements @@ -0,0 +1,81 @@ +# Package used to manage the Gaudi project packages +# No wildcards allowed + +package GaudiRelease + +version v19r6 +branches doc cmt + +# CMT and Gaudi policy +use GaudiPolicy v7r2 + +# Note for conditional use statements: only the tags which are defined +# at the level of CMT (and CMTSITE) can be used. This means that +# "Linux", "CERN" , "Darwin" etc are valid tags but not "slc3", +# "slc4_amd64" etc. If one needs to use those, this should be done at +# the level of the package itself with a "macro_remove constituents" + +# Gaudi executable +use Gaudi v19r6 + +# Gaudi libraries - generic +use GaudiKernel v23r2 +use GaudiSvc v16r2 +use GaudiAud v8r4 +use GaudiAlg v10r2 +use GaudiGSL v6r7 +use GaudiUtils v1r3 + +# Technology-specific Persistency packages +use HbookCnv v14r12 +use RootHistCnv v9r15 +use GaudiPoolDb v2r15 +use GaudiPython v8r17 + +# Container package specifying the minimum set of core packages +use GaudiSys v19r6 + +# Grid utilities for prestaging files +use GaudiGridSvc v1r4 + +# Monitoring utility. Can use also MonaLisa +use GaudiMonitor v1r3 + + +# Examples packages +use GaudiExamples v19r6 + + +# Atlas packages +use PartPropSvc v2r6 + +#LHCb external packages +macro COOL_use "" LHCb "COOL v* LCG_Interfaces" +use ${COOL_use} +macro CORAL_use "" LHCb "CORAL v* LCG_Interfaces" +use ${CORAL_use} +macro RELAX_use "" LHCb "RELAX v* LCG_Interfaces" +use ${RELAX_use} +macro sqlite_use "" LHCb "sqlite v* LCG_Interfaces" +use $(sqlite_use) +macro HepMC_use "" LHCb "HepMC v* LCG_Interfaces" +use $(HepMC_use) +macro oracle_use "" LHCb "oracle v* LCG_Interfaces" +use $(oracle_use) +macro pyqt_use "" LHCb "pyqt v* LCG_Interfaces" +use $(pyqt_use) +macro QMtest_use "" LHCb "QMtest v* LCG_Interfaces" +use $(QMtest_use) +macro CppUnit_use "" LHCb "CppUnit v* LCG_Interfaces" +use $(CppUnit_use) + +#LHCbGrid external packages +macro gfal_use "" LHCbGrid "gfal v* LCG_Interfaces" +use $(gfal_use) +macro CASTOR_use "" LHCbGrid "CASTOR v* LCG_Interfaces" +use $(CASTOR_use) +macro dcache_client_use "" LHCbGrid "dcache_client v* LCG_Interfaces" +use $(dcache_client_use) + +# Allow the generation of QMTest summary +apply_pattern QMTestSummarize diff --git a/GaudiRelease/doc/BuildDoxyDoc.bat b/GaudiRelease/doc/BuildDoxyDoc.bat new file mode 100755 index 000000000..36b439df1 --- /dev/null +++ b/GaudiRelease/doc/BuildDoxyDoc.bat @@ -0,0 +1,3 @@ +@echo off +call ..\cmt\setup.bat +call doxygen DoxyFile.cfg diff --git a/GaudiRelease/doc/DoxyCommon.cfg b/GaudiRelease/doc/DoxyCommon.cfg new file mode 100644 index 000000000..11a9e88a7 --- /dev/null +++ b/GaudiRelease/doc/DoxyCommon.cfg @@ -0,0 +1,39 @@ +# Doxygen configuration options for common look and feel +GENERATE_HTML = YES +GENERATE_TODOLIST = YES +GENERATE_LATEX = NO +GENERATE_MAN = NO +GENERATE_RTF = NO +CASE_SENSE_NAMES = NO +RECURSIVE = YES +EXTRACT_ALL = YES +SOURCE_BROWSER = YES +INLINE_SOURCES = YES +HTML_ALIGN_MEMBERS = YES +HTML_HEADER = $(GAUDIRELEASEROOT)/doc/Doxyheader.html +HTML_FOOTER = $(GAUDIRELEASEROOT)/doc/Doxyfooter.html +QUIET = NO +WARNINGS = YES +WARN_LOGFILE = ./DoxyWarnings.log +ALPHABETICAL_INDEX = YES +COLS_IN_ALPHA_INDEX = 3 +JAVADOC_AUTOBRIEF = YES +DETAILS_AT_TOP = YES +CLASS_DIAGRAMS = YES +SHOW_DIRECTORIES = YES +SEARCHENGINE = YES + +# Exclude generated dictionaries +EXCLUDE_PATTERNS = */dict/* */InstallArea/* +# Exclude tests +EXCLUDE_PATTERNS += */test/* +EXCLUDE_PATTERNS += */Test/* +EXCLUDE_PATTERNS += */tests/* +EXCLUDE_PATTERNS += */Tests/* +EXCLUDE_PATTERNS += */examples/* +EXCLUDE_PATTERNS += */GaudiExamples/* +EXCLUDE_PATTERNS += */slc3_*/* +EXCLUDE_PATTERNS += */slc4_*/* +EXCLUDE_PATTERNS += */win32_*/* + +FILE_PATTERNS = *.cpp *.h *.icpp diff --git a/GaudiRelease/doc/DoxyFile.cfg b/GaudiRelease/doc/DoxyFile.cfg new file mode 100644 index 000000000..283a2748a --- /dev/null +++ b/GaudiRelease/doc/DoxyFile.cfg @@ -0,0 +1,19 @@ +# Doxygen configuration file for Gaudi +PROJECT_NAME = "Gaudi Framework, version $(GAUDIVERS)" +PROJECT_NUMBER = "$(GAUDIVERS)" +OUTPUT_DIRECTORY = $(GAUDIRELEASEROOT)/doc +GENERATE_TAGFILE = Gaudi.tag + +INPUT = $(Gaudi_release_area)/GAUDI/GAUDI_$(GAUDIVERS) +# Additional directory in case doc is not built in release area +#INPUT += . + + + +@INCLUDE_PATH = $(GAUDIRELEASEROOT)/doc +@INCLUDE = DoxyCommon.cfg +@INCLUDE = dottool.cfg +@INCLUDE = DoxyTags.cfg + +#this line should be placed after the DoxyCommon.cfg inclusion +FILE_PATTERNS += *DoxygenMain.doc diff --git a/GaudiRelease/doc/DoxyTags.cfg b/GaudiRelease/doc/DoxyTags.cfg new file mode 100644 index 000000000..64f99d1af --- /dev/null +++ b/GaudiRelease/doc/DoxyTags.cfg @@ -0,0 +1,5 @@ +# Tagfiles and related commands for use in Gaudi doxygen doc +TAGFILES = $(GAUDISOFT)/GAUDI/doxytags/libstdc++.tag=http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen \ + $(LCG_release_area)/../spi/doc/doxygen/output/ROOT/$(ROOTVERS)/doxygen/html/ROOT_reference_tags.xml=http://lcgapp.cern.ch/doxygen/ROOT/$(ROOTVERS)/doxygen/html \ + $(LCG_release_area)/../spi/doc/doxygen/output/SEAL/$(SEALVERS)/doxygen/html/SEAL_reference_tags.xml=http://lcgapp.cern.ch/doxygen/SEAL/$(SEALVERS)/doxygen/html \ + $(LCG_release_area)/../spi/doc/doxygen/output/POOL/$(POOLVERS)/doxygen/html/POOL_reference_tags.xml=http://lcgapp.cern.ch/doxygen/POOL/$(POOLVERS)/doxygen/html diff --git a/GaudiRelease/doc/Doxyfooter.html b/GaudiRelease/doc/Doxyfooter.html new file mode 100644 index 000000000..24ef72632 --- /dev/null +++ b/GaudiRelease/doc/Doxyfooter.html @@ -0,0 +1,4 @@ +<hr><address><small>Generated at $datetime for $projectname by +<a href="http://www.stack.nl/~dimitri/doxygen/index.html"> +Doxygen</a> version $doxygenversion written by <a href="mailto:dimitri@stack.nl">Dimitri van Heesch</a>, + © 1997-2004</small></address> diff --git a/GaudiRelease/doc/DoxygenMain.doc b/GaudiRelease/doc/DoxygenMain.doc new file mode 100644 index 000000000..161fd5053 --- /dev/null +++ b/GaudiRelease/doc/DoxygenMain.doc @@ -0,0 +1,75 @@ +/** \mainpage notitle + * \anchor gaudidoxygenmain + * + * This is the code reference manual for the GAUDI framework. These pages have + * been generated directly from the code and reflect the exact state of the software. + * For a more comprehensive and guiding manual for the user of the framework there + * exists the User Guide accessible from the + * <a href="http://cern.ch/gaudi"> GAUDI Project Web page</a>. + * + * Use the links in the menu at the top of the page to navigate. In particular, + * the list of classes can be found <a href="annotated.html">here</a> or via + * the <a href="hierarchy.html">Class Hierarchy</a> link. + * +\htmlonly +<h3>Version details</h3> +<table border="1" cellspacing="0" width="100%"> + <tr> + <td><b>Version</b></td> + <td>$(GAUDIVERS)</td> + </tr> + <tr> + <td><b>Description</b></td> + <td> Details of the constituent package versions are available + <a href="../../requirements">here</a>.<br> + The release notes (<a href="../release.notes.html">$(GAUDIVERS)</a>) + contain the details of changes since the previous release. </td> + </tr> + <tr> + <td><b>Supported platforms</b></td> + <td>Windows with VC++ + 7.1, Linux RedHat 7.3 with gcc-3.2.3 (released with debug and non debug versions)</td> + </tr> + <tr> + <td><b>Download</b></td> + <td>Download + <a href="http://lhcbproject.web.cern.ch/lhcbproject/dist/GAUDI/GAUDI_GAUDI_$(GAUDIVERS).tar.gz">GAUDI $(GAUDIVERS) </a></td> + </tr> + <tr> + <td><b>Documentation</b></td> + <td>Gaudi Developers Guide <a href="http://cern.ch/lhcb-comp/Frameworks/Gaudi/Gaudi_v9/GUG/Output/GUG.htm">v9</a> ( <a href="http://cern.ch/lhcb-comp/Frameworks/Gaudi/Gaudi_v9/GUG/GUG.pdf">.pdf</a>, <a href="http://cern.ch/lhcb-comp/Frameworks/Gaudi/Gaudi_v9/GUG/GUG-2up.pdf">.pdf + 2up (for printing)</a>)</td> + </tr> +</table> + +\endhtmlonly + + + * See also: \ref externaldocs (from LCGCMT version $(LCGCMTVERS)) + */ + +/** \page externaldocs Related external libraries + * \htmlonly <h3><center>(from LCGCMT version $(LCGCMTVERS))</h3></center> + <UL> + <LI> <a href="http://lcgapp.cern.ch/doxygen/SEAL/$(SEALVERS)/doxygen/html/" target="_blank">$(SEALVERS)</A> (foundation) + <UL> + <LI> <a href="http://www.boost.org/libs/libraries.htm" target="_blank">Boost $(BoostVERS)</A> + <LI> <a href="http://spi.cern.ch/extsoft/packages.php?pkg=uuid" target="_blank">uuid $(uuidVERS)</A> + <LI> <a href="http://spi.cern.ch/extsoft/packages.php?pkg=pcre" target="_blank">pcre $(PCREVERS)</A> + <LI> <a href="http://spi.cern.ch/extsoft/packages.php?pkg=gccxml" target="_blank">GCC-XML $(GCCXMLVERS)</A> + </UL> + <UL> + <LI> <a href="http://aida.freehep.org/doc/v$(AIDAVERS)/api/index.html" target="_blank">AIDA $(AIDAVERS)</A> (histogramming) + </UL> + <LI> <a href="http://lcgapp.cern.ch/doxygen/POOL/$(POOLVERS)/doxygen/html/" target="_blank">$(POOLVERS)</A> (persistency) + <UL> + <LI> <a href="http://lcgapp.cern.ch/doxygen/ROOT/$(ROOTVERS)/doxygen/html/" target="_blank">ROOT $(ROOTVERS)</A> (persistency) + <LI> <a href="http://xml.apache.org/xerces-c/apiDocs/index.html" target="_blank">Xerces-C $(XercesCVERS)</A> + </UL> + <LI> <a href="http://www.gnu.org/software/gsl/manual/gsl-ref_toc.html" target="_blank">GNU Scientific Library (GSL) $(GSLVERS)</A> + <LI> <a href="http://www.python.org/doc/$(PythonVERS)/" target="_blank">Python $(PythonVERS)</A> (scripting and interactivity) +</UL> +See also: + <a href="http://gcc.gnu.org/onlinedocs/libstdc++/libstdc++-html-USERS-3.4/index.html" target="_blank">Standard Template Library</A> +\endhtmlonly + */ diff --git a/GaudiRelease/doc/Doxyheader.html b/GaudiRelease/doc/Doxyheader.html new file mode 100644 index 000000000..d8d17a881 --- /dev/null +++ b/GaudiRelease/doc/Doxyheader.html @@ -0,0 +1,22 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> +<html><head><meta name="robots" content="noindex"> +<meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> +<link href="doxygen.css" rel="stylesheet" type="text/css"> +<link href="tabs.css" rel="stylesheet" type="text/css"> +<title>$title</title> +</head><body> +<table border="0" width="100%" height="71" bgcolor="#99FF99"> + <tr> + <td width="10%" rowspan="2" height="67"><a href="http://cern.ch/gaudi"><img border="0" src="http://cern.ch/gaudi/images/gaudiSF.gif" width="75" height="103"></a></td> + <td width="90%" height="40"> +<h1> +<center> $projectname</h1> +</center> + </td> + </tr> + <tr> + <td width="90%" height="23"> +<p align="right">Generated: $date + </td> + </tr> +</table> diff --git a/GaudiRelease/doc/dottool.cfg b/GaudiRelease/doc/dottool.cfg new file mode 100644 index 000000000..e663125ac --- /dev/null +++ b/GaudiRelease/doc/dottool.cfg @@ -0,0 +1,13 @@ +# append the commands to use dot tool +HAVE_DOT = YES +DOT_PATH = +COLLABORATION_GRAPH = YES +CLASS_GRAPH = YES +GRAPHICAL_HIERARCHY = YES +INCLUDE_GRAPH = YES +INCLUDED_BY_GRAPH = YES + +# append the commands to document also private and static members +EXTRACT_PRIVATE = YES +EXTRACT_STATIC = YES +EXTRACT_LOCAL_CLASSES = YES diff --git a/GaudiRelease/doc/release.notes.html b/GaudiRelease/doc/release.notes.html new file mode 100644 index 000000000..f1031ad95 --- /dev/null +++ b/GaudiRelease/doc/release.notes.html @@ -0,0 +1,4326 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html> +<head> + <title>Gaudi Release Notes</title> +</head> +<body> +<pre>Package: GaudiRelease<br>Package Coordinator: Pere Mato, Charles Leggett<br>Purpose: Gaudi common set of packages<br><br></pre> +<h2><a name="v19r6">Gaudi v19r6</a> (2007-11-23)</h2> +<h3>Externals version: <a + href="http://spi.cern.ch/cgi-bin/spi/viewConfig.py?platform=Unix&projVers=LCG_53f">LCGCMT_53f</a></h3> +<h3>Packages Changes</h3> +<ul> +<li>GaudiPolicy (v7r2): +<ul> + <li>Added patterns and actions to automatically run tests based on QMTest. See + relese notes in GaudiPolicy for details. + (<span style="color: rgb(115, 115, 115);">Marco Clemencic</span>)</li> + <li>Many fixes and improvements to install.py and replaced the + cmt_installarea_command. + (<span style="color: rgb(115, 115, 115);">Marco Clemencic, Hubert Degaudenzi & David Quarrie</span>)</li> + <li>Added a pattern to disable the build of a package on specific platforms + from the package itself, to avoid conditional uses in GaudiRelease. + (<span style="color: rgb(115, 115, 115);">Marco Clemencic</span>)</li> +</ul> +<li>GaudiKernel (v23r2): +<ul> + <li>Added a new incident type (AbortEvent) that force the (Minimal)EventLoopMgr + to skips all the top algorithms still to be executed for the current event. + (<span style="color: rgb(115, 115, 115);">Marco Clemencic</span>)</li> + <li>Many improvements to python job options and configurables. See release + notes of GaudiKernel for details. + (<span style="color: rgb(115, 115, 115);">Sebastien Binet, Marco Clemencic & Pere Mato</span>)</li> + <li>Patch <a href="https://savannah.cern.ch/patch/index.php?1523">#1523</a> (<span style="color: rgb(115, 115, 115);">Vanya Belyaev</span>)<br> + Add possibility to have properties of the types <tt>std::map<int,int></tt> and + <tt>std::vector<std::pair<int,int> ></tt>.</li> + <li>Task <a href="https://savannah.cern.ch/task/index.php?5807">#5807</a> (<span style="color: rgb(115, 115, 115);">Marco Clemencic</span>)<br> + Added the header GaudiKernel/SerializeSTL.h to provide implementations of + operator<< for some common STL containers and GaudiUtils::*Map. + (<span style="color: rgb(115, 115, 115);">Marco Clemencic</span>)</li> + <li>Minor change to the IUpdateManagerSvc interface. + (<span style="color: rgb(115, 115, 115);">Marco Clemencic</span>)</li> + <li>Patch <a href="https://savannah.cern.ch/patch/index.php?1416">#1416</a> (<span style="color: rgb(115, 115, 115);">Paolo Calafiura</span>)<br> + Improvements to DirSearchPath.</li> +</ul> +</li> +<li>GaudiSvc (v16r2): +<ul> + <li>Patch <a href="https://savannah.cern.ch/patch/index.php?1533">#1533</a> (<span style="color: rgb(115, 115, 115);">Charles Leggett</span>)<br> + Modified THistSvc to check if the file associated with a TTree has changed + and update the relevant structures. This happens when a ROOT file grows above + the maximum allowed size (a parameter in ROOT).</li> + <li>Removed the message "ApplicationMgr INFO Successfully loaded modules :" + if the list of loaded modules is empty. (<span style="color: rgb(115, 115, 115);">Hubert Degaudenzi</span>)</li> + <li>Patch <a href="https://savannah.cern.ch/patch/index.php?1469">#1469</a> (<span style="color: rgb(115, 115, 115);">Markus Frank</span>) + improve method PersistencySvc::getService(const std::string& service_type, IConversionSvc*& refpSvc) + to also check attached services and services known by name.</li> +</ul> +</li> +<li>GaudiGridSvc (v1r4): +<ul> + <li>Disabled the build of the package on the unsupported platforms. + (<span style="color: rgb(115, 115, 115);">Marco Clemencic</span>)</li> +</ul> +</li> +<li>GaudiPoolDb (v2r15): +<ul> + <li>Disabled the build of the tests (re-enable it with the tag <tt>GaudiPoolDbTests</tt>). + (<span style="color: rgb(115, 115, 115);">Marco Clemencic</span>)</li> +</ul> +</li> +<li>HbookCnv (v14r12): +<ul> + <li>Disabled the build of the package on the unsupported platforms. + (<span style="color: rgb(115, 115, 115);">Marco Clemencic</span>)</li> +</ul> +</li> +<li>GaudiUtils (v1r3): +<ul> + <li>Patches <a href="https://savannah.cern.ch/patch/index.php?1492">#1492</a>, + <a href="https://savannah.cern.ch/patch/index.php?1493">#1493</a>, + <a href="https://savannah.cern.ch/patch/index.php?1494">#1494</a> + (<span style="color: rgb(115, 115, 115);">Markus Frank</span>)<br> + Add components library containing file catalog and I/O data manager. + Used by DAQ/MDF and GaudiPoolDb.</li> +</ul> +</li> +<li>GaudiAlg (v10r2): +<ul> + <li>Patch <a href="https://savannah.cern.ch/patch/index.php?1418">#1418</a> (<span style="color: rgb(115, 115, 115);">Chris Jones</span>)<br> + Minor fix to <tt>GaudiHistos<PBASE>::monitorHisto</tt> to use the full TES path + instead of just the base histogram ID when registering the histogram to + the monitoring service. I.e. When an algorithm called 'MyAlg' creates a + histogram with ID 'MyID' register this as 'MyAlg/MyID' instead of just + 'MyID', in order to prevent conflicts in the case some another algorithm + also creates a histogram with base ID MyID.</li> +</ul> +</li> +<li>GaudiGSL (v6r7): +<ul> + <li>Comments clean-up. (<span style="color: rgb(115, 115, 115);">Hubert Degaudenzi</span>)</li> +</ul> +</li> +<li>GaudiPython (v8r17): +<ul> + <li>Changed the structure of the package. + (<a href="https://twiki.cern.ch/twiki/bin/viewfile/LHCb/GaudiPython?rev=1;filename=GaudiPython_20071017.pdf">description</a>) + (<span style="color: rgb(115, 115, 115);">Pere Mato</span>)</li> + <li>Removed dependency on Gaudi.Configuration. (<span style="color: rgb(115, 115, 115);">Marco Clemencic</span>)</li> +</ul> +</li> +<li>GaudiAud (v8r4): +<ul> + <li>Bug <a href="https://savannah.cern.ch/bug/index.php?28570">#28570</a> (<span style="color: rgb(115, 115, 115);">Charles Leggett</span>)<br> + Modified AlgContextAuditor to avoid that it passes a null pointer to + AlgContextSvc. It happens if the AuditorSvc is auditing objects that inherit + from INamedInterface, but not from IAlgorithm (e.g. services).</li> +</ul> +</li> +<li>GaudiSys (v19r6):</li> +<ul> + <li>Added dependency on GaudiPython, which is needed for gaudirun.py. + (<span style="color: rgb(115, 115, 115);">Marco Clemencic</span>)</li> +<ul> +<li>Gaudi (v19r6): +<ul> + <li>Added the function Gaudi.Configuration.configurationDict to produce the + dictionary of configurations. + (<span style="color: rgb(115, 115, 115);">Marco Clemencic</span>)</li> + <li>Many improvements to gaudirun.py. + (<span style="color: rgb(115, 115, 115);">Marco Clemencic & Pere Mato</span>)</li> +</ul> +</li> +<li>GaudiExamples (v19r6): +<ul> + <li>Various minor improvements and fixes. + (<span style="color: rgb(115, 115, 115);">Marco Clemencic & Pere Mato</span>)</li> +</ul> +</ul> + +<h2><a name="v19r5">Gaudi v19r5</a> (2007-10-03)</h2> +<h3>Externals version: <a + href="http://spi.cern.ch/cgi-bin/spi/viewConfig.py?platform=Unix&projVers=LCG_53c">LCGCMT_53c</a></h3> +<h3>Packages Changes</h3> +<ul> + <li>Gaudi (v19r5): <br> + </li> + <ul> + <li>new package that contains only the application part of the +framework (Gaudi.exe)<br> + </li> + </ul> + <li>GaudiAlg (v10r1):</li> + <ul> + <li>Added a few wrapper functions to remove unwanted explicit +dependency on AIDA (was breaking LHCb compilation) (<span + style="color: rgb(115, 115, 115);">Vanya Belyaev</span>). <br> + </li> + <li>patch #1345 (TupleObj) (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>): <br> + </li> + <ul> + <li>change the default type for "integer" data-fields from "long" +to "int".</li> + <li>issue the warning messages for truncated fields: <br> + - long <br> + - unsigned +long <br> + - unsigned int <br> + - double</li> + <li>add a shortcut for column ( IOpaqueAddress* ) <br> + </li> + <li>Changed names from "Long" to "Int" (<span + style="color: rgb(115, 115, 115);">Marco Clemencic</span>).</li> + </ul> + <li>patch #1375 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>). Allow configuration of Histogram1D +from job options. Extended "plot" and "book" methods to use "histogram +properties" without unpacking them into title/low/high/bins.</li> + <li>patch #1356 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>) GaudiAlgorithm.</li> + <ul> + <li>provide the accessors to IAlgContextSvc service</li> + <li>provide new property <span style="font-family: monospace;">"RegisterForContextService"</span> +to enforce +the algorithm registration in Algorithm Context Service independently +on the external configuration of Auditor Service and AlgContextAuditor +(the default value is true)</li> + <li>provide the functionality to select "interesting" algorithms +from the algorithm context queues (algorithm selectors)</li> + <li>implement few simple specializations of selectors for +accessors</li> + </ul> + <li>patch #1273 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>):<br> + </li> + <ul> + <li>Added automatic conversion of <span + style="font-family: monospace;">GaudiAlg::ID</span> to std:string.</li> + </ul> + <ul> + <li>Added properties to define histograms print out format in +GaudiHistos.</li> + </ul> + <li>patch #1231 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>):<br> + </li> + </ul> + <ul> + <ul> + <li>Remove duplicated lines for printout of counters.</li> + <li>Added new properties to format the counters to +GaudiCommon<TYPE>:</li> + <ul> + <li><span style="font-family: monospace;">"StatTableHeader"</span> +: (string) the header line for printout +of the table</li> + <li><span style="font-family: monospace;">"RegularRowFormat"</span> +: (string) the format of the row for the +regular counters</li> + <li><span style="font-family: monospace;">"EfficiencyRowFormat"</span> +: (string) the format of the row for +the "binomial efficiency counters"</li> + <li><span style="font-family: monospace;">"UseEfficiencyRowFormat":</span> +(bool) the flag to allow the +special formatting of "binomial efficiency" counters<br> + </li> + </ul> + </ul> + </ul> +</ul> +<ul> + <li>GaudiExamples (v19r5):</li> + <ul> + <li>patch #1375 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>). Allow configuration of Histogram1D +from job options (src/Histograms/HistoProps.cpp, +options/Histograms.opts)</li> + <li>patch #1273 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>): Added print out of "skewness" and +"kurtosis" to Aida2Root example.</li> + <li>patch #1265 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>). TupleEx4.py: new example to +illustrate the usage of TupleUtils module.</li> + <li>patch #1263 (<span style="color: rgb(115, 115, 115);">Vany +Belyaev</span>): New python example which +illustrates the usage of various 1D&2D profile histograms in python +(HistoEx2.py).</li> + <li>patch #1231 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>): New example to illustrate the +usage of "Stat"-part of IChronoStatSvc.</li> + <li>patch #1178 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>). added example CounterSvcAlg.</li> + </ul> + <li>GaudiKernel (v23r1):</li> + <ul> + <li>Patch #1345 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>). Minor modifications to improve +Tuples::TupleObj (GaudiAlg package) in GaudiKernel/NTuple.h</li> + <ul> + <li>substitute the explicit specialization for NTuple::Range with +the regular calls of <span style="font-family: monospace;">std::numeric_limits<T>::min()/max()</span></li> + </ul> + <ul> + <li>disable <span style="font-family: monospace;">"#ifndef +ALLOW_ALL_TYPES"</span></li> + </ul> + <li>patch #1375 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>). Allow configuration of Histogram1D +from job options.<br> + </li> + <ul> + <li>New class Gaudi::Histo1DDef for histogram +description/definition.</li> + </ul> + <ul> + <li>Implementation of parsing for new histogram properties. +(Sascha Mazurov)</li> + </ul> + <li>Patch #1357 (<span style="color: rgb(115, 115, 115);">Vany +Belyaev</span>). Minor improvements to + <span style="font-family: monospace;">Gaudi::Utils::setProperty():</span></li> + <ul> + <li>allow to set the documentation of a property</li> + </ul> + <ul> + <li>allow to set a property from a PopertyType</li> + </ul> + <li>patch #1247. (partial) <span + style="color: rgb(115, 115, 115);">Sebastien Binet</span> (& <span + style="color: rgb(115, 115, 115);">Marco +Clemencic</span>) avoid duplication of symbols in files generated by +genconf. +(Warning: Win32 implementation missing)</li> + <li>Fixed bug #29806 (<span style="color: rgb(115, 115, 115);">Markus +Frank</span>). Wrong call to setDataProvider.</li> + <li style="color: rgb(115, 115, 115);">Hubert Degaudenzi & +Marco Clemencic</li> + <ul> + <li>factored out the main application part to the Gaudi package.</li> + <li> added an option to genconf that adds a fallback module +for the location of Configurables and ConfigurableDb</li> + <li>Modified the genconfig CMT pattern for the previous change to +have AthenaCommon by default and if it doesn't exist fall back to +GaudiKernel. This is a temporary fix until both approaches are merged.</li> + </ul> + <li>Patch #1260 (<span style="color: rgb(115, 115, 115);">Hubert +Degaudenzi & Paolo Calafiura</span>) .moved +the MinimalEventLoopMgr from GaudiSvc to GaudiKernel. The factory for +this service is still in GaudiSvc</li> + <li>patch #1231 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>):</li> + <ul> + <li>Splitted IChronoStatSvc.h into IChronoSvc and IStatSvc.</li> + </ul> + <ul> + <li>Remove ICounterSvc::CountObject and replaced it with Stat.</li> + </ul> + <ul> + <li>Added few free functions to format StatEntity objects as +table rows.</li> + </ul> + <li>Added the file cbrt.h, which provides an implementation of <span + style="font-family: monospace;">cbrt</span> +(cubic root) to all the platforms (it is a built-in function of gcc) +(<span style="color: rgb(115, 115, 115);">Marco Clemencic</span>).</li> + <li>patch #1246 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>). Introduced 2 new classes:</li> + <ul> + <li><span style="font-family: monospace;">Gaudi::Guards::ExceptionGuard.</span> +executes a functor in a +"standard" try-catch block.</li> + <li><span style="font-family: monospace;">Gaudi::Guards::AuditorGuard.</span> +executes a function of an object +when the instance is created and a second one when destroyed, allowing +automatic "clean-up" (in case of early exit).</li> + </ul> + <li>patch #1253 (<span style="color: rgb(115, 115, 115);">Charles +Leggett</span>). This patch fixes Algorithm.cpp, +AlgTool.cpp and Service.cpp such that there is a consistent use of the +auditorSvc-after[whatever] in the catch loops when an exception is +thrown.</li> + <li>patch #1250 (<span style="color: rgb(115, 115, 115);">Pere Mato</span>): +Removed the default constructor of +Service because it is causing a memory leak in Reflex.</li> + <li>patch #1227 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>). Added the functions + <span style="font-family: monospace;">"Gaudi::Utils::setProperty(IInterface*,...)",</span> +simpler counterparts of +"Gaudi::Utils::setProperty(IProperty*,...)".</li> + <li>patch #1226 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>):</li> + <ul> + <li style="font-family: monospace;">SmartIFBase<TYPE>:</li> + <ul> + <li>explicitely disable copy constructor and assignement</li> + </ul> + <ul> + <li>add "checking operator", operator!()</li> + </ul> + <li><span style="font-family: monospace;">SmartIF<TYPE></span> +and <span style="font-family: monospace;">SmartIF<IInterface>:</span></li> + <ul> + <li>add "const" into copy constructor</li> + <li>add the constructor from underlying pointer</li> + <li>add "const" into standard assignment</li> + <li>add "const" into template assignment remove line duplicates +between standard assignement and assignment from the regular pointer</li> + </ul> + </ul> + <ul> + <ul> + <li>fix typo in return type of assignment from the base</li> + </ul> + </ul> + <ul> + <ul> + <li>add "checking operator", operator!()</li> + </ul> + </ul> + <li>patch #1182 (<span style="color: rgb(115, 115, 115);">Sebastien +Binet</span>): Improved precision for timing +measurements in ProcessDescriptor<br> + (on linux). The patch allow to use the function +getrusage when possible to get a microsecond precision instead of +millisecond. When getrusage cannot be used, the timing is measured in +the old way. <br> + </li> + <li>added the possibility to use the universal time for the +messages. There is a new <span style="font-family: monospace;">"%u"</span> +format for this. It replaces the usual + <span style="font-family: monospace;">"%t"</span> in the +MessageSvc.Format (<span style="color: rgb(115, 115, 115);">Hubert +Degaudenzi</span>).</li> + <li>patch #1178 (<span style="color: rgb(115, 115, 115);">Vany +Belyaev</span>). The patch substitute the internal +counters, used for (I)CounterSvc by generic counters of type StatEntity:</li> + <ul> + <li>This allow to reuse the useful functionality of StatEntity +class.</li> + <li>In addition it will allow an easy publishing and integration +of counters with monitoring tasks.</li> + <li>Also it adds more functionality for grouping of counters, in +particular the extraction of the whole group of counters (required by +Matt Needham)</li> + <li>The printout of counters is now coherent with printout of +generic counters through <span style="font-family: monospace;">GaudiCommon<T>.</span><br> + </li> + </ul> + </ul> +</ul> +<ul> + <li>GaudiPolicy (v7r1):</li> + <ul> + <li>added global macro <span style="font-family: monospace;"><project>_home</span> +(<span style="color: rgb(115, 115, 115);">Hubert Degaudenzi</span>).</li> + <li>Introduced 2 new make fragments (install_python and +install_scripts) based on the install.py script for the python modules +and script installation (<span style="color: rgb(115, 115, 115);">Hubert +Degaudenzi</span>).</li> + <li>fixed the merge_rootmap and merge_genConf fragments to avoid +the double building of the target in case of parallel build (<span + style="color: rgb(115, 115, 115);">Hubert +Degaudenzi</span>).</li> + <li>patch #1249 (Sebastien Binet). Fix to avoid <span + style="font-family: monospace;">"use"</span> cycle with +GaudiSvc.</li> + <li>added <span style="font-family: monospace;">"use Python * +LCG_Interfaces -no_auto_imports"</span> for +compilation on win32. the "win32con" module is needed with the +locker.py script (which is used for rootmap building) (<span + style="color: rgb(115, 115, 115);">Hubert +Degaudenzi</span>).</li> + <li>Added a python script to handle the installation of files in a +platform-independent way and to keep track of the installed files so +that if many packages add files to the same directory, a <span + style="font-family: monospace;">"make clean"</span> +in a package removes only the files that the package installed (use +cases: python modules, LHCb event model classes) (<span + style="color: rgb(115, 115, 115);">Macro Clemencic</span>).</li> + <li>added an option to install.py to be able to select a +destination name different for the source one (<span + style="color: rgb(115, 115, 115);">Marco Clemencic</span>).</li> + </ul> + <li>GaudiPython (v8r16):</li> + <ul> + <li>patch #1158 (<span style="color: rgb(115, 115, 115);">Sebastien +Binet</span>). (slightly modified by Marco +Clemencic): Minor changes to GaudiHandles.py to improve memory +footprint <br> + </li> + <li>patch 1265 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>):</li> + <ul> + <li>Add new class GaudiPython::TupleToolDecorator for +"decorations" of ITupleTool interface.</li> + </ul> + <ul> + <li>Change the default CLID for event tag collections from +RowWiseTuple to ColumnWiseTuple. This change has been done in C++ long +time ago, but have not been propagated to python.</li> + </ul> + <ul> + <li>Add dictionaries for ITupleTool and IHistoTool.</li> + </ul> + <ul> + <li>New module TupleUtils.py: allow manipulation of tuples from +outside algorithms or tools.</li> + </ul> + <li>patch 1263 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>).</li> + <ul> + <li>Allow "smart and friendly" manipulation of + <span style="font-family: monospace;">AIDA::IProfile[1D,2D]</span> +objects from Python.</li> + <li>Improvements in iProperty: raise AttributeError in + <span style="font-family: monospace;">__getattr__</span> and <span + style="font-family: monospace;">__setattr__</span> if the property +does not exist (instead of +the internal C++ exception).</li> + <li>Added module HistoUtils containing "script-friendly" +functions to manipulate histograms. <br> + </li> + </ul> + </ul> + <li>GaudiSiteSvc (removed): should be supersided by GaudiGridSvc and +the DataStreamTool.</li> + <li>GaudiSvc (v16r1):</li> + <ul> + <li>Fix to allow any of the following commands in the job options +(<span style="color: rgb(115, 115, 115);">Sascha Mazurov</span>): <br> + <span style="font-family: monospace;"> #printOptions +full</span><br style="font-family: monospace;"> + <span style="font-family: monospace;"> #printOptions +FULL</span><br style="font-family: monospace;"> + <span style="font-family: monospace;"> #printOptions</span></li> + <li>patch #1213 (<span style="color: rgb(115, 115, 115);">Charles +Leggett</span>). Finalize HistorySvc before any +other service.</li> + <li>patch #1392 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev & Sascha Mazurov</span>). Allow "::" in +algorithm and tool names to configure them, e.g.:<br> + <span style="font-family: monospace;"> +MyNamespace::MyAlg.MyProperty = 123;</span></li> + <li>patch #1375 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>). Allow configuration of Histogram1D +from job options.</li> + <ul> + <li>Allow tuple-like quantities to appear as +right-hand-expressions in job options. (<span + style="color: rgb(115, 115, 115);">Sascha Mazurov</span>)</li> + </ul> + <ul> + <li>Allow the "on-the-fly" redefinition of the histogram +properties via options of the HistogramSvc.</li> + </ul> + <li>Patch #1358 (<span style="color: rgb(115, 115, 115);">Charles +Leggett</span>). Fixed a bug in THistSvc. In the +initialization clause of a "for" loop, the iterator was set using "<span + style="font-family: monospace;">==</span>" instead of "<span + style="font-family: monospace;">=</span>". <br> + </li> + <li>Patch #1359. (fixes bug #28603) (<span + style="color: rgb(115, 115, 115);">Vanya Belyaev</span>): Added 2 +warnings in case an option file is included twice (one at the parser +level and one at the JobOptionSvc level). Note: The included file is +processed only the first time it is included.</li> + <li>Patch #1346 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>): Add the possibility to print all +properties of application manager. The properties are printed in +ApplicationMgr::configure() <br> + if the (new) property "PropertiesPrint" is set +to true (default is false).</li> + <li>patch #1273 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>): Avoid print out of the table +header for empty stats (ChronoStatSvc).</li> + <li>patch #1252 (<span style="color: rgb(115, 115, 115);">Charles +Leggett</span>):</li> + <ul> + <li>Do not dereference the TFile pointer in finalize if it is a +temporary file (<span style="font-family: monospace;">== NULL</span>).</li> + </ul> + <ul> + <li>Add a job option to turn on/off printing of all TObjects in +finalize. (off by default)</li> + </ul> + <ul> + <li>Convert all double slashes ("//") to single slashes (so that +the path <span style="font-family: monospace;">"A/B/C"</span> matches <span + style="font-family: monospace;">"A//B/C"</span>) to avoid problems in +case of typos +in job options. <br> + </li> + </ul> + <li>patch #1234 (<span style="color: rgb(115, 115, 115);">Charles +Leggett</span>). Modified the way the ToolSvc +uses the HistorySvc. ToolSvc will try to get the HistorySvc when +creating a tool and cache the pointer if it is available.</li> + <li>Patch #1243 (<span style="color: rgb(115, 115, 115);">Chris +Jones</span>): Equipe ApplicationMgr with a new job +option ReflexPluginDebugLevel which is used to set the debug level of + <span style="font-family: monospace;">ROOT::Reflex::PluginService::SetDebug(level).</span> +Useful to aid in the +debugging of library loading problems.</li> + <li>task #5157 (Make MessageSvc thread-safe) (<span + style="color: rgb(115, 115, 115);">Marco Clemencic</span>): +Added 3 boost mutexes to MessageSvc to protect few internal data +members from possible concurrent access.</li> + <li>patch #1178 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>). <br> + </li> + <ul> + <li>The proposed patch substitute the internal counters, used for +(I)CounterSvc by generic counters of type StatEntity.</li> + <li>This allow to reuse the useful functionality of StatEntity +class.i n addition it will allow an easy publishing and integration of +counters with monitoring tasks.</li> + <li>Also it adds more functionality for grouping of counters, in +particular the extraction of the whole group of counters (required by +Matt Needham)</li> + <li>The printout of counters is now coherent with printout of +generic counters through <span style="font-family: monospace;">GaudiCommon<T>.</span><br> + </li> + </ul> + </ul> + <li>GaudiUtils (v1r2):</li> + <ul> + <li>Patch #1266 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>) GaudiUtils/HistoStats.h, +src/Lib/HistoStats.cpp: new files with simple class + <span style="font-family: monospace;">Gaudi::Utils::HistoStats</span> +for evaluation of few basic statistical +quantities for <span style="font-family: monospace;">AIDA::histograms</span>. +The moments (and therefore all other +quantities) are calculated on +bin-by-bin"-basis, since the corresponding cumulants needed for +"event-by-event"-calculations are not available: <br> + </li> + <ul> + <li>moments <br> + </li> + <li>central moments <br> + </li> + <li>skewness</li> + <li>kurtosis <br> + </li> + </ul> + <li>patch #1273 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>). added new functions to +GaudiUtils/HistoStats.h:</li> + <ul> + <li>meanErr</li> + </ul> + <ul> + <li>rmsErr<br> + </li> + </ul> + <ul> + <li>kurtosisErr <br> + </li> + </ul> + <ul> + <li>skewnessErr <br> + </li> + </ul> + <ul> + <li>momentErr</li> + </ul> + <ul> + <li>centralMomenErr</li> + </ul> + </ul> +</ul> +<h2><a name="v19r4">Gaudi v19r4</a> (2007-06-07)</h2> +<h3>Externals version: <a + href="http://spi.cern.ch/cgi-bin/spi/viewConfig.py?platform=Unix&projVers=LCG_52a">LCGCMT_52a</a></h3> +<h3>Packages Changes</h3> +<ul> + <li>GaudiAlg (v10r0):</li> + <ul> + <li>patch #1161 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>). Improvements and clean-up in StatEntity:</li> + <ul> + <li>Removed "weight"-related functions and methods (unused)</li> + <li>Added binomial error calculation for efficiency-like counters</li> + <li>Improved print-out format</li> + <li>Added methods to make StatEntity mode DIM friendly</li> + </ul> + <li>patch #1160 (<span style="color: rgb(115, 115, 115);">Marco +Clemencic</span>). Changed from StatusCode to void the returned value of</li> + <ul> + <li style="font-family: monospace;">Algorithm::setExecuted()</li> + <li style="font-family: monospace;">Algorithm::resetExecuted()</li> + <li style="font-family: monospace;">Algorithm::setFilterPassed()</li> + </ul> + <li>Patch #1134 (<span style="color: rgb(115, 115, 115);">Chris +Jones</span>). Update the way GaudiCommon handles get and put methods +to respect the settings of the Root<span style="color: rgb(255, 0, 0);">On</span>TES +(now renamed Root<span style="color: rgb(255, 0, 0);">In</span>TES, see +below)</li> + </ul> + <ul> + <ul> + <li>Trivially rename the RootOnTES option RootInTES, to force +code +using this to no longer compile. Fixes will be trival, but this is done +to make sure all cases where this is used are found and properly +assessed to make sure they are updated appropriately, to caught a few +special cases.</li> + <li>All get and put methods now interally prepend the <span + style="font-family: monospace;">rootInTES()</span> to their data +locations as appropriate. A new argument is added to the get and put +methods to optional disable this new behaviour.</li> + </ul> + <li> Patch #1136 (<span style="color: rgb(115, 115, 115);">Chris +Jones</span>):</li> + <ul> + <li>Update to GaudiHistos to automatically register histograms to +the monitoring service via calls <span + style="font-family: monospace;">declareInfo(...)</span> when they are +booked via the <span style="font-family: monospace;">plotXD(...)</span> +or <span style="font-family: monospace;">bookXD(...)</span> methods.</li> + <li>New job option 'MonitorHistograms' to turn on/off the +histogram registration as required (default is true)</li> + </ul> + <li>Patch #1127 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>):</li> + <ul> + <li>Event tag collections (aka "N-tuples with POOL persistency") +allows to write as N-tuples items almost all objects, known for +POOL/Reflex. However this nice fucntionality was not available from +"friendly" N-tuples interface, used in GaudiTupleAlg and +GaudiTupleTool. The proposed patch solved this problem. Now for tuples +with POOL persistency one can store ANY objects, known for +POOL/Reflex. It is done through new (templated) method <span + style="font-family: monospace;">Tuples::TupleObj::put.</span></li> + <li>IMPORTANT: Previously the method Tuples::TupleObj::write have +been disabled form event tag collections. (The actual writing have been +postponed for OutputStream phase). From now mehtod is reenabled again. +One CAN use it.. The old way (with OutputStream) is still possible but, +of course, deprecated.</li> + <li>The end-of-the-job printout of all known Event Tag Collection +is extended with the printout of the full map of the field names and +their actual types.</li> + <li>The return codes from various methods of class +Tuples::TupleObj are modified a bit to use the predefined enums instead +of the generic StatusCode::FAILURE</li> + <li>The default CLID for event tag colelctions is set to be +CLID_ColumnWiseTuple</li> + </ul> + <li>patch #1135 (<span style="color: rgb(115, 115, 115);">Chris +Jones</span>). A minor little fix for GaudiAlg, to correctly define the + <span style="font-family: monospace;"><</span> operator for +the <span style="font-family: monospace;">GaudiAlg::ID</span> class +(was actually doing > !!)<br> + </li> + </ul> + <li>GaudiAud (v8r2):</li> + <ul> + <li>patch #1171 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>). The enhancement of existing Algorithm Context Service +is the primary goal of the proposed patch. The existing AlgContextSvc +is not safe with respect to e.g. Data-On-Demand service or to +operations with subalgorithms. The patched service essentially +implements the queue of executing algorithms, thus the problems are +eliminiated. In addition the enriched interface provides the access to +the whole queue of executing algorithms.</li> + <li>patch #1150 (<span style="color: rgb(115, 115, 115);">Charles +Leggett</span>). If the AlgErrAuditor detects that an +illegal +StatusCode/MessageStream combination has been issued by an Algorithm, +an exception or an <span style="font-family: monospace;">abort()</span> +can be thrown, configured by a jobOpt. Also prints out summaries at the +end of the job of illegal combination.</li> + </ul> + <li>GaudiPolicy (v7r0):</li> + <ul> + <li>Fixed a problem with merge_files.py when the directory of the +destination file does not exist (<span + style="color: rgb(115, 115, 115);">Marco Clemencic</span>).</li> + <li>Applied an committed a slightly modified version of the latest +version of patch #1159 (file #4075), to allow the concurrent merging of +files on NFS (<span style="color: rgb(115, 115, 115);">Marco Clemencic +& Sebastien Binet</span>).</li> + <li>patch 1159 (<span style="color: rgb(115, 115, 115);">Pere Mato</span>): +merging files during build procedure with some additional changes:</li> + <ul> + <li>Reverted the dependency to GaudiSvc. This is needed for +genconf to work specially when building the Gaudi project itself. The +only possibility to remove this dependency is by providing a minimal +application manager to support the instantiation of the components for +which you need to dump the properties and they default values.</li> + <li>Moved the stampfiles to the destination area (i.e. the +InstallArea). In this way if the install area gets deleted the merged +file is reconstructed again.</li> + <li>Renamed the fragment merge_genmap to merge_rootmap to +generalize it and use it also for merging the rootmaps from reflex +dictionaries.</li> + <li>Improved the rules in the makefile fragments and corrected +some error messages.</li> + </ul> + <li>Fixed a problem with the pattern "install_more_includes" which +did not add the correct include dirs if the project was not using the +install area (<span style="color: rgb(115, 115, 115);">Marco Clemencic</span>).</li> + <li>fix to bug #24973 (<span style="color: rgb(115, 115, 115);">Mattias +Ellert</span>) : Two pattern in GaudiPolicy uses private ... +public +instead of private ... end_private. This causes some private +definitions the leak into public. <span style="font-weight: bold;">Many +client package could be affected</span>.</li> + </ul> + <li>GaudiKernel (v23r0):</li> + <ul> + <li>Extended the IIncidentSvc interface to make it possible to +register a listener for only one occurrence of the requested event (see +bug #25552) (<span style="color: rgb(115, 115, 115);">Marco Clemencic</span>).</li> + <li>patch #1171 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>). The enhancement of existing Algorithm Context Service +is the primary goal of the proposed patch. The existing AlgContextSvc +is not safe with respect to e.g. Data-On-Demand service or to +operations with subalgorithms. The patched service essentially +implements the queue of executing algorithms, thus the problems are +eliminiated. In addition the enriched interface provides the access to +the whole queue of executing algorithms.</li> + <li>patch #1163 (<span style="color: rgb(115, 115, 115);">Vanay +Belyaev</span>). Patch to allow the following syntax (The setting of +properties through strings is still possible): + <br> + </li> + </ul> +</ul> +<div style="margin-left: 120px; font-family: monospace;">setProperty ( +"OutputLevel" , "4" ) ;<br> +setProperty ( "OutputLevel" , 4 ) ; //new<br> +setProperty ( "Enable" , "False" ) ;<br> +setProperty ( "Enable" , false ) ; //new<br> +setProperty ( "ErrorMax" , "10" ) ;<br> +setProperty ( "ErrorMax" , 10 ) ; //new<br> +std::vector<double> data = ... ; //new<br> +setProperty( "Data" , data ) ; //new<br> +std::map<std::string,double> cuts = ... ; //new<br> +setProperty( "Cuts" , cuts ) ; //new<br> +std::map<std::string,std::string> dict = ... ; //new<br> +setProperty( "Dictionary" , dict ) ; //new</div> +<ul> + <ul> + <li>patch #1161 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>). Improvements and clean-up in StatEntity:</li> + <ul> + <li>Removed "weight"-related functions and methods (unused)</li> + <li>Added binomial error calculation for efficiency-like counters</li> + <li>Improved print-out format</li> + <li>Added methods to make StatEntity mode DIM friendly</li> + </ul> + <li>patch #1160 (<span style="color: rgb(115, 115, 115);">Marco +Clemencic</span>). Changed the returned value from StatusCode to void of</li> + <ul style="font-family: monospace;"> + <li>Algorithm::setExecuted()</li> + <li>Algorithm::resetExecuted()</li> + <li>Algorithm::setFilterPassed()</li> + </ul> + <li>patch #1157 (<span style="color: rgb(115, 115, 115);">Sebastien +Binet</span>). Here is a simple patch to harmonize the interaction with +the underlying m_outputLevel data member of each of these main Gaudi +components. It makes sure that the 3 of them have: </li> + </ul> +</ul> +<div style="margin-left: 120px; font-family: monospace;">int +outputLevel () const;<br> +</div> +<div style="margin-left: 120px;"><span style="font-family: monospace;">void +initOutputLevel(Property&); //update handler</span><br> +<br> +</div> +<div style="margin-left: 80px;">also added this method to MsgStream:<br> +<br> +</div> +<div style="margin-left: 120px; font-family: monospace;">void +setMsgSvc( IMessageSvc* svc ) {<br> +</div> +<div style="margin-left: 120px; font-family: monospace;"> + m_service = svc;<br> +</div> +<div style="margin-left: 120px;"><span style="font-family: monospace;">} +</span><br> +</div> +<ul> + <ul> + <li>patch #1136 (<span style="color: rgb(115, 115, 115);">Chris +Jones</span>): Updates to Algorithm and AlgTool required +for changes in GaudiAlg for automatic registration of data +to the monitoring service</li> + <ul> + <li>Addition of the same declareInfo(...) methods in AlgTool as +in +Algorithm</li> + <li>Replace hardcoded monitor service name with new job option</li> + <li>New method to provide 'easy' direct access to monitor service +via pointer <br> + </li> + </ul> + <li>patch #1129 (<span style="color: rgb(115, 115, 115);">Sebastien +Binet</span>): Add the method outputLevel() to Auditor.</li> + <li>fix to bug #25852 bis (<span style="color: rgb(115, 115, 115);">Marco +Clemencic</span>): Fixed compilation problem on windows by adding the +definitions for the missing functions localtime_r and gmtime_r (header +GaudiKernel/time_r.h).</li> + <li>Patch #1126 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>):</li> + <ul> + <li>GaudiKernel/StatEntity.h, src/Lib/StatEntity.cpp</li> + <ol> + <li>Add the assignment operator from the scalar value according +to the request by Ulrich Kerzel (LHCb/RICH)</li> + <li>Add two new methods "efficiency" and "efficiencyErr" +for evaluation of binomial estimate of the efficiency, associated +with the counter. If the counter could be interpreted as efficiency, +these methods produce right results. +Method "efficiency" returns either +"flagMean" or -1, if the interpretation of counter as efficiency is not +possible. In a similar way "efficiencyErr" returns the binomial +estimate of the uncertainty or -1, if the interpretation of counter as +efficiency is not possible. Note that there could be sizable difference +between RMS estimate "flagMeanRMS" and the binomial estimate +"efficiencyErr", however for large statistics and for non-extremal +(close to ~0 or, especially ~100%) efficiencies, these estimates should +be very similar.</li> + </ol> + <li>GaudiKernel/ToStream.h</li> + <ol> + <li>Add the printout for std::list</li> + <li>Add the template parameters for std::vector, std::set, +std:map, GaudiUtils::Map, GaudiUtils::VectorMap, GaudiUtils::HashMap. +It +allows to use all these function for containers with non-default +optional template arguments, e.g. allocators, comparison criteria, hash +functions or underlying containers.</li> + </ol> + </ul> + <li>fix to bug #25852 (<span style="color: rgb(115, 115, 115);">Andy +Salnikov</span>). Message and MessageSvc. Messages now have one more +format flag <span style="font-family: monospace;"></span> which is +replaced with the formatted timestamp on output. Default format string +has not changed so default output will look identical to what it was +before. The format of the timestamp can be changed through the +additional format string similarly to the message format string. Time +format can contain anything that is accepted by strftime plus +additional <span style="font-family: monospace;">'%f'</span> code for +milliseconds.</li> + <li>patch #1125 (<span style="color: rgb(115, 115, 115);">Marco +Clemencic</span>). Fixed INamedInterface in order to provide the right +IInterfaceID. An empty virtual destructor has been added.</li> + <li>Patch #1103 (<span style="color: rgb(115, 115, 115);">Martin +Woudstra</span>). The attached 2 patches (one for GaudiPython and one +for GaudiKernel) contain the changes needed to support +ToolHandleArray's (a 'vector' of ToolHandles). This is a new feature, +and is already in use in ATLAS. In addition to the ToolHandleArray and +its associated base classes, there is the GaudiHandleArrayProperty, and +an update to genconf to support it</li> + <li>Patch #1099 (<span style="color: rgb(115, 115, 115);">Chris +Jones</span>). Add Specialization stream operator for <span + style="font-family: monospace;">std::vector<T,A></span> to +MsgStream.h Allows print out of vector created with custom allocators +e.g. <span style="font-family: monospace;">std::vector< +RichSmartID, +boost::pool_allocator< RichSmartID > ></span></li> + <li>Patch #1092 (<span style="color: rgb(115, 115, 115);">Chris +Jones</span>). There is a bug in the current implementation of the <span + style="font-family: monospace;">format(..)</span> method in +MsgStream.(cpp,h) which means if a user uses the format method twice in +one message request, wrong information is printed. The attached patch +fixes this by returning instead a <span style="font-family: monospace;">std::string</span>. +However, if somewere a user is explicitly using the returned <span + style="font-family: monospace;">char *</span> pointer (They really +shouldn't be...) a small change to their code would be required. i.e.<br> + </li> + </ul> +</ul> +<div style="margin-left: 120px;"> <span + style="font-family: monospace;">char * c = format("XXX,x)<br> +</span></div> +<div style="margin-left: 80px;">to<br> +</div> +<div style="margin-left: 120px;"> <span + style="font-family: monospace;">std::string s = format("XXX,x);</span><br + style="font-family: monospace;"> +<span style="font-family: monospace;"> c = s.c_str(); +</span><br style="font-family: monospace;"> +</div> +<ul> + <li>GaudiPoolDb (v2r13):</li> + <ul> + <li>fixed <span style="font-family: monospace;">load<TYPE></span> +function in PoolDbNTupleCnv.cpp. The <span + style="font-family: monospace;">"len"</span> argument which is passed +to the swapFromBuffer method is now an int instead of a long. This +ensures backward readability for the already written data. This fixes +the problem of the framework with the amd64 platform (<span + style="color: rgb(115, 115, 115);">Marco Clemencic</span>).</li> + <li>enlarge the limit for the output file size to 500 GBytes (<span + style="color: rgb(115, 115, 115);">Markus Frank</span>).</li> + <li>removed explicit loading of component libraries through <span + style="font-family: monospace;">ApplicationMgr.Dlls.</span> It is not +needed any more. Only the PoolDbCacheSvc needs explicit loading of POOL +component and GaudiKernelDict (<span + style="color: rgb(115, 115, 115);">Hubert Degaudenzi</span>).</li> + </ul> + <li>GaudiPython (v8r15):</li> + <ul> + <li>Patch #1126 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>). dict/selection_kernel.xml update the exclusion list +and remove unnesessaryclasses, picked up by internal typedefs, in +particular:<br> + </li> + </ul> +</ul> +<div style="margin-left: 120px;"><span style="font-family: monospace;"> +"std::unary_function<std::pair<,Tuples::>"</span><br + style="font-family: monospace;"> +<span style="font-family: monospace;"> +"std::unary_function<std::pair<,NTuple::>"</span><br + style="font-family: monospace;"> +<span style="font-family: monospace;"> +"std::unary_function<std::pair<,AIDA::>"</span><br> +</div> +<ul> + <ul> + <li>Patch #1103 (<span style="color: rgb(115, 115, 115);">Martin +Woudstra</span>). The attached 2 patches (one for GaudiPython and one +for GaudiKernel) contain the changes needed to support +ToolHandleArray's (a 'vector' of ToolHandles). This is a new feature, +and is already in use in ATLAS. In addition to the ToolHandleArray and +its associated base classes, there is the GaudiHandleArrayProperty, and +an update to genconf to support it.</li> + <li>added <span style="font-family: monospace;">setOwnership()</span> +calls in <span style="font-family: monospace;">addAlg()</span> and <span + style="font-family: monospace;">removeAlg()</span> to avoid segfault +at the end of the execution due to double deletion of algorithms (<span + style="color: rgb(115, 115, 115);">Pere Mato</span>)</li> + <li>Patch #1106 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>). possible solution for Savannah bug #25109 and patch +#1024</li> + <ul> + <li>dict/selection_kernel.xml. add the dictionary for +GaudiHandleProperty class</li> + <li>python/gaudimodule.xml</li> + <ul> + <li>PropertyEntry</li> + <ol> + <li>reimplement constructor in a way to set the data member +_value to be valid python type for LHCbproperties and to keep the +previousl behaviour for ATLAS GaudiHandleProperty</li> + <li>add local data mamber PropertyEntry._property and +function <span style="font-family: monospace;">PropertyEntry.property()</span> +to access to the original property. (Useful to perform the second try, +if the failure occurs in constructor)</li> + </ol> + <li>minor modification of <span style="font-family: monospace;">iProperty.__getattr__</span> +to avoid the sad printout of numerous warning messages: "<span + style="font-family: monospace;">Warning in <TClass::TClass>: no +dictionary for class +vector<pair<double,double> > is available "</span>.<br> + </li> + </ul> + </ul> + </ul> +</ul> +<ul> + <li>GaudiSvc (v16r0):</li> + <ul> + <li>Patch #1146. HistorySvc is now capturing the state of +algorithms and service during the BeginEvent incident. It uses the new +feature of the incident service to be called only once (<span + style="color: rgb(115, 115, 115);">Charles Leggett & Marco +Clemencic</span>).</li> + <li>Extended IncidentSvc to make it possible to register a listener +for only one occurrence of the requested event (see bug #25552) (<span + style="color: rgb(115, 115, 115);">Marco Clemencic</span>).</li> + <li>Fixed bug #25552 (Marco Clemencic). If a listener is removed in +the middle of an incident, there will not be a segmentation fault. If a +listener unregister itself, it will not be called again. If the +listener is removed from outside, the listener will be called once more.</li> + <li> patch #1171 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>). See above.</li> + <li>patch #1172 (<span style="color: rgb(115, 115, 115);">Sasha +Mazurov & Vanya Belyaev</span>). Consider the first line of an +option file as a comment if it starts with "#!" .</li> + <li>patch #1161 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>). See above.</li> + <li>patch #1160 (<span style="color: rgb(115, 115, 115);">Marco +Clemencic</span>). See above</li> + <li>patch #1162 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>):</li> + <ul> + <li>Fix a bug with vectors-properties in "python"-format.</li> + <li>New features for "#printOptions" directive:</li> + <ol> + <li><span style="font-family: monospace;">"#printOptions FULL"</span> +directives now switches off (<span style="font-family: monospace;">"#pragma +print OFF"</span>) the printout of properties during the processiong +phase and blocks the subsequent actions of "#pragma print OFF" +directives. The feature has been requested by Gloria Corti for Gauss.</li> + <li>The printout of parser catalogue (activated by <span + style="font-family: monospace;">"#printOptions FULL"</span> directive) +is modified to include the trailing semicolumn symbol ";". It allows +the save of this printout through cut-n-paste as configuration file for +other jobs.</li> + <li>One can now dump the content of parser catalogue into a +file. It is controlled by the property of JobOptionsSvc "DumpFile". The +value of the property is a name of the output file for dumping of +parser/property catalogue. The default value of this property is empty. +It also check the environment variable <span + style="font-family: monospace;">"JOBOPTSDUMPFILE",</span> where one +can specify the name of output file:<br> + </li> + </ol> + </ul> + </ul> +</ul> +<div style="margin-left: 200px;"><span style="font-family: monospace;">bash> +JOBOPTSDUMPFILE=dump.opts Gaudi.exe ExtendedProperties.opts<br> +<br> +[t]csh> setenv JOBOPTSDUMPFILE dump.opts<br> +[t]csh> Gaudi.exe ExtendedProperties.opts<br> +</span><br> +</div> +<div style="margin-left: 160px;">use it later:<br> +<br> +</div> +<div style="margin-left: 200px;"><span style="font-family: monospace;">> +Gaudi.exe dump.opts</span><br> +</div> +<ul> + <ul> + <li>patch #1130 (<span style="color: rgb(115, 115, 115);">Sebastien +Binet</span>). Here is a patch to allow doing this (in pseudo-code) +from the C++ side:<br> + </li> + </ul> +</ul> +<div style="margin-left: 120px;"><span style="font-family: monospace;"> +StatusCode Alg::initialize() </span><br style="font-family: monospace;"> +<span style="font-family: monospace;"> { </span><br + style="font-family: monospace;"> +<span style="font-family: monospace;"> // +blah-blah IProperty * svc = 0; </span><br + style="font-family: monospace;"> +<span style="font-family: monospace;"> service( +"THistSvc", svc, createIf=false ).ignore(); </span><br + style="font-family: monospace;"> +<span style="font-family: monospace;"> + StringArrayProperty outputProperty( svc->getProperty(pName) );</span><br + style="font-family: monospace;"> +<span style="font-family: monospace;"> // +update/modify the property and send it back to the service</span><br + style="font-family: monospace;"> +<span style="font-family: monospace;"> return +svc->setProperty( outputProperty ); </span><br + style="font-family: monospace;"> +<span style="font-family: monospace;"> }<br> +<br> +</span></div> +<div style="margin-left: 80px;">i.e: even if the THistSvc has already +gone through its initialize method, the configuration of in-/output +(ROOT) streams will be reconfigured. This patch replaces <span + style="font-family: monospace;">std::vector<std::string></span> +properties by StringArrayProperty and attaches to each of them a +callback method.<br> +</div> +<ul> + <ul> + <li>Patch #1104 (<span style="color: rgb(115, 115, 115);">Charles +Leggett</span>):</li> + <ul> + <li>Currently, one can have the MessageSvc summarize all message +counts at the end of the job using the showStats boolean prop. However, +this only works if the enableSuppression prop is set to True. This +patch to MsgSvc.cpp separates the two functions to make them +independantly configurable. If you're not using these flags, it won't +affect you (by default, these flags are set to False).</li> + <li>extension to only print stats above a certain level if +desired, controlled using a new property "statLevel".</li> + </ul> + <li>patch #1060 (<span style="color: rgb(115, 115, 115);">Sebastien +Binet</span>). Added multiple log feature to the MessageSvc. One can +define a log file per algorithm.<br> + </li> + </ul> +</ul> +<div style="margin-left: 120px;"><span style="font-family: monospace;"> +MessageSvc.loggedStreams = {</span><br style="font-family: monospace;"> +<span style="font-family: monospace;"> 'MyAlg1' : +'some_file.log',</span><br style="font-family: monospace;"> +<span style="font-family: monospace;"> 'MyAlg2' : +'some_other_file.log',</span><br style="font-family: monospace;"> +<span style="font-family: monospace;"> 'MyAlg3' : +'some_file.log'</span><br style="font-family: monospace;"> +<span style="font-family: monospace;"> };</span><br> +</div> +<ul> + <ul> + <li>fix to bug #25852 (<span style="color: rgb(115, 115, 115);">Andy +Salnikov</span>). See above.</li> + </ul> + <li>RootHistCnv (v9r14):</li> + <ul> + <li>Added extra argument needed in constructor of TBranch. This is +new in version 5.15.06 of ROOT (<span style="color: rgb(115, 115, 115);">Pere +Mato</span>).</li> + </ul> + <li>PartPropSvc (v2r6): <br> + </li> + <ul> + <li>Patch #1186 (<span style="color: rgb(115, 115, 115);">Paolo +Calafiura</span>). added missing charged geantino.</li> + </ul> + <li>GaudiExamples (v19r4):</li> + <ul> + <li>Added example to show the usage of "single-shot" incident +listeners (see bug #25552) (<span style="color: rgb(115, 115, 115);">Marco +Clemencic</span>).</li> + <li>patch #1134 (Chris Jones). Patch to demonstrate the patch. +Please have a look at the release notes of the GaudiAlg package.</li> + <li>patch #1127 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>). Added examples POOLIOExtCollWrite and POOIOExtCollRead +to demonstrates the patch. Please have a look at the GaudiAlg package +release notes.</li> + <li>patch #1126 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>). Modification of examples to illustrate the patch</li> + <li>patch #1060 (<span style="color: rgb(115, 115, 115);">Sebastien +Binet</span>). Added QotdAlg which demonstrates this new multiple log +stream feature.</li> + <li>removed explicit loading of component libraries through +ApplicationMgr.Dlls. It is not needed any more (<span + style="color: rgb(115, 115, 115);">Hubert Degaudenzi</span>).</li> + <li>patch #1106 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>). python/Properties.py python/ExtenderProperties.py an +attempt to deal with new semantics of iProperty.properties() method +(see the series of patched to GaudiPython package)<br> + </li> + </ul> +</ul> +<h2><a name="v19r3">Gaudi v19r3</a> (2007-03-23)</h2> +<h3>Externals version: <a + href="http://spi.cern.ch/cgi-bin/spi/viewConfig.py?platform=Unix&projVers=LCG_50b">LCGCMT_50b</a></h3> +<h3>Packages Changes</h3> +<ul> + <li>GaudiPolicy (v6r5):</li> + <ul> + <li>added the local package root directory for the compilation of +the package. It is needed for the parallel build . No need for +dependency on the install_more_include pattern any more (<span + style="color: rgb(115, 115, 115);">Hubert Degaudenzi</span>).</li> + <li>patch #1080: fix in the +GaudiPolicy/cmt/fragments/genconfig_header to address make's slc3 +limited features (and prevents CMT from looping or stopping build in +PEDANTIC mode) (<span style="color: rgb(115, 115, 115);">Sebastien Binet</span>).</li> + <li> removed the genconfig_cmd macro. Rely on the one in the +GaudiKernel requirements file (<span style="color: rgb(115, 115, 115);">Hubert +Degaudenzi</span>).</li> + <li>reenabled the -Wl,--no-undefined option by default (not under +the LHCb tag any more) <br> + </li> + </ul> + <li>GaudiKernel (v22r2):</li> + <ul> + <li>Patch #1081 (fix to bug #24704): fix the crash that happens +when the destinatin file of genconf has a "+" in its path (<span + style="color: rgb(115, 115, 115);">Sebastien Binet</span>).</li> + <li>Patch #1080: fixes to GaudiKernel/src/Util/genconf.cpp (<span + style="color: rgb(115, 115, 115);">Sebastien Binet</span>):</li> + <ul> + <li>fix handling of templated components</li> + </ul> + <ul> + <li>fix handling of (default value of) BooleanProperties</li> + </ul> + <ul> + <li>fix handling of NaN DoubleProperties (follows the good old +Garbage In, Garbage Out pattern, even though a warning is issued during +genconf processing...)</li> + </ul> + <li>Patch #1073. Simple modification of IExceptionSvc interface +(and the implementation ExceptionSvc) to avoid the explicit appearence +of class Algorithm in the interface. The interface is modified to +substitute Algorithms with INamedInterface. It allows to use the +service in much wider context, in particular with tools, services and +auditors (<span style="color: rgb(115, 115, 115);">Vanya Belyaev</span>).</li> + <li>Patch #1058 (partially). Makes sure a DoubleProperty is +understood as a double on the python side (and not +converted into an int as it the cast) (Sebastien Binet)<br> + </li> + <li>added merge_genconfDb.py scripts to merge configurables (<span + style="color: rgb(115, 115, 115);">Sebastien Binet</span>).</li> + <li>patch #1070. The python configurables generated with the +current genconf.cpp return the python (mangled) class name from the +function getType(). This should be the C++ class name, otherwise the +ToolSvc will not find tools from classes in namespaces and/or templated +classes. This is critical as many classes in ATLAS as of these +categories and all those are broken now (<span + style="color: rgb(115, 115, 115);">Martin Woudstra</span>).</li> + <li>patch #1071. The GaudiHandle version used in ATLAS has since +some time an 'empty()' member function to indicate that no component is +supposed to be retrieved nor used. For some reason this member function +did not make it into Gaudi 19, so now the ATLAS code is broken. patch +adds this member function to the GaudiHandleBase class, and allows the +users to specify an 'empty' handle in the constructor (i.e. "" is kept +is-as and does not trigger the setting to the default type) (<span + style="color: rgb(115, 115, 115);">Martin Woudstra</span>).</li> + <li> patch #1049: do a full include of SmartDataPtr.h instead +of a forward declaration (<span style="color: rgb(115, 115, 115);">Paolo +Calafiura</span>).<br> + </li> + </ul> + <li>GaudiSvc (v15r3):</li> + <ul> + <li>fixed bug #24769. use of the TFile::Open method instead of the +TFile constructor to open a file. This enable the use of the ROOT +plugins (castor, rfio, gfal, ...) (<span + style="color: rgb(115, 115, 115);">Hubert Degaudenzi</span>)<br> + </li> + <li>reverted to ranlux instead of ranlux64 for the random engine. +(please see bug #24689) (<span style="color: rgb(115, 115, 115);">Hubert +Degaudenzi</span>)<br> + </li> + <li>Patch #1073. Simple modification of IExceptionSvc interface +(and the implementation ExceptionSvc) to avoid the explicit appearence +of class Algorithm in the interface. The interface is modified to +substitute Algorithms with INamedInterface. It allows to use the +service in much wider context, in particular with tools, services and +auditors (<span style="color: rgb(115, 115, 115);">Vanya Belyaev</span>).</li> + <li>Patch #1060. patch to MessageSvc to be able to log individual +message sources ("Alg1", "Foo") to individual ofstreams ("Alg1.log", +"Foo.log") (<span style="color: rgb(115, 115, 115);">Sebastien Binet</span>).</li> + <li>Patch #1035 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>)</li> + <ul> + <li>changed the storage of the seeds of HepRdm::Engine to +vector<long><br> + instead of vector<int></li> + </ul> + <ul> + <li>removed the C-cast (long *) to initialize the CLHEP seeds</li> + </ul> + </ul> + <li>RootHistCnv (v9r13):</li> + <ul> + <li>fixed bug #24769. use of the TFile::Open method instead of the +TFile constructor to open a file. This enable the use of the ROOT +plugins (castor, rfio, gfal, ...) (<span + style="color: rgb(115, 115, 115);">Hubert Degaudenzi</span>)<br> + </li> + </ul> + <li>GaudiMonitor (v1r2):</li> + <ul> + <li>fixed compilation problems on windows (<span + style="color: rgb(115, 115, 115);">Hubert Degaudenzi</span>)<br> + </li> + </ul> + <li>PartPropSvc (v2r5):</li> + <ul> + <li>Fixed default for PDGTABLE (<span + style="color: rgb(115, 115, 115);">Charles Leggett</span>)<br> + </li> + </ul> +</ul> +<h2><a name="v19r2">Gaudi v19r2</a> (2007-02-19)</h2> +<h3>Externals version: <a + href="http://spi.cern.ch/cgi-bin/spi/viewConfig.py?platform=Unix&projVers=LCG_50a">LCGCMT_50a</a></h3> +<h3>Packages Changes</h3> +<ul> + <li>GaudiAlg (v9r12):</li> + <ul> + <li>patch #1002: New auditor for enhanced timing/profiling of the +code. Essentially it apply ISequencerTimerTool (used inside +GauduSequencer) for much wider context. It perform the autition for ALL +algorithms (including top level algororithms, algorithms not embedded +into GaudiSequencers and algorithms invoked by Data-On-Demand service) (<span + style="color: rgb(115, 115, 115);">Ivan Belyaev</span>).</li> + </ul> + <li>GaudiAud (v8r1):</li> + <ul> + <li> patch #972 (<span style="color: rgb(115, 115, 115);">Charles +Leggett</span>). </li> + <ul> + <li>add messageCount to IMessageSvc <br> + </li> + <li>extend Auditor::(sys)afterExecute to pass a const +StatusCode&, which is the return code of the algorithm</li> + <li>new auditor to monitor algorithms, issue message if algorithm +writes out an ERROR or FATAL, but returns SUCCESS</li> + </ul> + </ul> + <li>GaudiExamples (v19r2):<br> + </li> + <ul> + <li>patch #1019: refactor of the library into a component library. +Added example for the PartPropSvc (<span + style="color: rgb(115, 115, 115);">Charles Leggett</span>).</li> + <li>patch #1024 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>)<br> + </li> + <ul> + <li>added python/Properties.py +python/ExtendedProperties.py. Two python examples (full analogues for +C++ examples options/Property.opts and options/ExtendedProperties.opts) +which illustrates the usage of simple and extended properties through +python</li> + <li>options/DataOnDemandSvc.opts</li> + <ol> + <li>replace the (old) properties DataOnDemand.Nodes and +DataOnDemand. Algorithms with new map-like properties +DataOnDemand.NodeMap and DataOnDemand.AlgMap </li> + <li>make use of shorter TES paths (omit the leading '/Event')</li> + </ol> + </ul> + <li>patch #990 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>):</li> + <ul> + <li>src/Histograms/Aida2Root.cpp, options/Aida2Root.opts: new +example which illustrated the usage of Aida2ROOT utility</li> + <li>python/Aida2RootEx.py: the same in Python</li> + <li>python/TupleEx3.py: new example which illustrates more +possibilities to fill N-tuples with arrays&matrices </li> + </ul> + <li>patch #972: Added AlgErrAud example (<span + style="color: rgb(115, 115, 115);">Charles Leggett</span>)</li> + </ul> + <li>GaudiKernel (v22r1):</li> + <ul> + <li>Patch #1033. patch to genconf which prevents it to segfault +when no property could be dyn-casted (<span + style="color: rgb(115, 115, 115);">Sebastien Binet</span>).</li> + <li>Patch 1032: Added a helper class to allow the usage of +IUpdateManagerSvc from python. The helper class is +IUpdateManagerSvc::PythonHelper, declared as friend of +IUpdateManagerSvc. The implementation consists of 2 static functions +implemented in dictionary.h (<span style="color: rgb(115, 115, 115);">Marco +Clemencic</span>).</li> + <li>Fixed bug #23811: patch #1001 is breaking Configurables +generation (<span style="color: rgb(115, 115, 115);">Pere Mato</span>).</li> + <li>Patch #1001 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>):<br> + </li> + <ul> + <li>fixes which allow to retrieve the private tools not only from +Algorithm, Services and AlgTools, but also from Auditors.</li> + <li>Update the queryInteface method for AlgTool, Algorithm, +Auditor and Servicebase classes to allow query for INamedInterface, in +addition "C-cast" is substituted with "static_cast"</li> + </ul> + <li>genconf.cpp: applied "patch #1016: configurable genconf" fixed +"bug #23649: ICounterSvc inheritance tree and Reflex::PluginSvc" (<span + style="color: rgb(115, 115, 115);">Pere Mato</span>)</li> + <li>fix to patch #1009. Avoid infinite recursion (<span + style="color: rgb(115, 115, 115);">Martin Woudstra</span>).</li> + <li>Applied patch #1009: patches to fix XyzHandle parsing from +python jobOptions (<span style="color: rgb(115, 115, 115);">Sebastien +Binet</span>)</li> + <li>Patch #1007 (<span style="color: rgb(115, 115, 115);">Paolo +Calafiura</span>):</li> + <ul> + <li>turned the templated member functions operator << +(T&) and its partial spec operator << +(vector<T>&) into open functions. This appears to +remove ambiguities a user defined MsgStream operator << template +(typically in a data object header file). The compiler sees the +user defined template as a better specialization and matches that with +no ambiguity.</li> + <li>removed the MsgStream& operator(std::ostream&) +recently proposed as a patch since it does not serve any useful purpose</li> + </ul> + <li>Applied patch #1000: improvement in ConfigurableDb output for +genconf (<span style="color: rgb(115, 115, 115);">Pere Mato</span>)</li> + <li>Applied [partially] patch #997: genconf.cpp patch (<span + style="color: rgb(115, 115, 115);">Pere Mato</span>). It adds to +genconf.cpp:</li> + <ol> + <li>a "double loading" libraries to shield against dual_use +libraries (which could bring lots of external libraries into the +generated Configurable)</li> + <li>the generation of an ASCII file (a-la-rootmap) to describe +Configurables for the benefit of the (athena) PropertyProxy.py.</li> + </ol> + <li>Variation of the templated streamer that should provide the +same +functionality and address the ambiguous overload problems ATLAS saw +with the template (<span style="color: rgb(115, 115, 115);">Paolo +Calafiura</span>)</li> + <li>patch #977 on MsgStream (<span + style="color: rgb(115, 115, 115);">Charles Leggett</span>).</li> + <li>patch #972 (<span style="color: rgb(115, 115, 115);">Charles +Leggett</span>): </li> + <ul> + <li>add messageCount to IMessageSvc</li> + <li>extend Auditor::(sys)afterExecute to pass a const +StatusCode&, which is the return code of the algorithm</li> + <li>new auditor to monitor algorithms, issue message if algorithm +writes out an ERROR or FATAL, but returns SUCCESS</li> + </ul> + <li>removed GCCXML_CXXFLAGS definition following fix in reflex (<span + style="color: rgb(115, 115, 115);">Marco Cattaneo</span>).</li> + <li>patch #971: added ServiceHandle and GaudiHandle (<span + style="color: rgb(115, 115, 115);">Charles Leggett</span>).</li> + </ul> + <li>GaudiPolicy (v6r4):<br> + </li> + <ul> + <li>Modified GaudiPolicy so that it supports distcc at CERN. The +value of the macro "cpp" has been changed (<span + style="color: rgb(115, 115, 115);">David Quarrie</span>). </li> + <li>Applied patch #1016: configurable genconf. Added genconfig +fragments and modified requirements to make use of it (default is not +to do it) (Pere Mato)</li> + <li>linking option modification (<span + style="color: rgb(115, 115, 115);">Marco Clemencic</span>):</li> + <ul> + <li>added the "--no-undefined" link flag for the building of +librairies and applications on Linux. This enforces the symbols +resolution.</li> + <li>added the "--as-needed" link flag for the building of +librairies and applications on the slc4 platform. This +instructs the runtime linker to avoid looking for uneeded librairies.</li> + <li>These flags are only enabled with the LHCb CMTEXTRATAGS.</li> + </ul> + <li>added a global cmtpath_pattern in the GaudiPolicy requirements +file in order to at least prepend to the PYTHONPATH env variable the +InstallArea/python directory (<span style="color: rgb(115, 115, 115);">Hubert +Degaudenzi</span>).</li> + </ul> + <li>GaudiPoolDb (v2r11):</li> + <ul> + <li>Patch #999 (<span style="color: rgb(115, 115, 115);">Markus +Frank</span>): Properly implement (previously existing, but not +working...) option to set database domain options. To +increase e.g. max. file size to ~3.5 GB for ROOT set: +PoolDbCacheSvc.DomainOpts = { +"Domain[ROOT_All].TREE_MAX_SIZE=3500000000 TYP=longlong" };</li> + <li>fixed compilation flags for the generation of the dictionary in +32 bits mode (<span style="color: rgb(115, 115, 115);">Hubert Degaudenzi</span>).</li> + </ul> + <li>GaudiPython (v18r14):</li> + <ul> + <li>Patch #1032:Extended the python interface of IUpdateManagerSvc +using the helper class IUpdateManagerSvc.PythonHelper (<span + style="color: rgb(115, 115, 115);">Marco Clemencic</span>)</li> + <li>cmt/requirements: moved apply_patter linker_library to the +public section to allow packages to linker with GaudiPythonLib linker +library. Request from Vanya (<span style="color: rgb(115, 115, 115);">Pere +Mato</span>).</li> + <li>Patch #989 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>):</li> + <ul> + <li>GaudiPython/TupleDecorator.h, src/Lib/TupleDecorator.cpp use +new typedefs from GaudiKernel instead of local types.</li> + <li>dict/kernel.h, dict/selection_kernel.h added the new class +Gaudi::Aida2ROOT </li> + <li>python/GaudiAlgs.py add the default None argument for method +"histoSvc" to be coherent with documentation and "evtSvc"/"detSvc" +methods </li> + <li>python/gaudimodule.py add 2 methods for HistogramService: +getAsROOT ans getAsAIDA for returning either the native representation +or the usual one.</li> + </ul> + <li>Patch #988: new class PropertyEntry in gaudimodule (<span + style="color: rgb(115, 115, 115);">Pere Mato</span>)</li> + </ul> + <li>GaudiSvc (v15r2):</li> + <ul> + <li>Patch #1017: Here is a patch to ChronoStatSvc to optionally +dumps its stats into an ASCII file (a .INI-like format) to ease the +offline processing of these stats (usefull for, eg, a performance +monitoring framework) (<span style="color: rgb(115, 115, 115);">Sebastien +Binet</span>).</li> + <li>patch #1001 (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>)</li> + <ul> + <li>src/ToolSvc/ToolSvc.cpp Couple of fixes with allows to use +the private tools from Auditors.<br> + </li> + <li>src/AuditorSvc/AuditorSvc.cpp Allow to have an auditor +with name not equal to the type.<br> + </li> + <li>src/ApplicationMgr/ApplicationMgr.cpp add +INamedInterface into ApplicationMgr::queryInterface method</li> + </ul> + <li>patch #1018. Fix memory leak in the IncidentSvc class (<span + style="color: rgb(115, 115, 115);">Scott Snyder</span>).</li> + <li>fix (to bug #23471) in the MinimalEvtLoopMgr to catch +exception. (<span style="color: rgb(115, 115, 115);">Charles Leggett</span>)</li> + <li>patch #1008: in the last version of Gaudi, it is not possible +anymore to create a service using the name format +"ServiceType/ServiceName". This patch fixes that (<span + style="color: rgb(115, 115, 115);">Marco Clemencic</span>).</li> + <li>patch #1006. The various finalize methods in the ToolSvc don't +propagate errors that occur during the finalization of tools back +up the chain. Exceptions are caught, and error messages are printed, +but a StatusCode::SUCCESS is always returned. This patch causes a +FAILURE to be returned if an error is encountered (<span + style="color: rgb(115, 115, 115);">Charles Leggett</span>).</li> + <li>patch #981. MinimalEventLoopMgr doesn't remove algs from the +algmanager during finalize (<span style="color: rgb(115, 115, 115);">Charles +Leggett</span>).</li> + <li>patch #994. If the finalization of a service fails, a warning +message is printed, but the return code is always a success. This makes +it difficult for the applicationManager to figure out if something went +wrong. ServiceManager::finalize() should return a failure if any of the +services it's trying to finalize failed (<span + style="color: rgb(115, 115, 115);">Charles Leggett</span>). </li> + <li>ToolSvc.cpp: Fixed problem reported by David Quarrie. +Return +StatusCode::FAILURE if tool can not be instantiated (<span + style="color: rgb(115, 115, 115);">Pere Mato</span>). </li> + <li>patch #973 (<span style="color: rgb(115, 115, 115);">Charles +Leggett</span>):</li> + <ul> + <li>sets up limits on numbers of messages issued by any source. +suppresses messages if count is exceeded. prints out summary at end of +job. controlled by jobopts, for each MSG::LEVEL individually, or a +global limit. default is not to do anything.</li> + <li>also prints out stats on all messages if requested.</li> + </ul> + <li>patch #972 (<span style="color: rgb(115, 115, 115);">Charles +Leggett</span>):</li> + <ul> + <li>add messageCount to IMessageSvc</li> + <li>extend Auditor::(sys)afterExecute to pass a const +StatusCode&, which is the return code of the algorithm</li> + <li>new auditor to monitor algorithms, issue message if algorithm +writes out an ERROR or FATAL, but returns SUCCESS</li> + </ul> + <li>Removed the DataListenerSvc. It is now located in the +GaudiGridSvc package (<span style="color: rgb(115, 115, 115);">Hubert +Degaudenzi</span>).</li> + <li>fix to patch #954. Modification of the interface of +IDataStreamTool to avoid explicit reference to std::vector. Added the +method addStream, in parallel to addStreams (<span + style="color: rgb(115, 115, 115);">Marco Clemencic</span>).</li> + <li>Patch #966. Don't force the creation of the HistorySvc in +the +ToolSvc - if it's not available, it's because it hasn't been created in +the ApplicationMgr, and that's because ActivateHistory == false (<span + style="color: rgb(115, 115, 115);">Charles Leggett</span>).</li> + <li>fixed DataListenerSvc in order to respect the new IMonitorSvc +interface introduced by the patch #943 (<span + style="color: rgb(115, 115, 115);">Hubert Degaudenzi</span>). </li> + </ul> + <li>PartPropSvc (v2r4):</li> + <ul> + <li>patch #1019: refactor of the library into a component library (<span + style="color: rgb(115, 115, 115);">Charles Leggett</span>). <br> + </li> + </ul> +</ul> +<h2><a name="v19r1">Gaudi v19r1</a> (2007-01-15)</h2> +<p>This release is the first stable one from the v19 series. It +encompass number of bug fixes and improvements to the v19r0 version. 2 +new packages are also available: </p> +<ol> + <li> + <p>GaudiGridSvc (v1r0): This one is meant to replace the +GaudiSiteSvc package +for the prestaging of files. It is using the GFAL library and thus is +more general than the prestaging of the CASTOR files only. It supports +now the GFAL backends. </p> + </li> + <li> + <p>GaudiMonitor (v1r0): The DataListenerSvc has been moved from the +GaudiSvc package to this new package.<br> + </p> + </li> +</ol> +<p>Since these new features depends on external software (GFAL and +MonaLisa), they have not been included in the GaudiSvc package but +deserve their own packages.</p> +<p>To be noted that the steering package for the framework is not the +"Gaudi" package anymore. It is now called "GaudiRelease". This version +also incorporates the merge with th v18r7b branch.<br> +</p> +<h3>Externals version: <a + href="http://spi.cern.ch/cgi-bin/spi/viewConfig.py?platform=Unix&projVers=LCG_49">LCGCMT_49</a></h3> +<h3>Packages Changes</h3> +<ul> + <li>GaudiAlg (v9r10):</li> + <ul> + <li>patch #967. Changed the incomprehensible message "This machine +is 0.93 times faster than a 2.8 GHz Xeon" to "This machine has a speed +about 0.93 times the speed of a 2.8 GHz Xeon" (<span + style="color: rgb(115, 115, 115);">Patrick Koppenburg</span>)</li> + <li><span style="color: rgb(115, 115, 115);">Charles Leggett</span>:</li> + </ul> + <ul> + <ul> + <li>added reinitialize to Sequencer</li> + </ul> + </ul> + <ul> + <ul> + <li>removed extra <span style="font-family: monospace;">GaudiAlgorithm:</span> +from <span style="font-family: monospace;">GaudiAlgorithm::evtColSvc</span></li> + </ul> + <ul> + <li>statuscode fixes in SequencerTimerTool.cpp, Sequencer.cpp</li> + </ul> + <li>Adapted package to the new PluginSvc. Removed protected from +constructor/destructors and fiendship of Factory class (<span + style="color: rgb(115, 115, 115);">Pere Mato</span>)</li> + <li>Patch #923 (<span style="color: rgb(115, 115, 115);">Ivan +Belyaev</span>): Fixes in reply to Savannah bug-reports #20265 and +#20198. GaudiAlg/TupleObj.h add the method for filling N-Tuples with +few basic <span style="font-family: monospace;">ROOT::Math</span> +objects: <br> + </li> + <ul> + <li>3D/4D vectors and points using <span + style="font-family: monospace;">"TupleObj::columns"</span></li> + <li>SVectors & SMatrices using <span + style="font-family: monospace;">"TupleObj::array"</span> and <span + style="font-family: monospace;">"TupleObj::matrix"</span> <br> + </li> + <li>"ExtraInfo" objects using <span + style="font-family: monospace;">"TupleObj::fmatrix"</span></li> + </ul> + <li>fixed memory leak in <span style="font-family: monospace;">GaudiCommon</span> +(<span style="color: rgb(115, 115, 115);">Hubert Degaudenzi</span>).</li> + </ul> + <li>GaudiAud (v8r0):</li> + <ul> + <li>bug #22799. changed the return value of <span + style="font-family: monospace;">chronoStart,</span> <span + style="font-family: monospace;">chronoStop,</span> <span + style="font-family: monospace;">chronoPrint,</span> <span + style="font-family: monospace;">stat</span> and <span + style="font-family: monospace;">statPrint</span> method of the <span + style="font-family: monospace;">IChronoStatSvc</span> from <span + style="font-family: monospace;">StatusCode</span> to void.</li> + <li>instrumented auditors for reinitialize, <span + style="font-family: monospace;">beginRun,</span> <span + style="font-family: monospace;">endRun</span> (<span + style="color: rgb(115, 115, 115);">Charles Leggett</span>)</li> + <li>Adpated package to the new PluginSvc: removed protected from +constructor/destructors and fiendship of Factory class (<span + style="color: rgb(115, 115, 115);">Pere Mato</span>)</li> + </ul> + <li>RootHistCnv (v9r11):</li> + <ul> + <li>Fix histogram converters to automatically convert THxF to THxD +when reading from file (<span style="color: rgb(115, 115, 115);">Markus +Frank</span>).</li> + </ul> + <ul> + <li>Adpated package to the new PluginSvc: removed protected from +constructor/destructors and fiendship of Factory class (<span + style="color: rgb(115, 115, 115);">Pere Mato</span>).</li> + </ul> + <ul> + <li>patch #908: simplify histogram conversion. Take advantage of +the fact that the underlying implementation is realized using ROOT (<span + style="color: rgb(115, 115, 115);">Markus Frank</span>).</li> + </ul> + <li>GaudiPolicy (v6r3):</li> + <ul> + <li>because of the install area and to maintain the dependencies to +the include files, <span style="font-weight: bold;">CMT v1r19</span> +or above has to be used for the building.<br> + </li> + </ul> + <ul> + <li>use cmtpath_pattern_reverse to set macro +<project>_include_dir and then set include_dirs with it remove +setting of cppcomp and pp_cppflags introduced previously (<span + style="color: rgb(115, 115, 115);">Florence Ranjard</span>).</li> + <li>add "-m32" flag in ${for), ${libraryShr} and ${componentShr} +when tag slc4-ia32 (Florence Ranjard)</li> + <li>remove setting of <library>Shr for +<project>_with_installarea (<span + style="color: rgb(115, 115, 115);">Florence Ranjard</span>)</li> + <li>added $(cmt_installarea_linkopts) in the +<library>_shlibflags for the component library pattern. Was +failing on Windows because the script to build the shared library does +not add it as it is on Linux (<span style="color: rgb(115, 115, 115);">Pere +Mato</span>).</li> + <li>set a macro copyInclude depending on the platform to be used in +install_more_includes pattern (<span style="color: rgb(115, 115, 115);">Florence +Ranjard</span>).<br> + </li> + <li>added the -p flag to the copyInclude macro to preserve the time +stamp of the source header files (<span + style="color: rgb(115, 115, 115);">Florence Ranjard</span>).</li> + <li>prepend pp_cppflags with InstallArea/include if +with_installArea (<span style="color: rgb(115, 115, 115);">Florence +Ranjard</span>)</li> + </ul> + <ul> + <li>Adpated package to the new PluginSvc. The following changes +have been done (<span style="color: rgb(115, 115, 115);">Pere Mato</span>):</li> + </ul> + <ul> + <ul> + <li>Using a local copy of cmt_make_shlib.bat to make libraries on +windows from *.objs instead of using the archive library. It avoids to +have the _entries.cpp and _load.cpp files.</li> + </ul> + </ul> + <ul> + <ul> + <li>prepend PATH for linker libraries on windows</li> + </ul> + </ul> + <ul> + <ul> + <li>added new pattern and fragments to generate rootmap files +from component libraries</li> + </ul> + </ul> + <ul> + <ul> + <li>added generate_rootmap in the component_library pattern</li> + </ul> + </ul> + <ul> + <li>added tags for MacOS 10.4 (<span + style="color: rgb(115, 115, 115);">David Quarrie</span>)</li> + </ul> + <li>GaudiPoolDb (v2r10):</li> + <ul> + <li>PoolDbCnvSvc.cpp: implemented the posibility to retry when a +converter could not be initialized because missing dictionary by call +gInterpreter->AutoLoad(class) (<span + style="color: rgb(115, 115, 115);">Pere Mato</span>)</li> + </ul> + <li>GaudiPython (v8r13):</li> + <ul> + <li>Added default functions for endRun() and beginRun() in +gaudimodule.py and GaudiAlg.py (<span style="color: rgb(115, 115, 115);">Pere +Mato</span>)</li> + <li>patch #923 (<span style="color: rgb(115, 115, 115);">Ivan +Belyaev</span>)</li> + <ul> + <li>GaudiPython/TupleDecorator.h src/Lib/TupleDecorator.cpp: add +few method for easy filing of N-tupel with few basic objects, like +3D/4D vectors, points, SVector and SMatrix <br> + </li> + <li>python/GaudiAlgs.py: improve the both the on-line (Python) +and off-line (Doxygen) documentation strings <br> + </li> + </ul> + </ul> + <li>GaudiSvc (v15r1):</li> + <ul> + <li>Merge with the v14rb branch (<span + style="color: rgb(115, 115, 115);">Hubert Degaudenzi</span>)</li> + <li>patch #954 (<span style="color: rgb(115, 115, 115);">Andres +Osorio</span>):</li> + <ul> + <li>Moved EventSelectorDataStream from GaudiSvc to GaudiKernel</li> + </ul> + <ul> + <li>EventSelector uses an IDataStreamTool to loop over the files +(by default the implementation DataStreamTool, overridable with the +option EventSelector.StreamManager)</li> + </ul> + <li>patch #951. fix memory leak in HistorySvc (<span + style="color: rgb(115, 115, 115);">Charles Leggett</span>).</li> + <li>Adpated package to the new PluginSvc. The following changes +have been done (Pere Mato):</li> + <ul> + <li>Removed protected from constructor/destructors and fiendship +of Factory class</li> + </ul> + <ul> + <li>Removed files: ConverterFactory.cpp(h), ObjectFactory.cpp(h)</li> + </ul> + <ul> + <li>All the references to factories removed.</li> + </ul> + </ul> + <li>GaudiKernel (v22r0):</li> + <ul> + <li>Merge with the v10r9 branch (<span + style="color: rgb(115, 115, 115);">Hubert Degaudenzi</span>)</li> + <li>fix to patch #954 (<span style="color: rgb(115, 115, 115);">Marco +Clemencic</span>):</li> + <ul> + <li>Modification of the interface of IDataStreamTool to avoid +explicit reference to std::vector.</li> + </ul> + <ul> + <li>added the method addStream, in parallel to addStreams.</li> + </ul> + <li>bug #22799. changed the return value of chronoStart, +chronoStop, chronoPrint, stat and statPrint method of the +IChronoStatSvc from StatusCode to void (<span + style="color: rgb(115, 115, 115);">Hubert Degaudenzi</span>).</li> + <li>Patch #943 & #946. Update of the IMonitorSvc interface. To +be compatible with the DIM format. Added declareInfo for the special +case of general structure monitoring to Algorithm.h (<span + style="color: rgb(115, 115, 115);">Eric van Herwijnen</span>).</li> + <li>Patch #954 (<span style="color: rgb(115, 115, 115);">Andres +Osorio & Marco Clemencic</span>)</li> + <ul> + <li>Moved EventSelectorDataStream from GaudiSvc to GaudiKernel</li> + </ul> + <ul> + <li>Added IDataStreamTool and the basic implementation +DataStreamTool (to be used by EventSelector to loop over the files)</li> + </ul> + <li>ConversionSvc.cpp(.h): added method +ConversionSvc::loadConverter(DataObject*) to load anything necessary +(typically a dictionary) for finding/initializing a converter. Dummy at +the base class level (<span style="color: rgb(115, 115, 115);">Pere Mato</span>).</li> + <li>ServiceLocatorHelper.cpp: added the code that declares the +service pair type/name. It was removed by mistake (<span + style="color: rgb(115, 115, 115);">Pere Mato</span>).</li> + <li>VectorMap.h: removed protected find() method to avoid +compilation error in Event/HtlEvent package (<span + style="color: rgb(115, 115, 115);">Pere Mato</span>).</li> + <li>fixed the SimpleProperty constructors for ATLAS usage (with <span + style="color: rgb(115, 115, 115);">Ivan Belyaev</span>'s help) (<span + style="color: rgb(115, 115, 115);">Charles Leggett & Hubert +Degaudenzi</span>).</li> + <li>removed unused static function PR_indent in PathResolver.cpp (<span + style="color: rgb(115, 115, 115);">Hubert Degaudenzi</span>)</li> + <li>added Transform3DTypes.h, Transform4DTypes.h, Vector3DTypes.h, +Vector4DTypes.h, Plane3DTypes.h, Point3DTypes.h, Point4DTypes.h, +SymmetricMatrixTypes.h, Coord3DTypes.h, GenericMatrixTypes.h, +GenericVectorTypes.h. These are typdefs to ROOT types (<span + style="color: rgb(115, 115, 115);">Pere Mato</span>).</li> + <li>Adpated package to the new PluginSvc (<span + style="color: rgb(115, 115, 115);">Pere Mato</span>)</li> + <ul> + <li>Removed protected from constructor/destructors and fiendship +of Factory class</li> + <li>Removed files: FactoryTable.h, IAlgFactory.h, +IAuditorFactory.h, ICnvFactory.h, IObjManager.h, IObjectFactory.h, +IRndmGenFactory.h, ISvcFactory.h, IToolFactory.h, FactoryTable.h, +ICnvManager.h</li> + <li>Deep changes in the XXXFactory.h files to take into account +the new plugin service</li> + </ul> + </ul> +</ul> +<h2><a name="v19r0">Gaudi v19r0</a> (2006-09-11)</h2> +New major version that begins the inclusion of the specific ATLAS Gaudi +features. +<h3>Externals version: <a + href="http://spi.cern.ch/cgi-bin/spi/viewConfig.py?platform=Unix&projVers=LCG_46e">LCGCMT_46e</a></h3> +<h3>Packages Changes</h3> +<ul> + <li>GaudiKernel (v21r0): <span style="color: rgb(115, 115, 115);"></span></li> + <ul style="color: rgb(0, 0, 0);"> + <li>Imported new services interfaces from ATLAS: <span + style="font-family: monospace;">IExceptionSvc,</span> <span + style="font-family: monospace;">IIssueLogger,</span> <span + style="font-family: monospace;">IStatusCodeSvc,</span> ITHistSvc (<span + style="color: rgb(115, 115, 115);">Charles Leggett & Hubert +Degaudenzi</span>).</li> + <li>patch #839: enhancements in the <span + style="font-family: monospace;">JobOptions/Property</span> part. +Please have a look at the release notes of the package (<span + style="color: rgb(115, 115, 115);">Ivan Belyaev & Alexander Mazurov</span>).<br> + </li> + </ul> + <li>GaudiSvc (v15r0):</li> + <ul> + <li>The <span style="font-family: monospace;">DataListenerSvc</span> +doesn't compile on windows. So it has been temporarily commented out as +well as its example (<span style="color: rgb(115, 115, 115);">Hubert +Degaudenzi</span>).</li> + <li>added new services: <span style="font-family: monospace;">ExceptionSvc,</span> + <span style="font-family: monospace;">StatusCodeSvc,</span> <span + style="font-family: monospace;">IssuLogger</span> and <span + style="font-family: monospace;">THistSvc </span>(<span + style="color: rgb(115, 115, 115);">Charles Leggett & Hubert +Degaudenzi</span>).</li> + <li>patch #839: enhancements and bug fixes to the +JobOptions/Property part (<span style="color: rgb(115, 115, 115);">Ivan +Belyaev</span>)</li> + <li>removed AlgContextAuditor (moved to GaudiAud)</li> + <li>fixed many StatusCode Check.</li> + <li>dynamic switch of the StatusCode checking in the Application +manager (<span style="font-family: monospace;">ApplicationMgr.StatusCodeCheck += true/false;</span>). By default the checking is on. It is disabled +anyway at the ApplicationMgr::finalize method to avoid problems with +GaudiPython<br> + </li> + </ul> + <li>GaudiAud (v7r2):</li> + <ul> + <li>added <span style="font-family: monospace;">AlgContextAuditor</span> +(remove from GaudiSvc)</li> + </ul> + <li>GaudiPolicy (v5r26):</li> + <ul> + <li>added the -msse2 and -mfpmath=sse options flags for compilation.<br> + </li> + </ul> +</ul> +<h2><a name="v18r11">Gaudi v18r11</a> (2006-11-22)</h2> +<h3>Externals version: <a + href="http://spi.cern.ch/cgi-bin/spi/viewConfig.py?platform=Unix&projVers=LCG_48a">LCGCMT_48a</a></h3> +<ul> + <li> CORAL_1_6_2</li> + <li>RELAX_1_1_5a</li> + <li>castor 2.1.1-9</li> + <li> dcache_client 1.7.0.16</li> + <li>ROOT 5.13.04c</li> +</ul> +<h3>Packages Changes</h3> +<ul> + <li>GaudiPolicy (v6r1):</li> + <ul> + <li>Patch #916. Add flags to compile in 32-bit mode even on 64-bit +machines, when slc4-ia32 tag is set (<span + style="color: rgb(115, 115, 115);">Marco Cattaneo</span>).</li> + <li>Commented out momentarily the SSE2 flags.</li> + </ul> + <li>GaudiPython (v8r12):</li> + <ul> + <li>Added <span style="font-family: monospace;">__del__</span> to <span + style="font-family: monospace;">PyAlgorithm</span> to remove it from +the list of known algorithms of Gaudi. This change allows to reload +modules containing new versions of algorithms. Problem reported by +Ulrich Kerzel (<span style="color: rgb(115, 115, 115);">Pere Mato</span>)</li> + <li>fix a major problem with <span style="font-family: monospace;">AppMgr::config</span> +method: the lists of DLLs&ExtSvc must be APPENDED (and not +assigned) (<span style="color: rgb(115, 115, 115);">Ivan Belyaev</span>).<br> + </li> + <li>some decoration (<span style="color: rgb(115, 115, 115);">Ivan +Belyaev</span>): <br> + </li> + <ul> + <li>add new class <span style="font-family: monospace;">iJobOptSvc</span> +for easy handling of properties (import from Bender)</li> + <li>add new method <span style="font-family: monospace;">ApMgr::optSvc</span> +- accessor to <span style="font-family: monospace;">iJobOptSvc</span> <br> + </li> + </ul> + </ul> + <li>GaudiPoolDb (v2r9):</li> + <ul> + <li>patch #921 (<span style="color: rgb(115, 115, 115);">Markus +Frank</span>):</li> + <ul> + <li>update PoolDbCnvSvc::createConverter to take into account +specialized converters.</li> + <li>Update test to use specialized converter for MyTrack.</li> + <li>Set default agelimit in PoolDbCacheSvc back to 2.</li> + </ul> + </ul> + <li>GaudiExamples (v18r11 - branch v18r7b):</li> + <ul> + <li>fixed cmt.py to use "os.environ" instead of "os.putenv". This +is needed since we are using the variable GAUDIEXE inside the +runexamples.py script (and not in its subprocesses). GAUDIEXE is set by +GaudiKernel to $GAUDIKERNELROOT/$(tag)/Gaudi.exe (<span + style="color: rgb(115, 115, 115);">Hubert Degaudenzi</span>).</li> + <li>fixed valgrind options in runexamples.py. It has to use a tool +and memcheck has been chosen (<span style="color: rgb(115, 115, 115);">Hubert +Degaudenzi</span>).</li> + </ul> + <li>GaudiKernel (v20r12 - branch v20r9b):</li> + <ul> + <li>added environment variable GCCXML_CXXFLAGS=" -m32" for 32 bits +compilation on amd64 machines (with the slc4-ia32 tag) (<span + style="color: rgb(115, 115, 115);">Marco Cattaneo</span>).<br> + </li> + <li>added environment variable GAUDIEXE which points to the Gaudi +executable (<span style="color: rgb(115, 115, 115);">Hubert Degaudenzi</span>).<br> + </li> + </ul> +</ul> +<h2><a name="v18r10">Gaudi v18r10</a> (2006-11-03)</h2> +<h3>Externals version: <a + href="http://spi.cern.ch/cgi-bin/spi/viewConfig.py?platform=Unix&projVers=LCG_48">LCGCMT_48</a></h3> +<ul> + <li> COOL_1_3_3c</li> + <li>CORAL_1_6_1</li> + <li>POOL_2_4_8</li> + <li>RELAX_1_1_5</li> + <li>SEAL_1_9_0</li> + <li>HepMC 1.26.02</li> + <li>castor 2.1.1-4</li> + <li>ROOT 5.13.04b</li> +</ul> +<h3>Packages Changes</h3> +<ul> + <li>GaudiExamples (v18r10 - branch v18r7b):</li> + <ul> + <li>Modified the examples in order to use two libraries +(GaudiExamples and GaudiExamplesDict) and +$GAUDIKERNELROOT/$(tag)/Gaudi.exe (<span + style="color: rgb(115, 115, 115);">Hubert Degaudenzi</span>)<br> + </li> + <li>Patch #736. Modified the FastContainers example to be more +readable and to show the usage of the three ways of adding a new object +to the containers (<span style="color: rgb(115, 115, 115);">Marco +Clemencic</span>).</li> + <li>Changed cdiff.py in order to use the difflib python module. +Allows to avoid the use of cygwin on windows to compute the diffs +between the output log file and the reference log file (<span + style="color: rgb(115, 115, 115);">Hubert Degaudenzi</span>).</li> + </ul> + <li>GaudiKernel (v20r11 - branch v20r9b):</li> + <ul> + <li>Modified rootmapdump.py in order to match any file <span + style="font-style: italic;">beginning</span> with "rootmap" and not +only the "rootmap" filename. This is the same matching behavior as the +one in ROOT itself (<span style="color: rgb(115, 115, 115);">Hubert +Degaudenzi</span>).</li> + <li>Patch #870. Added operator << for StatusCode (<span + style="color: rgb(115, 115, 115);">Ivan Belyaev</span>)</li> + <li>Patch #736. Improvemts to TransientFastContainer. Now it allows +to use for new objects the default constructor, the copy constructor +and a user specified constructor (via placement new) (<span + style="color: rgb(115, 115, 115);">Marco Clemencic</span>).</li> + </ul> + <li>GaudiPython (v8r11):</li> + <ul> + <li>Corrected problem with properties having as value a Python +variable name. The error was that eval() was evaluating the value of +variables defined locally or globaly. Problem detected by Thomas with +variable ROOT (<span style="color: rgb(115, 115, 115);">Pere Mato</span>)</li> + <li>Adapted config() to deal with new JobOptions that are always +strings. Detected by Thomas when running Panoramix from Python (<span + style="color: rgb(115, 115, 115);">Pere Mato</span>)</li> + <li>Add default initialize() method in PyAlgorithm. This fixes bug +#20957 (<span style="color: rgb(115, 115, 115);">Pere Mato</span>).</li> + </ul> + <li>GaudiSvc (v14r12 - branch v14r10b):</li> + <ul> + <li>Patch #882. The proposed patch fixes the problem with the +unique Parser Catalogue for reading of multiple *.opts files. The fix +does not affect at all the "regular" Gaudi job, but it is vital for +GaudiPython-based applications, e.g. Bender, where the reading of +several configuration *.opts-files is possible (<span + style="color: rgb(115, 115, 115);">Alexander Mazurov</span>).</li> + <li>Patch #895. Add new functionality for Particle Property +Service: (<span style="color: rgb(115, 115, 115);">Ivan Belyaev</span>)</li> + <ol> + <li>Modified to add possibility to redefine properties of +existing particles and to read additional files. New property +"OtherFiles" (default is empty vector) is introduced. Service parses +additional files after the main one </li> + <li>Add possibility to modify only certain particles through the +new property "Particles"</li> + </ol> + <li>fixed the random engine declaration in the GaudiSvc_load.cpp +file (<span style="color: rgb(115, 115, 115);">Hubert Degaudenzi</span>).<br> + </li> + </ul> +</ul> +<h2><a name="v18r9">Gaudi v18r9</a> (2006-10-23)</h2> +This version is a rebuilt against POOL 2.4.7b. Please have a look at +the v18r8 release notes for more details.<br> +<h3>Externals version: <a + href="http://spi.cern.ch/cgi-bin/spi/viewConfig.py?platform=Unix&projVers=LCG_47c">LCGCMT_47c</a></h3> +<h2><a name="v18r8">Gaudi v18r8</a> (2006-10-05)</h2> +This version is a branch from the v18r7 release version.<br> +<h3>Externals version: <a + href="http://spi.cern.ch/cgi-bin/spi/viewConfig.py?platform=Unix&projVers=LCG_46e">LCGCMT_46e</a></h3> +<h3>Packages Changes</h3> +<ul> + <li>GaudiKernel (v20r10 - branch v20r9b): <span + style="color: rgb(115, 115, 115);"></span></li> + <ul style="color: rgb(0, 0, 0);"> + <li>Patch #839: enhancements in the <span + style="font-family: monospace;">JobOptions/Property</span> part. +Please have a look at the release notes of the package (<span + style="color: rgb(115, 115, 115);">Ivan Belyaev & Alexander Mazurov</span>).</li> + <li>Added the rootmapdump.py script in the new scripts directory. +Allows the dump of the rootmap files in the LD_LIBRARY_PATH. It is also +able to check for duplicate entries (<span + style="color: rgb(115, 115, 115);">Hubert Degaudenzi</span>).</li> + <li>Patch #863. Add the function <span + style="font-family: monospace;">System::setEnv</span> to set an +environment variable. Setting the variable to "" results in removing it +from the environment (same behavior on windows and linux). The +parameter overwrite define the behavior in the case the variable is +alredy present (0=no change, 1=overwrite). (<span + style="color: rgb(115, 115, 115);">Marco Clemencic</span>)<br> + </li> + </ul> + <li>GaudiSvc (v14r11 - branch v14r10b):</li> + <ul> + <li>The <span style="font-family: monospace;">DataListenerSvc</span> +doesn't compile on windows. So it has been temporarily commented out as +well as its example (<span style="color: rgb(115, 115, 115);">Hubert +Degaudenzi</span>).</li> + <li>Patch #839: enhancements and bug fixes to the +JobOptions/Property part (<span style="color: rgb(115, 115, 115);">Ivan +Belyaev</span>)</li> + <li>Patch #863. Add map property "Environment" to <span + style="font-family: monospace;">ApplicationMgr.</span> Adding a pair +("VARNAME","VALUE") have the result of setting the environment variable +VARNAME to the value "VALUE" before starting any service (except the +message and job option ones) or algorithm. Setting the variable to "" +results in removing it from the environment (same behavior on windows +and linux, see <span style="font-family: monospace;">System::setEnv</span>). +If the variable is already present it prints a warning. (<span + style="color: rgb(115, 115, 115);">Marco Clemencic</span>)</li> + <li>Patch #881. Modifications for the DataOnDemand service (<span + style="color: rgb(115, 115, 115);">Ivan Belyaev</span>)</li> + <ul> + <li>New properties are added <br> + </li> + <ul> + <li><span style="font-family: monospace;">"AlgMap"</span> - the + <span style="font-family: monospace;">map<string,string></span> +property for mapping of address in TES and the algorithm</li> + <li><span style="font-family: monospace;">"NodeMap"</span> - +the <span style="font-family: monospace;">map<string,string></span> +property for mapping of adess in TES and soem predefined data type <br> + </li> + <li><span style="font-family: monospace;">"Prefix"</span> - the +defautl prefix for TES locations, which codul be omitted from TES +location.</li> + </ul> + <li>The treatment of "preceding paths" has been modified a bit. +Now for each data location also all upwards directories are +automatically added as "nodes" (if other behaviour for the +particular not is not defined explicitly) of defautl directory type +"DataObject". As a result a bit confusing coupling of some the +algorithms as "node creators" is removed.</li> + </ul> + </ul> + <li>GaudiPolicy (<span style="font-weight: bold;">v6r0</span> - merge +from the v5r25b branch):</li> + <ul> + <li>Added the -msse2 and -mfpmath=sse options flags for compilation.</li> + <li>Use now LCG_Settings for the platform tags (<span + style="color: rgb(115, 115, 115);">Florence Ranjard</span>)<br> + </li> + <li>Introduced new patterns for future use of the InstallArea. <span + style="font-weight: bold;">Must be compiled with CMT v1r18p20061003 or +later</span> (<span style="color: rgb(115, 115, 115);">Florence Ranjard</span>).</li> + </ul> + <li>GaudiAlg (v9r9): <br> + </li> + <ul> + <li>Patch #861. Add two new options 'RootOnTES' and +'GlobalTimeOffset' to work with Time Alignment events, propagated to +members of a Sequencer and to dependent tools of GAudiAlgorithms/Tools +like the 'Context' property. The value of Context, RootOnTES and +GlobalTimeOffset is printed at the end of the list of algorithms in +GaudiSequencer (<span style="color: rgb(115, 115, 115);">Olivier Callot</span>)<br> + </li> + </ul> + <li>GaudiPoolDb (v2r8):</li> + <ul> + <li>New scripts directory to contain the ROOT macro files (.C).</li> + <li>Patch #855 (<span style="color: rgb(115, 115, 115);">Markus +Frank</span>)</li> + <ul> + <li>Allow to turn OFF the default usage of GFAL. Property: <span + style="font-family: monospace;">PoolDbCacheSvc.UseGFAL, </span>default: + <span style="font-family: monospace;">true.</span><br> + </li> + <li> Enforce checking of file GUIDS when opening existing +files Default: GUID match is required. Switch off using e.g.: <span + style="font-family: monospace;">PoolRootTreeEvtCnvSvc.CheckFIDs = +false;</span></li> + <li>Allow to fill and remember a map with bad files, which cannot +be accessed. Removes dramatically printout since the error trace is +only printed:<br> + </li> + <ul> + <li>once per unaccessible data file</li> + <li>once per container<br> + </li> + </ul> + </ul> + </ul> +</ul> +<h2><a name="v18r7">Gaudi v18r7</a> (2006-09-04)</h2> +<h3>Externals version changes (<a + href="http://spi.cern.ch/cgi-bin/spi/viewConfig.py?platform=Unix&projVers=LCG_46e">LCGCMT_46e</a>)</h3> +<ul> + <li>POOL_2_4_6</li> + <li>ROOT 5.12.00c<br> + </li> + <li>COOL_1_3_2c</li> + <li>CORAL_1_5_3</li> + <li>CASTOR 2.1.0-7</li> +</ul> +<h3>Packages Changes</h3> +<ul> + <li>GaudiKernel (v20r9):</li> + <ul> + <li>Patch #817: fixed unnatural behavior for map used in the +JobOptions with the "+=" statement (I<span + style="color: rgb(115, 115, 115);">van Belyaev</span>)</li> + <li>Correct wrong release of strings allocated by <span + style="font-family: monospace;">strerror</span> and <span + style="font-family: monospace;">dlerror </span>in System.cpp (<span + style="color: rgb(115, 115, 115);">Markus Frank</span>)</li> + <li> Changed interface <span style="font-family: monospace;">IJobOptionsSvc</span> +from pointer to reference to fix bug #18581 overview: Memory leak +due to changed behaviour of the JobOptionsSvc (<span + style="color: rgb(115, 115, 115);">Pere Mato</span>)<br> + </li> + </ul> + <li>GaudiSvc (v14r10):</li> + <ul> + <li>Fix for the ToolSvc::create that didn't return a +StatusCode::FAILURE if the AlgTool::setProperties fails. Now the job +should stop cleanly (<span style="color: rgb(115, 115, 115);">Ivan +Belyaev</span>).</li> + <li>Creation of the DataListenerSvc service. DataListenerSvc +implements the declareInfo methods from IMonitorSvc (without the +histogram and pair methods which have empty implementations) and the +handle method from IIncidentListener to provide monitoring of variables +within a GAUDI algorithm (<span style="color: rgb(115, 115, 115);">Ben +King</span>).</li> + <li> Patch #816. Fix for "-=" to work nicely with new Job Options. +For details, please have a look at the package release notes (<span + style="color: rgb(115, 115, 115);">Alexander Mazurov</span>)</li> + <li> Patch #796: (<span style="color: rgb(115, 115, 115);">Markus +Frank</span>)<br> + </li> + <ul> + <li>Improve output stream:<br> + - If intermediate leaves in the TES are not given in the +ItemList (or OptItemList) then they are automatically added: e.g. +"/Event/MC/Particles" will add: "/Event" (if not already present)<br> + +"/Event/MC" +(if not already present)<br> + +"/Event/MC/Particles"<br> + This behaviour can be switched OFF by setting +the options <span style="font-family: monospace;">OutputStream.VerifyItems += false;</span><br> + - Add optional stream specification SHARED='YES' to be +passed<br> + directly to the conversion service for further +usage.<br> + - Do not connect output device if the leaf list is empty<br> + - Remove unnecessary call to setProperties in initialize().</li> + <li> Create a new output stream <span + style="font-family: monospace;">PersistencySvc/TagCollectionStream.</span> +See<br> + the header file for further information.</li> + <li> Implement service remapping in the ApplicationMgr +differing from the default <class-name>-<class-name> +mapping. Option <span style="font-family: monospace;">SvcMapping</span> +(<span style="font-family: monospace;">vector<string></span>) +allows to change the default services (<span + style="font-family: monospace;">EventDataSvc</span> etc.). Option <span + style="font-family: monospace;">SvcOptMapping</span> allows to enter +additional mappings.</li> + <li>NTuples and tag collections:<br> + - Remove "endreq" entries and replace them by "endmsg"<br> + - Fix bug in <span style="font-family: monospace;">NTupleSvc::isConnected()</span></li> + </ul> + <li> Patch #763. The attached patch encases the library +loading in a try block, and makes it much easier to spot the throwing +of exeception(s) during that phase (<span + style="color: rgb(115, 115, 115);">Chris Jones</span>).</li> + <li>Fix bug #18581 overview: Memory leak due to changed behaviour +of <span style="font-family: monospace;">JobOptionsSvc</span>(<span + style="color: rgb(115, 115, 115);">Pere Mato)</span></li> + </ul> + <li><span style="color: rgb(115, 115, 115);"><span + style="color: rgb(0, 0, 0);">GaudiAlg (v9r8):</span></span></li> + <ul> + <li><span style="color: rgb(115, 115, 115);"><span + style="color: rgb(0, 0, 0);">patch #813. Currently in GaudiAlg there +is an option to split up the path used to save the tuple. This is +useful for HBOOK which hads a hard limit, but not for ROOT which does +not. Currently this option is turned on by default. This simple patch +changes the default behaviour to not applying this directory splitting. +It makes the default state better for ROOT, rather than HBOOK (<span + style="color: rgb(115, 115, 115);">Chris Jones</span>).</span></span></li> + </ul> + <li><span style="color: rgb(115, 115, 115);"><span + style="color: rgb(0, 0, 0);">GaudiObjDesc has been removed from Gaudi.</span></span></li> + <li><span style="color: rgb(115, 115, 115);"><span + style="color: rgb(0, 0, 0);">GaudiExamples (v18r7):</span></span></li> + <ul> + <li><span style="color: rgb(115, 115, 115);"><span + style="color: rgb(0, 0, 0);">Added DataListener example. Please have a +look at the service for the details (<span + style="color: rgb(115, 115, 115);">Ben King</span>).</span></span></li> + </ul> + <li><span style="color: rgb(115, 115, 115);"><span + style="color: rgb(0, 0, 0);">GaudiPoolDb (v2r6): <span + style="color: rgb(115, 115, 115);">Markus Frank,<span + style="color: rgb(0, 0, 0);"> patch #816</span><br> + </span></span></span></li> + <ul> + <li><span style="color: rgb(115, 115, 115);"><span + style="color: rgb(0, 0, 0);"><span style="color: rgb(115, 115, 115);"><span + style="color: rgb(0, 0, 0);">Fix to N-tuple converter when writing +multi dimensional stuff</span><span style="color: rgb(0, 0, 0);"></span></span></span></span></li> + <li><span style="color: rgb(115, 115, 115);"><span + style="color: rgb(0, 0, 0);"><span style="color: rgb(115, 115, 115);"><span + style="color: rgb(0, 0, 0);">Allow conversion service to open files in +shared mode (ie. Files do </span><span style="color: rgb(0, 0, 0);">not +get closed on finalize).</span><span style="color: rgb(0, 0, 0);"></span></span></span></span></li> + <li><span style="color: rgb(115, 115, 115);"><span + style="color: rgb(0, 0, 0);"><span style="color: rgb(115, 115, 115);"><span + style="color: rgb(0, 0, 0);">If file ids cannot be located in the file +catalog, then assume</span><span style="color: rgb(0, 0, 0);"> that the +guid is known to GFAL ie <span style="font-family: monospace;"><FID> +-> gfal:guid:<FID>.</span></span><br + style="color: rgb(0, 0, 0);"> + </span></span></span></li> + </ul> +</ul> +<h2><a style="color: rgb(0, 0, 0);" name="v18r6">Gaudi v18r6</a> +(2006-07-14)</h2> +This release introduces the new options files compiler/parser. It also +uses the new version of ROOT (5.12.00) which is able to open GFAL file.<br> +<h3>Externals version changes (<a + href="http://spi.cern.ch/cgi-bin/spi/viewConfig.py?platform=Unix&projVers=LCG_46">LCGCMT_46</a>)</h3> +<ul> + <li>POOL_2_4_5</li> + <li>ROOT 5.12.00<br> + </li> + <li>COOL_1_3_2a</li> + <li>CORAL_1_5_1</li> + <li>RELAX_1_1_2</li> + <li>GSL 1.8</li> + <li>CASTOR 2.1.0-4<br> + </li> +</ul> +<h3>Packages Changes</h3> +<ul> + <li>GaudiKernel (v20r8):</li> + <ul> + <li>Patch #748: fixed the recipient of the <span + style="font-family: monospace;">std::string::find </span>method. It +should not be assigned to int but to <span + style="font-family: monospace;">std::string::size_type</span> since it +has a different size on 64 bits plateforms (<span + style="color: rgb(115, 115, 115);">Marco Clemencic</span>).</li> + <li>Bug #17739. Changed the return value of GaudiMain. Before it +was always returning 0 and now it returns the StatusCode of the +ApplicationMgr in the UNIX command line way (<span + style="color: rgb(115, 115, 115);">Hubert Degaudenzi</span>).</li> + <ul> + <li>"0" for success</li> + </ul> + <ul> + <li>"1" for failure</li> + </ul> + </ul> + <li>GaudiSvc (v14r9):</li> + <ul> + <li>The 5-argument method <span style="font-family: monospace;">ToolSvc::retrieve</span> +is modified to allow "<span style="font-family: monospace;">ToolType:PUBLIC</span>" +( before it allowed "<span style="font-family: monospace;">ToolType</span>", +"<span style="font-family: monospace;">ToolType/ToolName</span>", "<span + style="font-family: monospace;">ToolType/ToolName:PUBLIC</span>"). "<span + style="font-family: monospace;">ToolType:PUBLIC</span>" was wrongly +resolved in type = "<span style="font-family: monospace;">ToolType:PUBLIC</span>" +(with correct name "ToolType") (<span style="color: rgb(115, 115, 115);">Ivan +Belyaev</span>).</li> + </ul> + <li>GaudiAlg(v9r7): <br> + </li> + <ul> + <li>Improvement of the counters output. Doesn't print the weight +any more if it is trivial (=1) (<span style="color: rgb(115, 115, 115);">Ivan +Belyaev</span>).</li> + <li>Patch #731. This patch allows to set the initial storage of the +TransientFastContainer created via GaudiCommon::getFastContainer. +Incidentally, it also fixes the bug which was preventing +GaudiCommon::getFastContainer to work when the location of the object +does not have the initial root-path (equivalent of "/Event") (<span + style="color: rgb(115, 115, 115);">Marco Clemencic</span>).</li> + </ul> + <li>GaudiKernel (v20r8), GaudiSvc (v14r9), GaudiHistory (v1r5), +GaudiPython (v8r7) and GaudiAlg (v9r7):</li> + <ul> + <li><span style="color: rgb(115, 115, 115);"></span><span + style="color: rgb(115, 115, 115);"></span>New property parser +installed. It relies on the <span style="font-family: monospace;">Boost::spirit</span> +lexer/parser. For details, please consult the GaudiExamples package. +Misc. bug fixes (<span style="color: rgb(115, 115, 115);">Alexander +Mazurov</span> & <span style="color: rgb(115, 115, 115);">Ivan +Belyaev</span>).</li> + </ul> + <li>GaudiExamples (v18r7):</li> + <ul> + <li>Changed the backend for python examples from HBook to ROOT (<span + style="color: rgb(115, 115, 115);">Hubert Degaudenzi</span>).</li> + <li>Inserted example which demonstrated the possibilities of the +new +property parser/compiler (<span style="color: rgb(115, 115, 115);">Ivan +Belyaev</span> and <span style="color: rgb(115, 115, 115);">Alexander +Mazurov</span>).<br> + </li> + </ul> +</ul> +<h2><a name="v18r5">Gaudi v18r5</a> (2006-05-24)</h2> +This release is basically a <span style="font-weight: bold;">bug fix +release</span>. It introduces almost no new feature but uses also the +new version of ROOT and the new version of POOL.<br> +<h3>Externals version changes (<a + href="http://spi.cern.ch/cgi-bin/spi/viewConfig.py?platform=Unix&projVers=LCG_44">LCGCMT_44</a>)</h3> +<ul> + <li>POOL_2_4_3</li> + <li>COOL_1_3_2a</li> + <li>CORAL_1_4_3</li> + <li>RELAX_1_1_1</li> +</ul> +<h3>Packages Changes</h3> +<ul> + <li>GaudiKernel (v20r7)</li> + <ul> + <li>Patch #727. Fixed a compilation problem on Win32 after using +std::map instead of hash_map in <span style="font-family: monospace;">GaudiUtils::HashMap</span> +(<span style="color: rgb(115, 115, 115);">Marco Clemencic</span>).</li> + <li>Patch #725. Fixed a warning on Win32 (<span + style="color: rgb(115, 115, 115);">Marco Clemencic</span>).</li> + <li>Patch #723. Redefines the unit <span + style="font-family: monospace;">"pascal"</span> to <span + style="font-family: monospace;">"Pa"</span> to avoid a name clash that +causes a compiler warning on on Windows in SystemOfUnits.h (<span + style="color: rgb(115, 115, 115);">Marco Cattaneo</span>)</li> + <li>Added templated SmartRefVector constructor with first and last +iterator pointers as arguments (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>)<br> + </li> + </ul> + <li>GaudiExamples (v18r5)</li> + <ul> + <li>Added FastContainers example (<span + style="color: rgb(115, 115, 115);">Marco Clemencic</span>)<br> + </li> + </ul> + <li>GaudiObjDesc (v9r6)</li> + <ul> + <li>Patch #726. Removed a work-around introduced with patch #716 +that is not needed with ROOT 5.11 (the change of default allocator for +contained objects) (<span style="color: rgb(115, 115, 115);">Marco +Clemencic</span>).<br> + </li> + </ul> + <li>GaudiPoolDb (v2r4)</li> + <ul> + <li>Patch #724. Do not use anymore SEAL plugin manager for +IOHandler installation, since this causes malicious interference with +Cintex when used from the python prompt. The IOHandlers get directly +installed in PoolDbCacheSvc::initialize (<span + style="color: rgb(115, 115, 115);">Markus Frank</span>).<br> + </li> + </ul> + <li>GaudiPython (v8r6) - <span style="color: rgb(115, 115, 115);">Pere +Mato</span><br> + </li> + <ul> + <li>Added changes from Radu Stoica: <br> + </li> + <ul> + <li>More protections in iDataService</li> + <li>Introduction of CallbackStreamBuf to be implemented from +Python to catch stream output.<br> + </li> + </ul> + </ul> +</ul> +<h3></h3> +<h2><a name="v18r4">Gaudi v18r4</a> (2006-05-04)</h2> +<h3>Externals version changes (<a + href="http://spi.cern.ch/cgi-bin/spi/viewConfig.py?platform=Unix&projVers=LCG_43a">LCGCMT_43a</a>)</h3> +<ul> + <li>POOL_2_4_1</li> + <li>COOL_1_3_1</li> + <li>CORAL_1_4_2</li> + <li>RELAX_1_1_0</li> +</ul> +<h3>Packages Changes</h3> +<ul> + <li>GaudiSvc (v14r8)</li> + <ul> + <li>Patch #720 (<span style="color: rgb(255, 0, 0);">beta test</span>). +Added a specialized <span style="font-family: monospace;">DataSvc</span> +for <span style="font-family: monospace;">TransientFastContiner</span>: + <span style="font-family: monospace;">FastContainersSvc.</span> +Lifetime of +the objects in this store is the same of objects in <span + style="font-family: monospace;">DetDataSvc. </span>Each <span + style="font-family: monospace;">BeginEvent</span> incident triggers a <span + style="font-family: monospace;">clear()</span> of all the instances of + <span style="font-family: monospace;">TransientFastContinerBase</span> +(<span style="color: rgb(115, 115, 115);">Marco Clemencic</span>).</li> + <li>Removed legacy compiler code in the <span + style="font-family: monospace;">MsgSvc.</span></li> + <li>Patch #707 (<span style="color: rgb(115, 115, 115);">Markus +Frank)</span></li> + <ul> + <li> Suppress Application manager startup banner if +property: <span style="font-family: monospace;">ApplicationMgr.AppName</span> += "";</li> + <li>Allow to attach runables and event loop managers with +different type/name combinations. (as it always was for the +external services....)</li> + </ul> + <li>Inserted ATLAS feature <span style="font-family: monospace;">INamedInterface.</span></li> + <li><span style="font-family: monospace;">PropertyCompiler.cpp:</span> +fixed to allow for a 'f', 'F', 'l', 'L', 'u', or 'U' at the end of a +numerical value. Reported by Wim Lavrijsen (<span + style="color: rgb(115, 115, 115);">Pere Mato</span>).</li> + </ul> + <li>GaudiKernel (v20r6)</li> + <ul> + <li>Patch #720 (<span style="color: rgb(255, 0, 0);">beta test</span>). +Added <span style="font-family: monospace;">TransientFastContiner<T></span> +(and related helper classes <span style="font-family: monospace;">TransientFastContainerBase</span> +and <span style="font-family: monospace;">DefaultObjectCleaner<T></span>). +The new container does its own memory management, recycling the objects +not used and not deleting them when it is cleared (just reset an +internal counter) (<span style="color: rgb(115, 115, 115);">Marco +Clemencic</span>).</li> + <li>Added <span style="font-family: monospace;">PhysicalConstants.h</span> +and <span style="font-family: monospace;">SystemOfUnits.h</span> (from +CLHEP) in GaudiKernel. The constants and units are in the <span + style="font-family: monospace;">Gaudi::Units </span>namespace. </li> + <li>Patch #715. Added boost allocator wrapper (<span + style="color: rgb(115, 115, 115);">Marco Clemencic</span>).</li> + <li>Patch #719. Added 2 functions to make the <span + style="font-family: monospace;">UpdateManagerSvc</span> work safely in +multi-thread environment. They allow to block the activities of +the service while interacting with it (<span + style="color: rgb(115, 115, 115);">Marco Clemencic</span>).</li> + <li>Clean up of the legacy lines of code for obsolete compiler +version (before gcc 3).</li> + <li>Patch #705. The default hash functions is extremely expensive +for integers. This causes extremely poor performaces for the standard <span + style="font-family: monospace;">KeyedContainer<>.</span> The +patch introduces efficient specializations of <span + style="font-family: monospace;">Hash</span><> for int, long and +long long (and unsigned) (<span style="color: rgb(115, 115, 115);">Marco +Clemencic</span>).</li> + <li>Inserted ATLAS feature <span style="font-family: monospace;">INamedInterface</span>.</li> + </ul> + <li>GaudiAlg<span style="font-family: monospace;"> </span>(v9r6)</li> + <ul> + <li>Patch #720. Added to <span style="font-family: monospace;">GaudiCommon</span> +few commodity functions for <span style="font-family: monospace;">FastContainersSvc.</span> + <span style="font-family: monospace;">fastContainersSvc()</span> +returns a pointer to the <span style="font-family: monospace;">FastContainers</span> +Transient Store (creating it if needed). <span + style="font-family: monospace;">getFastContainer<T>(location)</span> +returns a pointer to the <span style="font-family: monospace;">TransientFastContainer<T></span> +located at "location". If it does not exist, it is created and +registered (<span style="color: rgb(115, 115, 115);">Marco Clemencic</span>).</li> + </ul> + <li>GaudiAud (v7r1)</li> + <ul> + <li>Inserted ATLAS feature <span style="font-family: monospace;">INamedInterface</span>.</li> + </ul> + <li>GaudiExamples (v18r4)</li> + <ul> + <li>Removed legacy lines of code for old compilers (before gcc 3)</li> + </ul> + <li>GaudiObjDesc (v9r5)</li> + <ul> + <li>Patch #716. Added support for custom allocators. The type ("NO" +or "BOOST") can be chosen via an attribute of the XML tag class +(allocator) or via a command line option to G.O.D. (that can be used to +override the XML selection) (<span style="color: rgb(115, 115, 115);">Marco +Clemencic</span>).</li> + <li>Turning on doxygen documentation for generated typedefs (<span + style="color: rgb(115, 115, 115);">Stefan Roiser</span>)</li> + </ul> + <li>GaudiPolicy (v5r24)</li> + <ul> + <li>Added <span style="font-family: monospace;">slc4_ia32_gcc345 </span>tags.</li> + </ul> + <li>GaudiPython (v8r5)</li> + <ul> + <li>Clean up of legacy lines of code.</li> + </ul> + <li>RootHistCnv (v9r10)</li> + <ul> + <li>Changed "Athena Trees" to "Gaudi Trees" titles.<br> + </li> + </ul> +</ul> +<h2><a name="v18r3">Gaudi v18r3</a> (2006-04-03)</h2> +<h3>Externals version changes (LCGCMT_42b)</h3> +<ul> + <li>ROOT 5.10.00c</li> + <li>POOL_2_4_0</li> + <li>COOL_1_2_9</li> + <li>CORAL_1_3_1</li> + <li>RELAX_1_0_1</li> + <li>SEAL_1_8_1<br> + </li> +</ul> +<h3>Packages Changes</h3> +<ul> + <li>GaudiPolicy (v5r23)</li> + <ul> + <li>removed the obsolete Solaris platform tags.</li> + <li>changed default optimization for fflags (Fortran) to "<code>-O2</code>".</li> + <li>added <code>slc3_amd64_gcc344</code> tags and <code>slc3_ia32_gcc344</code>. + </li> + <li>remove <code>$(use_linkopts)</code> from pattern <code><library>_shlibflags</code></li> + <li>remove <code>rh*</code> and <code>slc3_gcc323</code> tags +(not the <code>slc3_ia32_gcc323</code> tags)</li> + </ul> + <li>GaudiKernel (v20r5)</li> + <ul> + <li>modified the returned values of the Auditors +beforeExecute/afterExecute (etc) to be "<code>void</code>" instead of +"<code>StatusCode::SUCCESS</code>".</li> + <li>patch #691. Add support for objects in N-tuples. Note: This +only works for <code>NTuple::Item</code>. <code>NTuple::Array</code> +and <code>NTuple::Matrix</code> is +__NOT__ supported for objects. If you need this functionality store an <code>std::vector<Object*></code>. +See +GaudiExamples/POOLIO/EvtCollectionWrite +for an example of the usage (<span style="color: rgb(115, 115, 115);">Markus +Frank</span>).</li> + <li>Added GaudiMain.cpp in the library (<span + style="color: rgb(115, 115, 115);">Markus Frank</span>).</li> + <li>patch #668. Fix retrieval of error string in <code>System::getErrorString()</code>. +The routine caused a core +dump on linux when +dl_error() returned NULL (<span style="color: rgb(115, 115, 115);">Markus +Frank</span>).</li> + <li>patch #678. It has been reported that MS implementation of <code>hash_map</code> +is extremely slow. The idea is to use <code>std::map</code> +instead (which +is faster than hash_map on win), while we investigate to find a better +solution (<span style="color: rgb(115, 115, 115);">Marco Clemencic</span>).</li> + <li>fixed windows compilation warning (bug #14852).</li> + </ul> + <li>GaudiSvc (v14r7)</li> + <ul> + <li>Fix memory leak in <code>EventSelector::releaseContext</code>: +context +object was not always deleted (<span style="color: rgb(115, 115, 115);">Markus +Frank</span>).</li> + </ul> + <li>GaudiPoolDb (v2r3) - <span style="color: rgb(115, 115, 115);">Markus +Frank</span><br> + </li> + <ul> + <li>Add property AgeLimit to the PoolDbCnvSvc. This allows to defer +the closing of databases.</li> + <li>Tests: update + removal of CLHEP dependency. Change options to +use the precompiled dictionaries from Relax.</li> + <li>Remove patches for ROOT 3.</li> + </ul> + <ul> + <li>Modify printout when unable to load dictionary shared library</li> + </ul> + <ul> + <li>Adapt tests in requirements to use Reflex from ROOT<br> + </li> + </ul> + <li>GaudiAud (v7r0)</li> + <ul> + <li>replaced the returned StatusCode with void for <code>before*/after*</code> +public methods of auditors. Interface changed.</li> + </ul> + <li>GaudiObjDesc (v9r4) - <span style="color: rgb(115, 115, 115);">Stefan +Roiser</span><br> + </li> + <ul> + <li>introducing two new typedefs <br> + </li> + <ul style="font-family: monospace;"> + <li><code>typedef KeyedContainer<T,Containers::HashMap> +Container;</code></li> + </ul> + <ul style="font-family: monospace;"> + <li><code>typedef KeyedContainer<const +T,Containers::Hashmap> ConstContainer;</code></li> + </ul> + <li>These macros are generated in addition to the <br> + </li> + <ul> + <li><code>typedef KeyedContainer<T,Containers::HashMap> +Ts;(Ts being the the plurial of the class name). </code><br> + </li> + </ul> + <li>These macros will be created if a class directly inherits from <code>KeyedObject</code> +or if the <code>keyedContTypeDef</code> attribute of <code><class></code> +is set to <code>"TRUE"</code></li> + <li>fix for destructor implementation. An empty code element will +result in an empty inline implementation</li> + </ul> + <li>GaudiAlg (v9r5)</li> + <ul> + <li>changed the return value of the <code>{GaudiAlgorithm,GaudiTool}::put</code> +from <code>StatusCode::SUCCESS</code> to void.</li> + <li>patch #669: (<span style="color: rgb(115, 115, 115);">Chris +Jones</span>)<br> + </li> + <ul> + <li>Remove boost from public interface (includes in GaudiAlg +directory)</li> + </ul> + <ul> + <li> Implement proper postfix and prefix <code>++</code> +and <code>--</code> operators to <code>GaudiAlg::ID</code></li> + </ul> + <li>patch #665. Make the counter printing by default turned on in +GaudiCommon. make the counter number summary obey the same job option +(Chris Jones).</li> + <li>fix -no_auto_import statements in the requirements file. Remove +extra semicolon producing warnings with GCC 3.4.4.</li> + </ul> +</ul> +<h2><a name="v18r2">Gaudi v18r2</a> (2005-12-20)</h2> +<ul> +</ul> +<h3>Global Changes</h3> +<ul> + <li>First version released using ROOT::Reflex.</li> + <ul> + <li> A new interface package Reflex has been created</li> + <li>It define a new cmt pattern <span style="font-weight: bold;">reflex_dictionary + </span>which replaces the old cmt pattern <span + style="font-weight: bold;">lcg_dictionary</span></li> + <li>The "--split" and "--reflex" options are therefore now obsolete.</li> + </ul> + <li>The dictionary libraries for the common libraries are now +provided by a new package: RELAX (CLHEPRflx, HepMCRflx, MathRflx, +STLRflx, ReflexRflx). They replaced the old ones provided originally by +SEAL.<br> + </li> + <li>Use of the macros defined in +GaudiKernel/DeclareFactoryEntries wherever possible in the Gaudi +packages. </li> +</ul> +<h3>Externals version changes (<a + href="http://spi.cern.ch/cgi-bin/spi/viewConfig.py?platform=Unix&projVers=LCG_41">LCGCMT_41</a>)</h3> +<ul> + <li>ROOT 5.08.00b</li> + <li>POOL_2_3_0</li> + <li>SEAL_1_8_0</li> + <li>COOL_1_2_7</li> + <li>CORAL_1_2_1</li> + <li>Reflex (from ROOT 5.08.00b)<br> + </li> + <li>RELAX_0_1_0<br> + </li> +</ul> +<h3>Packages Changes</h3> +<ul> + <li>GaudiKernel (v20r4)</li> + <ul> + <li>Added new program genconf to generate the python configuration +file for component libraries (<span style="color: rgb(115, 115, 115);">Pere +Mato</span>)</li> + <li>Fix bug #14665 overview: IID_IAlgorithm and IID_IConversionSvc +Conflict (<span style="color: rgb(115, 115, 115);">Pere Mato</span>)</li> + <li>Moved some class in the dictionary of GaudiPython to the +dictionary in GaudiKernel (<span style="color: rgb(115, 115, 115);">Pere +Mato</span>)</li> + <li>Added class Gaudi::Time (based on seal::Time). Updated +interfaces IDetDataSvc, IValidity and IUpdateManager in order to use +the new class. Modified dictionary.h and dictionary.xml in order to +produce dictionaries for Gaudi::Time (<span + style="color: rgb(115, 115, 115);">Marco Clemencic</span>).</li> + </ul> + <li>GaudiObjDesc (v9r3)<br> + </li> + <ul> + <li>Fix allowing tospecify additional flags to be passed to gccxml, +by defining the macro use_obj2dict_gccxmlflags (<span + style="color: rgb(115, 115, 115);">Marco Cattaneo</span>)</li> + </ul> + <li>GaudiPI (v1r0)</li> + <ul> + <li>refactoring of the #include statements in order to conform to +the Gaudi way: #include "GaudiPI/..."</li> + <li>Removed XML files and removed dependency to Expat (<span + style="color: rgb(115, 115, 115);">Pere Mato</span>)</li> + </ul> + <li>GaudiPolicy (v5r22)</li> + <ul> + <li>added $(<library>_use_linkopts) into the macro +<library>_shlibflags for various patterns. This fixes the problem +with the -import option not taken into account when building libraries +(visible on windows only) (<span style="color: rgb(115, 115, 115);">Pere +Mato</span>)</li> + </ul> + <li>GaudiPython (v8r3) - <span style="color: rgb(115, 115, 115);">Pere +Mato</span></li> + <ul> + <li> moved classes in dictionary to GaudiKernel dictionary</li> + <li> gaudiconf.py: introduced the use of __new__ to avoid +duplication of configurables</li> + <li> gaudimodule.py: added iteration catabilities to +ObjectContainedBase (all KeyedContainers)</li> + <li> tests: updated to use KeyedContained instead of +ObjectVector</li> + <li>inserted workaround to match the correct naming of dictionaries +on Linux</li> + </ul> + <li>GaudiSvc (v14r6) - <span style="color: rgb(115, 115, 115);">Marco +Clemencic</span> </li> + <ul> + <li>patch #659. Modified POOLIO and RootIO examples replacing +ITime+TimePoint with Gaudi::Time .</li> + <li>patch #648. Currently, an incident listener cannot stop the +execution of a program even if it throws an exception. In some cases it +is important to exit if a problem occurs, to avoid hard to debug +problems. A simple way to allow an incident listener to stop the +program is to use the IEventProcessor::stopRun() method. <br> + <br> + </li> + </ul> +</ul> +<h2><a name="v18r1">Gaudi v18r1</a> (2005-12-20)</h2> +<h3>Externals version changes (LCGCMT_40a)</h3> +<ul> + <li>Python 2.4.2</li> + <li>ROOT 5.08.00</li> + <li>POOL_2_2_7</li> + <li>SEAL_1_7_9</li> + <li>COOL_1_2_7</li> + <li>CORAL_1_2_1<br> + </li> + <li>PI removed (replace by GaudiPI)<br> + </li> +</ul> +<h3>Packages Changes</h3> +<ul> + <li>GaudiPI (v0r6)</li> + <ul> + <li>replaces the PI package.</li> + </ul> + <li>GaudiKernel (v20r3)</li> + <ul> + <li>added the UpdateManager interface (<span + style="color: rgb(115, 115, 115);">Marco Clemencic</span>)</li> + <li>Fix problems of KeyedContainer when using keys with explicit +constructors (<span style="color: rgb(115, 115, 115);">Markus Frank</span>).</li> + </ul> + <li>GaudiAlg (v9r3)</li> + <ul> + <li>added registration of the current instance to the UpdateManager +as a consumer for a condition in GaudiCommon (<span + style="color: rgb(115, 115, 115);">Marco Clemencic</span>).</li> + <li>remove the member functions of class Tuples::TupleObj for +filling the N-Tuple with CLHEP objects (3D and 4D-vectors) (<span + style="color: rgb(115, 115, 115);">Vanya Belyaev</span>).</li> + </ul> + <li>GaudiPython (v8r2) - (<span style="color: rgb(115, 115, 115);">Pere +Mato</span>)<br> + </li> + <ul> + <li>Changed requirements to be able to put temporary libraries +ahead in the LD_LIBRARY_PATH</li> + <li>Added PyCintex.py as a temporary basis</li> + <li>Changed the order when loading the dictionaries</li> + <li>Minor changes to make python GaudiExamples to work</li> + </ul> + <li>HbookCnv (v14r6)</li> + <ul> + <li>Modification to allow creation of huge hbook ntuples. +100% backward compatible (<span style="color: rgb(115, 115, 115);">Vanya +Belyaev</span>)</li> + </ul> + <li>RootHistCnv (v9r7)</li> + <ul> + <li>replacement of the PI dependency with the GaudiPI dependency</li> + </ul> + <li>GaudiSiteSvc (v1r4) - (<span style="color: rgb(115, 115, 115);">Hubert +Degaudenzi</span>)<br> + </li> + <ul> + <li>added the flag STAGE_DEFERRED to the stagein command in order +to +allocate the disk space only when the tape is staged on the robot.</li> + <li>added the flag STAGE_NORETRY to the stagein command in order to +cure the hang of the system when a medium error occurs.</li> + </ul> + <li>GaudiExamples (v18r1)</li> + <ul> + <li>added the examples from the python directory (<span + style="color: rgb(115, 115, 115);">Vanya</span>). Added the +corresponding reference files (.pyref).</li> + <li>added new (sub)example which illustrate how to define +effective custom columns for N-Tuple. In this example filling N-Tuple +with "dublets" and "triplets" are illustrated, where "dublet" is +std::pair<double,double> and "triplet" is +std::pair<std::pair<double,double>,double> (<span + style="color: rgb(115, 115, 115);">Vanya Belyaev</span>)<br> + </li> + </ul> +</ul> +<h2><a name="v18r0">Gaudi v18r0</a> (2005-11-22)</h2> +First data format <span style="font-weight: bold;">incompatible</span> +series. The <a href="#v17r2hacks">hacks</a> which allowed to read back +the old format (RTTC) have been removed.<br> +<h3>Packages Changes</h3> +<ul> + <li>GaudiKernel (v20r1) + <ul> + <li>Added 3 new classes to replace the HashTable and the hacks in +stl_hash.h: GaudiUtils::Map, GaudiUtils::Hash and GaudiUtils::HashMap (<font + color="#808080">Marco Clemencic</font>)</li> + <li>Change output level data member in Algorithms and AlgTools +from int to IntegerProperty, and add a non-const access method for this +property. Allows uses to <b>attach callback handle methods</b> to this +property. (<font color="#808080">Chris Jones</font>)</li> + <li>Added new methods to IAlgorithm: isInitialized(), +isFinalized() and isExecuted()</li> + <li>Fixed problems of KeyedContainer when using keys with +explicit constructors.</li> + <li>Added new class GaudiUtils::VectorMap that implements an +associative vector (<font color="#808080">Vanya Belyaev</font>)</li> + <li>Converted the Gaudi class in Bootstrap.h into a namespace. +Needed as namespace. </li> + </ul> + </li> + <li>GaudiAlg(v9r2) + <ul> + <li>Adapted to use the new classes (GaudiMap, GaudiHash, +GaudiHashMap) replacing HashTable and the hacks in stl_hash.h (<font + color="#808080">Marco Clemencic</font>)</li> + <li>Added fix to GaudiCommon to allow the changes in the +messaging levels to be correctly picked up. Attaches a callback +function to the OutputLevel property of the Algorithm or AlgTool base +classes</li> + <li>Added fix obscure crash when using profile histograms in +tools, with literal IDs and multiple sub-directories. Fixed by cleaning +up the finalisation counting of histograms.</li> + </ul> + </li> + <li>GaudiObjDesc (v9r1) + <ul> + <li>Merged in some more changes from the branch </li> + <li>MsgStream overloading for public enum types (by default)</li> + <li>Namespace LHCb - all event classes and namespaces live in the +namespace LHCb</li> + <li>Renamed container typedefs for classes inheriting from +ContainedObject</li> + <li>Only one typedef (from vector), the name has changed from +<Class>Vector to <Class>es (plural)</li> + <li>The typedef for lists has been removed</li> + <li>Removed obsolete xml attributes</li> + </ul> + </li> + <li>GaudiSvc (v14r4) + <ul> + <li>Eventloop calls resetExecuted() to all "known" algorithms +instead to only the topAlgs. This was needed to be able to call +sequences by the DataOnDemand service.</li> + </ul> + </li> + <li>GaudiPython (v8r1) + <ul> + <li>Minor changes. Removed unneeded dictionary entries (not +needed with PyROOT).</li> + </ul> + </li> +</ul> +<h2><a name="v17r2">Gaudi v17r2</a> (2005-11-14)</h2> +<h3>Externals version changes (LCGCMT_38)</h3> +<ul> + <li>ROOT 5.06.00</li> + <li>POOL_2_2_4</li> + <li>SEAL_1_7_6</li> + <li>COOL_1_2_6</li> +</ul> +<h3>Minor Changes</h3> +<ul> + <li>GaudiKernel (v20r1)</li> + <ul> + <li>added the transient state to the refCount and hasKey Methods of +KeyedObject in the dictionary_rflx.xml selection file (<span + style="color: rgb(115, 115, 115);">Markus Frank</span>).</li> + <li>removed obsolete files GaudiKernel/KeyedDictionary.h and +GaudiKernel/SealDictonary.h (<span style="color: rgb(115, 115, 115);">Marco +Cattaneo</span>).<br> + </li> + </ul> + <li>GaudiSvc (v14r2)</li> + <ul> + <li>bug #12556. fix behavior for the "-=" of the property compiler. +Now only issues a warning if the keyword to be removed is not in the +list. Before it was stopping the job (<span + style="color: rgb(115, 115, 115);">Patrick Koppenburg</span>).</li> + <li>modified requirements file for future use of the new package +GaudiPI.</li> + </ul> + <li>RootHistCnv (v9r6)</li> + <ul> + <li>modified requirements file for future use of the new package +GaudiPI.</li> + </ul> + <li>GaudiObjDesc (v8r2 branch v8r1b)<a name="v17r2hacks"></a></li> + <ul> + <li>Add "ioname" hack to lcgdict selection xml file, to be picked +by cintex. Needed to read event classes written with old GOD generated +dictionaries, where attribute names are not prefixed by "m_". This hack +must be removed before writing large amounts of new data and it is +sitting in a different branch (v8r1b) (<span + style="color: rgb(115, 115, 115);">Marco Cattaneo</span>).</li> + </ul> + <li>GaudiPython (v8r0) + <ul> + <li>Changed package to based it with the Reflex dictionaries +and PyROOT (part of ROOT). The new package uses the module +PyCintex that interfaces Reflex to CINT, which is what PyROOT uses to +provide the generic Python interface (Pere Mato). </li> + </ul> + </li> +</ul> +<h2><a name="v17r1">Gaudi v17r1</a> (2005-10-13)</h2> +<h3>Externals version changes (LCGCMT_37c)</h3> +<ul> + <li>POOL_2_2_2</li> + <li>SEAL_1_7_4</li> +</ul> +<h3>Changes</h3> +<ul> + <li>few fixes in GaudiObjDesc to accomodate new reflection system +(Reflex)</li> +</ul> +<h2><a name="v17r0">Gaudi v17r0</a> (2005-10-04)</h2> +<h3>Externals version changes (LCGCMT_37b)</h3> +<ul> + <li>COOL_1_2_4, MathLib_1_0_0</li> + <li>PI_1_3_6, POOL_2_2_1, ROOT 4.04.02g</li> + <li>SEAL_1_7_3</li> +</ul> +<h3>Changes</h3> +<ul> + <li>GaudiAlg (v9r0)</li> + <ul> + <li>patch #493. Add a jobOption 'GlobalTiming' (bool) to the +SequencerTimerTool. If set 'true', this forces 'measureTime' for all +GaudiSequencer. Default is false. This is a way to get an indented list +of the algorithms used in a job (<span + style="color: rgb(115, 115, 115);">Olivier Callot</span>).</li> + <li>GaudiAlgorithm and GauidTool classes gets the new functionality +for generic statistical counters (<span + style="color: rgb(115, 115, 115);">Ivan Belyaev</span>).</li> + <li> Few technical changes to improve the overall flexibility +and the control for printout (<span style="color: rgb(115, 115, 115);">Ivan +Belyaev</span>).</li> + <li> Few technical reshuffling in between public/protected and +private interfaces for simplicity of building dictionaries (<span + style="color: rgb(115, 115, 115);">Ivan Belyaev</span>).</li> + </ul> + <li>GaudiAlg (v9r1)</li> + <ul> + <li>Introduction of support for profile histograms and also the +introduction of common code for the tools and algorithms (<span + style="color: rgb(115, 115, 115);">Chris Jones</span>).</li> + </ul> + <li>GaudiExamples (v17r0)</li> + <ul> + <li>Patch #505. New examples for GaudiExample package to illustrate +new features in GaudiAlg and GaudiPython packages. The detailed +description of new features can be found in doc/release.notes file (<span + style="color: rgb(115, 115, 115);">Ivan Belyaev</span>).</li> + <li>Add algorithm GaudiHistoAlgorithm to the src/Histograms +example. Illustrates the use of the GaudiHistoAlg base class (<span + style="color: rgb(115, 115, 115);">Chris Jones</span>).</li> + <li>Update TupleAlg example algorithm to illustrate the use of both +numeric and literal IDs (<span style="color: rgb(115, 115, 115);">Chris +Jones</span>).</li> + <li>Patch #518. New python example to access Event Tag Collections +form python. As input the "pseudo-DST", created by C++-example +EvtColsEx (see patch #517) is used (<span + style="color: rgb(115, 115, 115);">Ivan Belyaev</span>).</li> + </ul> + <li>GaudiKernel (v20r0)</li> + <ul> + <li>patch #476. Overload for the MsgStream::operator << +for StatusCode to cure failed compilation of some Reflex dictionaries (<span + style="color: rgb(115, 115, 115);">Stefan Roiser</span>).</li> + <li>patch #445. Move basic dictionaries from GaudiPoolDb to +GaudiKernel (<span style="color: rgb(115, 115, 115);">Markus Frank</span>).</li> + <ul> + <li>gccxml inputs in new subdirectory dict <br> + </li> + <li>output id in a dictionary DLL called "GaudiKernelDict" <br> + </li> + <li>Reflex dictionary produced in parallel: "GaudiKernelRflxDict"</li> + </ul> + <li>patch #502. Minor polishing of Stat and StatEntity classes to +improve their functionality (in absolutely backward compatible way) (<span + style="color: rgb(115, 115, 115);">Ivan Belyaev</span>).</li> + <li>added 'long long' format in the instantiation of SimpleProperty +and SimplePropertyRef templates.</li> + <li>Changed CLID from "unsigned long" to "unsigned int" to satisfy +the new POOL 2_2_0 which uses reflex.</li> + </ul> + <li>GaudiPolicy (v5r21)</li> + <ul> + <li>added slc3_ia32_gcc323_cov tag for coverage test. To be used +along with gcov or lcov</li> + <li>added slc3_ia32_gcc323_pro tag for profiling. To be used along +gprof or kcachegrind.</li> + <li>added dependency of the component library on the linker library +(when it exists) (<span style="color: rgb(115, 115, 115);">Pere Mato</span>)</li> + </ul> + <li>HbookCnv (v14r4)</li> + <ul> + <li>fix for the problem of the overflow of the 2D histograms. +HbookCnv was producing wrong numbers for overflows in N/W/S/E summing +up the whole row/column (<span style="color: rgb(115, 115, 115);">Stefan +Roiser</span>).</li> + </ul> + <li>HbookCnv (v14r5)</li> + <ul> + <li>Update Histogram and NTuple converters to reassign IDs if a +non-numeric ID is found. Reassigned IDs start at 1001 and increment +each time. If subsequently, an ID is found (in the same directry) +that corresponds to one of the reassigned IDs, then that ID is also +reassigned (This only occurs if a mixture of numeric and non-numeric +IDs is used, which is probably rare). A warning is issued for all +reassignments (<span style="color: rgb(115, 115, 115);">Chris Jones</span>).</li> + </ul> + <li>RootHistCnv (v9r5)</li> + <ul> + <li>patch #506. Creating H2D and H3D histograms (function +createPersistent) was creating wrong values for weights in some cases. +This patch removes all the implementation code and calls the Aida Root +histogram converter (from pi) instead (<span + style="color: rgb(115, 115, 115);">Stephan Roiser</span>).</li> + </ul> + <li>GaudiPoolDb (v2r0)</li> + <ul> + <li>Multiple changes. Remove dependency from POOL persistency +service. Adapt to ROOT 4 using reflex (<span + style="color: rgb(115, 115, 115);">Markus Frank</span>).</li> + </ul> + <li>GaudiPython (v7r0)</li> + <ul> + <li>patch #504. It is mainly the extension of GaudiPython to +incorporate C++ classes from GaudiAlg package. These changes includes +the resuffling of existing lines to allow use them outside GaudiPython +New module python/GaudiAlgs.py provides 3 base classes (python versions +of GaudiAlgorithm, GaudiHistoiAlg and GaudiTupleAlg classes) For +detailes description of new features see doc/release.notes file (<span + style="color: rgb(115, 115, 115);">Ivan Belyaev</span>).</li> + <li>patch #512 and #516. Modifications for updated GaudiAlg to +incorporate very attractive feature: "universal" (numeric or +alphanumeric) histogram/ntuple identifier, introduced by Chris Jones +into GaudiAlg (<span style="color: rgb(115, 115, 115);">Ivan Belyaev</span>)</li> + </ul> + <li>GaudiObjDesc (v8r0)</li> + <ul> + <li>Move dictionary generation from Reflection to Reflex. GOD now +produces header files with proper includes and instantiations of +templated classes plus a selection.xml file which will be passed to the +SEAL lcgdict command to generate dictionary source code (<span + style="color: rgb(115, 115, 115);">Stefan Roiser</span>).</li> + </ul> +</ul> +<h2><a name="v16r5">Gaudi v16r5</a> (2005-07-08)</h2> +<h3>No externals version changes (LCG_35)</h3> +<h3>Minor Changes</h3> +<ul> + <li>GaudiPython (v6r13)</li> + <ul> + <li>gaudimodule.py: removed 'GaudiDb' from the list of DLLs (<span + style="color: rgb(115, 115, 115);">Pere Mato</span>).</li> + <li>getComponentProperties(): changed the order of initialization +of AppMgr (<span style="color: rgb(115, 115, 115);">Pere Mato</span>).</li> + </ul> + <li>GaudiSvc (v14r0)</li> + <ul> + <li>use TimePoint instead of ITime* (should be faster) and few +fixes (<span style="color: rgb(115, 115, 115);">Marco Clemencic</span>)</li> + <li>Implementation of an output stream doing a shallow copy of the +main input file identified by it's dbase set in /Event. /Event may be +overwritten by ItemList[0]. Also sub-trees may be written for +interactive analysis, by specifying several sub-trees in ItemList. +Otherwise identical behavior to OutputStream (<span + style="color: rgb(115, 115, 115);">Markus Frank</span>).</li> + <li> Explicitly finalize each stream after usage. It turns out that +for several thousands of input files even the properties allocate +several MBytes of memory (found by Niko during LHCb-RTTC) (<span + style="color: rgb(115, 115, 115);">Markus Frank</span>).</li> + <li>The property compiler now supports the removal of an option +(-=) (<span style="color: rgb(115, 115, 115);">Patrick Koppenburg</span>)</li> + </ul> + <li>GaudiObjDesc (v7r4)</li> + <ul> + <li>adding template support for methods (attribute template). No +dictionaries for templated methods are created (if needed use lcgdict) (<span + style="color: rgb(115, 115, 115);">Stefan Roiser</span>).</li> + <li>new <bitfield> attribute "exclusive" triggers inclusive +or exclusive setting of the bitfield. Fix for bitfield check-methods, +bit to check shifted into right position (<span + style="color: rgb(115, 115, 115);">Stefan Roiser</span>)</li> + </ul> + <li>GaudiAlg (v8r9)</li> + <ul> + <li>New data member 'm_context' and public accessor 'context()' for +GaudiAlgorithm and GaudiTool, a string which is passed from +GaudiSequencer to created GAudiAlgorithms, or to GaudiTools created by +a GaudiAlgorithm or GaudiTool. If the value is non empty, it is printed +in the base class constructor and available as early as in the class +constructor (<span style="color: rgb(115, 115, 115);">Olivier Callot</span>).</li> + <li>New method to ISequencerTimerTool : int indexByName( +std::string ). This returns the index of the timer with that name. +Leading and trailing spaces are ignored. If not found, -1 is returned. +This can be used to get the time spent on the current event by another +algorithm, using 'lastTime( int )', for monitoring purpose (<span + style="color: rgb(115, 115, 115);">Olivier Callot</span>).</li> + </ul> + <li>GaudiKernel (v19r3)</li> + <ul> + <li>modifications for the new service StagerSvc. Added IStagerSvc +and a new incident "EndStream" that will trigger the end of the +processing of one file (<span style="color: rgb(115, 115, 115);">Hubert +Degaudenzi</span>).</li> + </ul> + <li>GaudiExamples (v16r3)</li> + <ul> + <li>added example for the Stager Service (<span + style="color: rgb(115, 115, 115);">Hubert Degaudenzi</span>)</li> + </ul> + <li>GaudiSiteSvc (v1r0)</li> + <ul> + <li>new package import. Added the StagerSvc. Will only be built if +CMTSITE is set to +CERN. The function of this service is to stage in advance a set of +CASTOR files (<span style="color: rgb(115, 115, 115);">Hubert Degaudenzi</span>).</li> + </ul> +</ul> +<h2><a name="v16r4">Gaudi v16r4</a> (2005-05-20)</h2> +<h3>Externals version changes (LCG_35)</h3> +<ul> + <li>CERNLIB 2004, ROOT 4.04.02<br> + </li> + <li>SEAL 1.6.3, POOL 2.0.7, PI 1.3.3</li> +</ul> +<h3>Minor Changes</h3> +<ul> + <li>GaudiKernel (v19r2)</li> + <ul> + <li>Added const qualifiers to function members of the IValidity +class (<span style="color: rgb(115, 115, 115);">Marco Clemencic</span>)</li> + <li>Added path access to SmartRef (<span + style="color: rgb(115, 115, 115);">Marco Clemencic</span>)<br> + </li> + </ul> + <li>GaudiSvc (v13r4)<br> + </li> + <ul> + <li>Added fix to avoid an endless loop if an environment variable +doesn't exist in the options file (<span + style="color: rgb(115, 115, 115);">Pere Mato</span>) </li> + <li>Fixed bug #8498 overview: cannot use the same file twice as +input to EventSelector.EventSelector/EventSelector.cpp: Added a warning +when the input file is already in the list and continue. (<span + style="color: rgb(115, 115, 115);">Pere Mato</span>)</li> + <li>Fixed bug #5476 overview: Gaudi crashes when having 2 topalgs +with the same name. ApplicationMgr/MinimalEventLoopMgr.cpp added extra +addRef(). (<span style="color: rgb(115, 115, 115);">Pere Mato</span>)</li> + </ul> + <li>GaudiExamples (v16r2)</li> + <ul> + <li>Added example for Vanya's extensions of TupleAlg (<span + style="color: rgb(115, 115, 115);">Ivan Belyaev</span>). </li> + <ul> + </ul> + </ul> + <li>GaudiAlg (v8r8)</li> + <ul> + <li>Extensions of the TupleAlg algorithm. Please have a look at the +release notes of the package. (<font color="#737373"><tt>Ivan Belyaev</tt></font>)</li> + <li>Change the time normalisation in SequencerTimerTool: Default is +not to normalise, i.e. to print measured time, but we always print the +value of the normalisation factor, now compared to 2.8 GHz Xeon (<span + style="color: rgb(115, 115, 115);">Olivier Callot</span>)<br> + </li> + <ul> + </ul> + </ul> +</ul> +<h2><a name="v16r3">Gaudi v16r3</a> (2005-04-14)</h2> +<h3>Externals version changes (LCG_34)</h3> +<ul> + <li>CERNLIB 2004, ROOT 4.03.04a<br> + </li> + <li>SEAL 1.6.2, POOL 2.0.1, PI 1.3.2</li> +</ul> +<h3>Minor Changes</h3> +<ul> + <li>GaudiKernel (v19r1)</li> + <ul> + <li>Removed obsolete interface files</li> + </ul> + <li>GaudiSvc (v13r3)<br> + </li> + <ul> + <li>Added AIDATupleSvc (<span style="color: rgb(115, 115, 115);">Manuel +Domenech</span>)</li> + <li>Add AppName and AppVersion properties to +ApplicationMgr to print a welcome message using their value</li> + </ul> +</ul> +<ul> +</ul> +<ul> + <li>GaudiExamples (v16r1)</li> + <ul> + <li>added CppUnit in the requirements file</li> + </ul> + <ul> + <li>added "ApplMgr.appName=GSLTools" to test the renaming of +the application manager with GSLTools.exe.</li> + </ul> + <ul> + <li>added AIDATuple examples:</li> + <ol> + <li>to write Tuples: AIDATupleWrite.exe +../options/AIDATupleWrite.opts</li> + <li>to read Tuples: AIDATupleRead.exe +../options/AIDATupleRead.opts</li> + </ol> + </ul> + <ul> + </ul> +</ul> +<ul> + <li>GaudiAlg (v8r7)</li> + <ul> + <li>removed memory leaks from GaudiTool and GaudiAlgorithm finalize +methods (<font color="#737373"><tt>Ivan Belyaev and Chris Jones</tt></font>)<br> + </li> + </ul> +</ul> +<h2><a name="v16r2">Gaudi v16r2</a> (2005-03-02)</h2> +<h3>Externals version changes (LCG_33)</h3> +<ul> + <li>CERNLIB 2004, ROOT 4.03.02, CLHEP 1.9.1.2_spi1</li> + <li>SEAL 1.6.0, POOL 2.0.0, PI 1.3.0</li> +</ul> +<h3>Minor Changes</h3> +<ul> + <li>GaudiKernel (v19r0) + <ul> + <li>Changed interfaces IAlgManager and ISvcManager: removed +obsolete methods and added getFactory(...)</li> + <li>System.cpp: applied patch to overcome CXXABI problem (merge +from v17r1)</li> + <li>Added the interface IAIDATupleSvc.h for the AIDA-based tuple +service.</li> + <li>ClassID, Algorithm.h and lib/Algorithm.cpp: added +declarations for the AIDATupleSvc.</li> + </ul> + </li> + <li>GaudiSvc (v13r2) + <ul> + <li>EventSelector: Use unmanaged service for sub-event selector. +Sub-event selector management is entirely done by the event selector +itself. This should solve the crashes when opening several files on +SLC3.</li> + <li>JobOptionsSvc: Added the possibility to print the list of +jobOptions, sorted. + <ul> + <li>The line "#printOptions" switches off completely the +printing of jobOptions during their processing, but afterwards print a +sorted list of options, truncated to about 100 characters. Truncation +can be suppressed by adding the keyword 'full' i.e. "#printOptions +full" prints all options.</li> + <li>Make the "#pragma print on/off" nested, i.e. a counter is +used, incremented by "print off" and decremented by "print on", and +printing of options is done only when the counter is zero.</li> + <li>The included files (open/return) are printed only if the +print level is zero.</li> + </ul> + </li> + <li>ToolSvc.cpp(.h): Added catch clauses in initialization and +finalization of tools</li> + <li>Added AIDATupleSvc to work with tuples using the AIDA +interfaces. Currently suports ROOT and XML persistency.</li> + </ul> + </li> + <li>GaudiAlg (v8r6) + <ul> + <li>TupleObj.h/.cpp: Overcome the problem that CLHEP::Hep3Vector +and HepGeom::BasicVector3D<double> are completely unrelated +classes in the new CLHEP.</li> + </ul> + </li> +</ul> +<h2><a name="v16r1">Gaudi v16r1</a> (2005-02-09)</h2> +<h3>Minor Changes</h3> +<ul> + <li>GaudiKernel (v18r2) + <ul> + <li>System.cpp(typeinfoName): removed extra spaces between types +and "*" and "&</li> + </ul> + </li> + <li>GaudiAlg (v8r5) + <ul> + <li>Added #include "GaudiAlg/TupleObj.h"</li> + <li>Changes in comments to fix Doxygen documentation</li> + </ul> + </li> + <li>GaudiObjDesc (v7r3) + <ul> + <li>lowering getter names of bitfields (as for all other +getters) (e.g. HTL()->htl(), PDRow()->pdRow())</li> + <li>fix for dictalias when generating info for dictionary fields</li> + <li>generation of bitfield accessor methods fixed</li> + <li>added support for transient attribute of <attribute> +element</li> + <li>fix to not self include the header file after the class +definition</li> + </ul> + </li> +</ul> +<h2><a name="v16r0">Gaudi v16r0</a> (2005-01-17)</h2> +<h3>Minor Changes</h3> +<ul> + <li>Change of CMT version to v1r18p20041201</li> + <li>Changed to CLHEP 1.9.1.2 + <ul> + <li>Introduced CLHEP namespace. There is an implicit "using +namespace CLHEP" but does not work 100% of the cases. <br> +Here are some examples where the change is affecting in a non +compatible way: + <ul> + <li>Random number engines are called like +"HepRndm::Engine<CLHEP::RanluxEngine>"</li> + </ul> + </li> + </ul> + </li> + <li>Changed GSL 1.5, ROOT 4.02.00</li> + <li>GaudiKernel(v18r0): + <ul> + <li>Interface IMonitorSvc and changes to base class Algorithm to +support online monitoring.</li> + <li>Changed IEventProcessor. Added stopRun() to schedule a stop +of the event processing loop.</li> + <li>System: dynamic libraries with RTLD_GLOBAL and removed +special implementation of type_info (tinfo.cc)</li> + </ul> + </li> + <li>GaudiSvc(v13r0) + <ul> + <li>Implementation of IEventLoopMgr::stopRun() to schedule a stop +of the event loop. </li> + <li>Added Profile histograms 1D and 2D (from ATLAS). Can only be +saved using ROOT.</li> + </ul> + </li> + <li>RootHistCnv(v9r4): + <ul> + <li>Added profile histogram converters</li> + </ul> + </li> + <li>GaudiAlg(v8r4): + <ul> + <li>GaudiSequencer: Added the option "ReturnOK" forcing the +sequencer to return a good status. </li> + <li>Changed normalization of the SequencerTimerTool</li> + <li>Updates to GaudHistoAlg and GaudiHistoTool to add 2D +and 3D histograms</li> + <li>Various improvements to the doxygen comments</li> + <li>Downgrade the warning messages about histogramming or +ntupling turned off to debug level</li> + </ul> + </li> + <li>GaudiObjDesc(v7r1) + <ul> + <li>New redesigned package using python scripts to generate the +code.</li> + <li>See release.notes for detailed information.</li> + </ul> + </li> + <li>New package LCGEnv to set the environment for LCGCMT </li> +</ul> +<h2><a name="v15r4">Gaudi v15r3</a> (2004-10-25)</h2> +<h3>Minor changes</h3> +<ul> + <li>GaudiKernel (v17r0) + <ul> + <li>Algorithm.cpp: added setFinalized() at the end of of the +finalization to avoid doing it more than once.</li> + <li>Service.cpp: added protection on accessor msgSvc() for the +MessageSvc itself.</li> + <li>Changed IAlgManager interface. <br> +- Added initializeAlgorithms() and finalizeAlgorithms()<br> +- Removed declareAlgCreator()<br> +- Added optional argument to createAlgorithm() to tell if the Algorithm +should be managed</li> + <li>New class ServiceLocatorHelper used to implement service +methods in Algorithm.(h,cpp), Service.(h,cpp), AlgTool.(h,cpp), +Converter.(h,cpp)</li> + <li>ISvcLocator.h: new method service<T>(type, name, T*, +bool) to <br> +create/retrieve a non-default instance of a service</li> + <li>Service.(h,cpp): callback for output level</li> + </ul> + </li> + <li>GaudiSvc(v12r5) + <ul> + <li>Bug fix in CollectionCloneAlg.cpp: typo in float and double +types. It prevented stripping. </li> + <li>Removed AlgorithmFactory.h(.cpp) and replaced by +AlgorithmManager.h(cpp). AlgorithmManager keeps a list of "managed +algorithms". These algorithms are added into the list when the flag +managed=true on ::createAlgorithm() method. They are initialized and +finalized by the AlgorithmManager. ApplicationMgr.cpp: added a call to +m_algManager->finalizeAlgorithms();</li> + <li>DataOnDemandSvc.cpp: added managed=true when creating an +Algorithm</li> + </ul> + </li> + <li>GaudiAlg (v8r2) + <ul> + <li>Use the 'filterPassed' result even if the algorithm was +already run and not run a second time, in GaudiSequencer.</li> + <li>SequencerTimerTool normalizes all the measurement times to a +random number generation loop, which takes 100 ms on a 1 GHz P3. Can be +changed with the option <b>'shots' = 207500 </b>by default. +Normalisation printed at the finalization of the tool, in the table.<br> +This normalisation can be removed by the option <b>'normalised = false'</b></li> + </ul> + </li> + <li>GaudiExamples (v15r1) + <ul> + <li>Added DataOnDemand example</li> + </ul> + </li> + <li>GaudiPython(v6r9) + <ul> + <li>Implementation of AppMgr.config() following the ideas from +Vanya</li> + <li>Documentation string for some more classes and methods</li> + <li>Implementation of AppMgr.tool()</li> + <li>Implementation of AppMgr.setAlgorithms()</li> + <li>Implementation of iNTupleSvc class and AppMgr.ntuplesvc()</li> + <li>Implementation of iNtupleSvc.defineOutput( {}, type='ROOT' ) </li> + </ul> + </li> + <li>GaudiPoolDb(v1r10) + <ul> + <li>Minor changes due to GaudiKernel change</li> + </ul> + </li> +</ul> +<h2><a name="v15r2">Gaudi v15r2</a> (2004-09-17)</h2> +<h3>Minor changes</h3> +<ul> + <li>LCG configuration <b>26_2d</b></li> + <li>GaudiPolicy (v5r19) + <ul> + <li>Removed /D_DEBUG from cppdebugflags_s (for Windows)</li> + </ul> + </li> + <li>GaudiKernel (v16r2) + <ul> + <li>ParticleProperty: Two methods for +particle<-->antiparticle relations </li> + </ul> + </li> + <li>GaudiSvc( v12r3) + <ul> + <li>Added algorithm to merge event collections ( +CollectionCloneAlg)</li> + <li>Update to StoreExplorerAlg to force object access for +ContainedObject(s) in ObjectContainerBase(s) </li> + <li>Updated description in DataOnDemandSvc header file </li> + <li>Changes to options for the DataOnDemandSvc.Algorithms +property in the form: 'TYPE/NAME'. If the algorithm name is omitted the +class name will be the instance name. </li> + <li>Two new methods from IChronoStatSvc are implemented to allow +public run-time inspection of Chrono & Stat counters.</li> + <li>Modification to fill a proper particle <--> +antiparticle relations for ParticleProperty objects</li> + </ul> + </li> + <li>GaudiPoolDb (v1r9) + <ul> + <li>Removed some false printout about memory leakage</li> + </ul> + </li> + <li>GaudiPython (v6r8) + <ul> + <li>Reworked AppMgr.run() to avoid calling reinitialize(). This +is currently a problem because resets the event stream to the beginning +each run().</li> + <li>Added protection when algorithm/service does not exists and +no properties are yet defined.<br> + </li> + </ul> + </li> +</ul> +<h2><a name="v15r1">Gaudi v15r1</a>[p1] (2004-08-04)</h2> +<h3>Patches</h3> +<ul> + <li>GaudiSvc (v12r2p1) + <ul> + <li>EventLoopMgr: Release event loop context on finalize</li> + <li>EventSelector: Finalize properly input streams to release +sub-EventSelector instances</li> + <li>MinimalEventLoopMgr: Moved resetExecuted() out of the loop of +top Algorithms. The reset executed flag of all Algorithms is done +before starting executing them.</li> + </ul> + </li> + <li>GaudiPoolDb (v1r8p1) + <ul> + <li>PoolDbCnvSvc: Fix memory leaks of leaking tokens on +write/read. Added some printout if memory leaks are suspected.</li> + <li>PoolDbCnvSvc/PoolDbCacheSvc: Fix error on +DatabaseConnectionPolicy when setting setWriteModeForExisting</li> + <li>Avoided crash returning from main(). There are problems +unloading certain dictionary libraries. For the time being no fix was +found to cure this problem. In order to keep things running no +dictionaries are unloaded for the time being.</li> + </ul> + </li> +</ul> +<h2><a name="v15r1">Gaudi v15r1</a> (2004-07-26)</h2> +<h3>Minor changes</h3> +<ul> + <li>GaudiSvc (v12r2) + <ul> + <li>EvtSelector: Fixed bug that the option +EventSelector.FirstEvent was skipping twice the number of events. +Improved printout with the real event record number.</li> + <li>ToolSvc: Added the option to switch between "private" and +"public" tools based on the name given to the tool. If the tool name +ends with ":PUBLIC", the tool will be public.</li> + </ul> + </li> + <li>RootHistCnv (v9r3) + <ul> + <li>Added the option to prefix histograms id with "h" when they +are numerical (mandatory for HBOOK). This facilitates the interaction +with them from the ROOT application. (RootHistSvc.ForceAlphaIds = true;)</li> + </ul> + </li> + <li>GaudiPython (v6r7) + <ul> + <li>Moved method AppMgr.loaddict() as module function</li> + </ul> + </li> + <li>GaudiPolicy() + <ul> + <li>Changed pattern library_Softlinks to use macro_append instead +of macro</li> + </ul> + </li> +</ul> +<h2><a name="v15r0">Gaudi v15r0</a> (2004-07-19)</h2> +<h3>Major changes</h3> +<ul> + <li>CMT interface packages taken from LCGCMT + <ul> + <li><b>Interface packages are located under LCG_Interfaces </b> (ex: +use CLHEP v* LCG_Interfaces)</li> + <li>Some of the packages have been renamed: CERNLIB -> +cernlib, BOOST -> Boost, PYTHON -> Python</li> + </ul> + </li> + <li>New version of AIDA interfaces package (3.2.1)</li> + <li>GaudiKernel (v16r0) + <ul> + <li>Changed IEvtSelector interface (Carmine Cioffi). Replaced +Iterator by "Context". <b>It is NOT backwards compatible</b></li> + <li>Removed typedef IID to InterfaceID to eliminate the clash +with Windows.h IID. <b>It is NOT backwards compatible. </b>It +requires to change IID by InterfaceID.</li> + <li>MsgStream.h. Added templated MsgStream& operator << +(MsgStream&, const T&) to handle all cases for which the +standard std::ostream& operator << exists.</li> + <li>New header file Environment.h extending the System +namespace to handle standard environment manipulations</li> + <li>Allow for environment resolution in token values - if +requested. Default is backwards compatible</li> + <li>Implementation of "data on demand". The DataSvc issues +"incidents" by using the IncidentSvc when accessing persistent +data or data faults (configurable by job options).</li> + <li>ParticleProperty.h: added method pdgID() and setPdgID as +aliases to jetsetID.</li> + <li>Interface and base classes for HistorySvc and HistoryObjects.</li> + </ul> + </li> + <li>GaudiSvc(v12r0) + <ul> + <li>Updated EventSelector implementation to use new definition of +IEvtSelector interface</li> + <li>Allow for logical names (environment variables) in file +specifications of OutputStream, EventSelector and +HistogramPersistencySvc</li> + <li>Added new service DataOnDemandSvc. The DataOnDemandSvc +listens to incidents typically triggered by the data service. </li> + <li>Added new Service MultiStoreSvc. Transient datastore with +several concurrent partitions all initialized with the same opaque +address, hence the same persistent data content. However when adding +data different algorithms could act on.</li> + <li>Added new algorithm PartitionSwitchAlg & Tool to switch +e.g. above service in a sequence.</li> + <li>Added new algorithm SToreExplorerAlg. Explore data stores to +see content. May or may not load objects. Very useful debugging tool.</li> + <li>Modify SvcManager to accept standard type/name tuples for +Service creation: getService("svc/myinstance", IMyService, createIf)</li> + <li>In JobOptionsSvc added path separator ':' (';' for Windows) +when processing JOBOPTSEARCHPATH such that it can be build with CMT +with path_append (path_prepend) directives.</li> + <li>MessageSvc: use callbacks to set properties</li> + <li>AlgContextSvc: moved from Athena. Determine which Algorithm +is currently executing.</li> + <li>HistorySvc: Management of HistoryObjects </li> + </ul> + </li> + <li>GaudiTools + <ul> + <li><b>This package has been removed</b>. The contents ( only the +GaudiTool class) has been merged with GaudiAlg package. The User needs +to change any occurrence of <font face="Courier New">use GaudiTools v*</font> +in requirements files to <font face="Courier New">use GaudiAlg v*</font> +and any occurrence of <font face="Courier New">#include +"GaudiTools/GaudiTool.h" </font>to <font + face="Courier New">#include "GaudiAlg/GaudiTool.h"</font>. </li> + </ul> + </li> + <li>GaudiAlg (v7r4) + <ul> + <li>GaudiAlgorithm: + <ul> + <li>Added exist() to check existence of objects in Gaudi +Transient Store </li> + <li>Added existDet() to check existence of objects in +Detector Transient Store </li> + <li>Added getOrCreate() to get or create objects in the Event +Transient Store</li> + <li>Added the message "The ERROR message is suppressed : +....." when a error is supressed</li> + </ul> + </li> + <li>GaudiTool: + <ul> + <li>Added exist() method to check existence of objects in +Gaudi Transient Store </li> + <li>Added getOrCreate() method to get or create objects in +the Event Transient Store</li> + </ul> + </li> + <li>Separated in two libraries: link and component library</li> + <li>Added CheckForNaN.h header file</li> + <li>New GaudiHistoTool: The base class for tools, equipped with +histogramming facilities </li> + <li>New GaudiTupleTool: The base class for tools, equipped with +N-tuple facilities </li> + <li>Added three new tools: ErrorTool, HistoTool, TupleTool</li> + </ul> + </li> + <li>GaudiHistory (v1r3) + <ul> + <li> New package containing the definition of "History" objects : +JobHistory, ServiceHistory, AlgorithmHistory, AlgToolHistory, +DataHistory </li> + </ul> + </li> +</ul> +<h3>Minor changes and Bug Fixes</h3> +<ul> + <li>Fixed [bugs #3667] bytes to Mbytes conversion in ProcStats.cpp</li> + <li>GaudiDb(v10r0) + <ul> + <li>Fix in DbGenericConverter: identified links were never +written correctly.</li> + <li>Upgrade to new EventSelector interface</li> + </ul> + </li> + <li>GaudiPoolDb (v1r7) + <ul> + <li>Fix: [bugs #3247] Memory leak in gaudipooldb image +rundown. Properly unload libraries now on finalize()</li> + <li>Updated to new event selector interface</li> + <li>Allow for usage of environment variables</li> + </ul> + </li> + <li>GaudiExamples(v15r0) + <ul> + <li>Added a bunch of examples for POOL I/O (Write, Read, +CollWrite, CollRead)</li> + </ul> + </li> +</ul> +<h2><a name="v14r5">Gaudi v14r6</a> (2004-06-10)</h2> +<ul> + <li>GaudiKernel(v15r4) + <ul> + <li>Added changes from Vanya to fix the problems reported by Matt +on output level for AlgTools</li> + </ul> + </li> + <li>GaudiSvc(v11r7) + <ul> + <li>JobOptionsSvc: Fixed infinite loop reporting errors when +"unit" file is not present</li> + </ul> + </li> + <li>GaudiAlg(v7r3) + <ul> + <li>Changed the length of Hbook names from 8 to 16</li> + <li>Add new algorithm GaudiSequencer (.h, .cpp), to replace the +Sequencer. Uses a private auxiliary class AlgorithmEntry.h.<br> +Auxiliary tool SequencerTimerTool(.h, .cpp), with private class +TimerForSequencer.h, to measure the time taken in the sequencer.</li> + <li>Change default value of HistoSplitDir option to false. The +true option is useful only for HBOOK persistency, if algorithm name is +longer than 16 chars</li> + </ul> + </li> + <li>GaudiAud(v6r5) + <ul> + <li>Fixed [bugs #3667] bytes to Mbytes conversion in ProcStats.cpp</li> + </ul> + </li> + <li>GaudiPython(v6r5) + <ul> + <li>Small corrections in iProperty and completed the set of +different property types.<br> + </li> + </ul> + </li> +</ul> +<h2><a name="v14r5">Gaudi v14r5</a> (2004-04-20)</h2> +<pre> uses POOL_1_6_3 and SEAL_1_3_4 </pre> +<h3>Minor changes and Bug Fixes</h3> +<ul> + <li>GaudiKernel (v15r3) + <ul> + <li>KeyedContainer: modified erase() method to use a +temporary vector to increase dramatically its performance. Tested +by VeloSim</li> + </ul> + </li> + <li>GaudiSvc (v11r6p1) + <ul> + <li>Added debug printout in ServiceManager</li> + </ul> + </li> +</ul> +<h2><a name="v14r4">Gaudi v14r4</a> (2004-04-02)</h2> +<pre> uses POOL_1_6_2 and SEAL_1_3_4 </pre> +<h3>Minor changes and Bug Fixes</h3> +<ul> + <li>ExternalLibs (v4r5) + <ul> + <li>uses Xerces from sw/packages because the win32_vc71 lcg +installation has a problem. </li> + <li>GaudiSvc (v11r6) + <ul> + <li>OutputStream: add an option PreloadOptItems (default +false) to preload also the objects defined in OptItemList. This is +needed when making a copy of a dataset containing OptItems.</li> + <li>ToolSvc: Fixed a long standing problem on the finalize +Tools when they have cyclic dependencies. See release.notes for the +full explanation from Chris Jones</li> + <li>ParticlePropertySvc: Adaptation to new interface +IParticlePropertySvc. New format for the input file is parsed and the +default is now read from $PARAMFILESROOT/data/ParticleTable.txt</li> + <li>[bugs #2854] Print the abosule path of the XML detector +geometry/description file</li> + </ul> + </li> + <li>GaudiAlg (v7r2) + <ul> + <li>Fix a trivial and stupid bug in the implementation of +Tuples::make_column and Tuples::Column partial specializations</li> + </ul> + </li> + <li>GaudiTools (v8r1) + <ul> + <li>GaudiTool: add attribute "true" to create the +service, if it not done earlier for accessors to detSvc() , +incSvc() , evtSvc() and incSvc()</li> + </ul> + </li> + <li>GaudiGSL (v6r0) + <ul> + <li>Added NumericalDefiniteIntegral into namespace GaudiMath +with name DefIntegral</li> + <li>Added interpolation. Available interpolation types:<br> +- Linear <br> +- Polynomial <br> +- Cubic spline with natural boundary conditions <br> +- Cubic spline with periodic boundary conditions <br> +- Akima spline with natural boundary conditions <br> +- Akima spline with periodic boundary conditions</li> + </ul> + </li> + <li>GaudiPython(v6r4) + <ul> + <li>Changed the initialization of AppMgr. Initialize() is not +called at AppMgr.__init__() and it is done later at the AppMgr.run() +method</li> + <li>Aliases for common AppMgr methods<br> + </li> + </ul> + </li> + </ul> + <h2><a name="v14r3">Gaudi v14r3</a> (2004-03-04)</h2> + <h3>Minor changes and Bug Fixes</h3> + <ul> + <li>GaudiKernel (v15r2) + <ul> + <li>Changes in IParticlePropertties and ParticleProperty to +add Pythia ID and remove obsolete assessors.</li> + </ul> + </li> + <li>GaudiSvc (v11r4) + <ul> + <li>ParticlePropertySvc: Adaptation to new interface +IParticlePropertySvc. New format for the input file is parsed and the +default is now read from $PARAMFILESROOT/data/ParticleTable.txt. </li> + <li>A new input file is also provided, that has a new name: +ParticleTable.txt. This new file should be put in $PARAMFILESROOT and +is used now instead of particle.cdf.</li> + </ul> + </li> + <li>GaudiPython (v6r3) + <ul> + <li>Added a the function getComponentProperties(module) to +obtain the properties of all component classes available in a given +component library (module)</li> + </ul> + </li> + <li>GaudiAlg (v7r1) + <ul> + <li>Modification is to provide the possibility to extend the +N-tuple "representation" of specific "complex" objects (e.g. +EventHeader, L0DUReport, or L1Report) through class template +specializations.</li> + </ul> + </li> + <li>GaudiGSL (v5r1) + <ul> + <li>Fix a serious bug in code for numerical integration</li> + </ul> + </li> + </ul> + <h2><a name="v14r2">Gaudi v14r2</a> (2004-02-16)</h2> + <h3>Minor changes and Bug Fixes</h3> + <ul> + <li>GaudiPoolDb (v1r5) + <ul> + <li>Changes to fix the problem with spillover events (changed +relative path to absolute ones). The files created with previous +versions should be readable with this new one.</li> + <li>Fix bug which occurs only on linux in optimized mode +(!!). For HepMatrices/vectors the data got scrambled on reading.</li> + </ul> + </li> + <li>GaudiDb (v9r2) + <ul> + <li>Fix the problem with missing link manager entries for +ROOT files</li> + </ul> + </li> + <li>GaudiSvc(v11r3): Bug fix in EventSelector to avoid crash when +calling reinitialize()</li> + <li>GaudiPython(v6r2): + <ul> + <li>Added a number of new functions to AppMgr class to +simplify the end-user interaction</li> + <li>The constructor AppMgr() configures and initializes the +Gaudi Application manager</li> + <li>Added new class EventSelector to manage the opening of +input files</li> + </ul> + </li> + <li>GaudiAlg(v7r0), GaudiTools(v8r0): + <ul> + <li>New base classes (GaudiAlgorithm, +GaudiHistoAlg,GaudiTupleAlg) for user algorithms with<br> +- easy and safe access to tools, services, and data in TES <br> +- error handling <br> +- histogramming <br> +- ntuples </li> + <li>The detailed description if available in doc/GaudiAlg.tex +file </li> + </ul> + </li> + </ul> + <h2><a name="v14r1">Gaudi v14r1</a> (2004-01-26)</h2> + <h3>Minor changes and Bug Fixes</h3> + <ul> + <li>GaudiKernel: New accessors in Algorithm and AlgTool base +classes ( evtSvc() , svcLoc() and OutputLevel() )</li> + <li>GaudiKernel: Changes in SmartRef to optimize CPU for POOL +based persistency </li> + <li>GaudiPython: Small changes from feedback given by Vanya.</li> + <li>New version of POOL (1.5.0-zeta)</li> + </ul> + <h2><a name="v14r0">Gaudi v14r0</a> (2004-01-20)</h2> + <h3>Major changes</h3> + <ul> + <li>Using SEAL, POOL and PI as external packages.</li> + <li>GaudiPoolDb: New package to support object persistency based +on POOL.</li> + <li>HistogramSvc: Replaced HTL package used by HistogramSvc with +the ROOT based AIDA histograms<br> +implementation from the LCG PI project (Grigori Rybkine)</li> + <li>Mac OSX: A number of minor changes needed by the Mac OSX port +of the Gaudi software (Guy Barrand)</li> + <li>GaudiGSL: Updated GaudiGSL with new solving nonlinear system +with n equations in n unknowns (Kirill Miklyaev)</li> + <li>GaudiPython: New implementation using the LCG dictionaries +(SEAL)</li> + </ul> + <h3>Minor changes and Bug Fixes</h3> + <ul> + <li> JobOptionsSvc: Added the possibility to read +additional option files. </li> + <li> Added additional POOL storage types as known types to the +persistency service</li> + <li> HbookCnv: deal with empty ntuples (Charles Leggett)</li> + <li> RootHistCnv: deal with empty ntuples (Charles Leggett)</li> + </ul> + <h3>Known Problems and Issues</h3> + <ul> + <li>Not known issues at this moment</li> + </ul> + <h2><a name="v12r1">Gaudi v12r1</a>(<a name="v12r1">2003-07-04 </a>)</h2> + <h3>Improvements and changes</h3> + <h3>New Functionality</h3> + <ul> + <li> JobOptionsSvc supports a search path for job opt file </li> + <li> RootHistCnv: Added ability to read in Matrices, and fixed +size Arrays </li> + </ul> + <h3>Bug Fixes</h3> + <ul> + <li> RootHistCnv: in RCWNtupleCnv::book, where was setting range +for non integer TLeaf </li> + <li> RootHistCnv: in analyzeItem (Bug #576 Matrices in CWN not +filled correctly) </li> + <li> GaudiPython: in src/Test/Dictionary/Class_Dict.cpp use new +OffsetOf macro </li> + </ul> + <h3>Incompatible Changes</h3> + <ul> + <li> BOOST does not add -lboost_python to the link opts anymore +(as this implies using PYTHON as well) </li> + </ul> + <h3>Known Problems and Issues</h3> + <ul> + <li> Although a warning is printed out, there is no protection +against double inclusions of job option files </li> + <li> service_i method implementation is replicated in multiple +classes </li> + </ul> + <h2><a name="v12r0">2003-06-26 Gaudi v12r0</a>p1</h2> + <h3>Bug Fixes</h3> + <ul> + <li>Modified System::typeinfoName() to remove extra white spaces +for templated classes with two or more arguments. Prevented loading +LHCb associators.</li> + <li> <a + href="https://savannah.cern.ch/bugs/?func=detailbug&bug_id=927&group_id=26">Bug +#927</a>. In Algorithm::service_i pointer to an unaccessible +service is returned unchanged instead of being null</li> + </ul> + <h2><a name="v12r0">2003-05-07 Gaudi v12r0</a></h2> + <h3>Improvements and changes</h3> + <ul> + <li><b>Full support for gcc 3.2</b>. This is one of the main new +changes and the one that has taken us more time and effort. The main +difficulties have been to handle dynamic_cast between libraries that +are loaded dynamically. See complete explanation in <a + href="../../../GaudiKernel/v13r4/doc/dynamic_cast.pb"> +GaudiKernel/doc/dynamic_cast.pb</a>.</li> + <li>Major re-write of GaudiPyhton. Changes introduced to +convert the package to new version of Boost.Python 2.0. Added the +capability of setting/getting properties of Algorithms and Services +before they are created by the ApplicationMgr.</li> + <li>Major re-write of GaudiObjDesc. Adapted to new version of +Xerces 2.2.0</li> + <li>Changed CLHEP Random Number distribution from RandGauss to +RandGaussQ.</li> + <li>Added MessageSvcType property to ApplicationMgr to select +alternative MessageSvc implementations</li> + <li>Changed connectOutput call of conversion service +interface to allow specify the opening mode (NEW, RECREATE, +UPDATE)</li> + <li>Implement the ability to reinitialize for changing the event +file input specification</li> + <li>Implement new option RandSvc.Engine.SetSingleton. If set to +true, set the default engine in HepRandom.</li> + <li>Changed IAddressCreator interface to be able to convert +to and from address string.</li> + <li>Support to enable/disable Algorithms. +Algorithm::sysExecute() returns immediately if isEnabled() is +false.</li> + <li>Improved code in GaudiGSL minimization tool: all static +variables and static methods are removed.</li> + <li>Implemented event file "aging" and and algorithm to close +files which are "old". This is to avoid having many files open with the +consequent waste of memory resources.</li> + <li>Added ability to read H1D, H2D, H1DVar histograms from ROOT +files.</li> + <li>Added ability to read CWNT from ROOT files.</li> + <li>Added in GaudiExamples and script (runexamples.py) to run all +examples and compare the output with reference files.</li> + </ul> + <h3><b>New functionality</b></h3> + <ul> + <li><b>Thread support</b>. Added utilities to get and parse +thread instance names.<br> +Changes in the Service and Algorithm base classes.<br> +- service() method asks first for thread specific service instance, if +not available get generic service instance<br> +- allow for setting of thread specific and generic properties<br> +- create thread specific sub-Algorithms automatically<br> +Changes in MinimalEventLoopMgr and ApplicationMgr to support to support +event-level multi-threading</li> + <li><b>Colored Messages</b>. Support colored messages on +x-terminals.</li> + </ul> + <h3>Bug Fixes</h3> + <ul> + <li>Bug #348. Modified PropertyCompiler to to do a case +insensitive compare when appending string options into an option array.</li> + <li>Fix memory leak in the event selector. The opaque object +address was not deleted when skipping initial event records (FirstEvent +property set).</li> + <li>Corrected bug in finalizing ToolSvc when Tools are not +properly released by end-users.</li> + <li>Fix a memory leak at finalization in RndmGenerators.</li> + <li>Fixed bug in NTuples/Event collection: NT-tuple +description was limited to 4k on gcc 2.95.</li> + <li>Bug #214. Fix problem with event selector that caused a crash +after last event.</li> + </ul> + <h3><b>Changes of version in external packages</b>. </h3> + <ul> + <li>ROOT v3.05.04</li> + <li>Xerces 2.2.0</li> + <li>Pyhton 2.2.2</li> + <li>Boost 1.29</li> + <li>GSL 1.3</li> + </ul> + <h2><a name="v11r0">2002-10-06 Gaudi v11r0</a></h2> + <h3>Improvements and changes</h3> + <ul> + <li><b>Improved reference counting</b>. Quite a lot effort has +been put to handle correctly reference counting on services, tools and +algorithms. In general, the user should "release" services that has +been located and used during the execution at the finalize() method. If +the release is not done, the service will not be destroyed at the end +of the execution of the program, and thus showing as a possible memory +leak. If an excessive number of releases is done a premature +destruction may happen with unpredictable behavior. </li> + <li><b>New way to handle projects with CMT</b>. The Gaudi project +is being released in a different directory root with the project +version number in its name (/GAUDI_v11r0) and a single version of each +package. This implies to change the CMTPATH accordantly. For more +details look at Florence Ranjard <a + href="http://documents.cern.ch/cgi-bin/setlink?base=agenda&categ=a021359&id=a021359s1t14/transparencies">presentation</a>. +In practice: + <ul> + <li>Version numbers have been removed from the "use" +statements in the requirements files of individual packages. The +versions are fix using the <a + href="http://proj-gaudi.web.cern.ch/proj-gaudi/Doxygen/v11r0/cmt/requirements">Gaudi +requirement</a> file. Beware that "old" versions in user's private +areas may be used by mistake. </li> + <li>The user will have to setup the CMTPATH to contain the +directory where this version is installed. This can be done by "source +$Gaudi_release_area/GaudiEnv/v11r0/cmt/setup.csh"</li> + </ul> + </li> + <li>This version compiles with gcc 3.2. </li> + <li>Removed -Bsymbolic link flag for component libraries. This +flag is suspected of producing memory leaks. </li> + <li>ApplicationMgr re-factoring. Removed direct implementation of +many interfaces by the ApplicationMgr, it delegates now to other +objects. </li> + </ul> + <h3><b>New functionality</b><br> + </h3> + <ul> + <li>Controlling the output level of components without +properties. Introduced new properties to MessageSvc.<br> +MessageSvc.setVerbose += {"name1", "name2"};<br> + (or setDebug, setInfo, setWarning, setError, +setFatal, setAlways ) </li> + <li>Added a more complete algorithm "GaudiAlg/GaudiAlgorithm.h" +that can be used as base class for user algorithms. See <a + href="http://proj-gaudi.web.cern.ch/proj-gaudi/Doxygen/v11r0/doc/html/class_gaudi_algorithm.html">documentation</a> +for details. </li> + <li>Added function format(string fmt, ...) that can be used to +format messages<br> + within the MsgStream class. </li> + <li>New minimization tool with GSL added in package GaudiGSL. The +abstract interface is available <a + href="http://proj-gaudi.web.cern.ch/proj-gaudi/Doxygen/v11r0/doc/html/class_i_func_minimum.html">GaudiGSL/IFuncMinimum.h</a>.</li> + </ul> + <h3><b>Changes of version in external packages</b>. </h3> + <ul> + <li>CLHEP 1.8.0.0, ROOT 3.03/09, CERNLIB 2002, HTL 1.3..2.1, +Boost 1.28 </li> + </ul> + </li> + <li><br> + </li> + <h3>Incompatible Changes</h3> + <h2><a name="v10r0">2002-07-18 Gaudi v10r0</a></h2> + <h3>Improvements and changes</h3> + <font size="3"> </font> + <ul> + <font size="3"> + <li><b>AIDA 2.2</b>. Release v10r0 uses the +latest version of +AIDA interfaces. </li> + <li><b>3D histograms.</b> Support for 3D histograms (fix and +variable binning). Saving them only possible with ROOT. </li> + <li><b>Bug fixes collected since last release:</b> + <ul> + <li>If the initialization any sub-algorithms fails should fail +job initialization. </li> + <li>Fixed problem in user defined random number generator. </li> + </ul> + </li> + <li><b>Small improvements:</b> + <ul> + <li>Added more accessors to AlgTool base class </li> + <li>Support for long long in MsgStream and StreamBuff </li> + <li>Replaced some interfaces forward reference in Algorithm +base class by includes. </li> + <li>Moved ListItem.h from GaudiSvc to GaudiKernel. </li> + <li>New property "OutStreamType" for selecting the default +output stream. </li> + <li>Major cleanup and removing static storage in RooHistCnv </li> + </ul> + </li> + <li><b>Changes needed for Solaris</b> (provided by Wim +Lavrijsen) </li> + <li><b>Using CMT v1r11.</b> New tags, primitive tags and new +patterns defined. Reduced compilation and link dependencies by +exploiting -no_auto_imports flag in use statements. </li> + <li><b>Changes on External package versions</b>: Python 2.2, +Boost 1.27.0, Xerces-C 1.6.0 </li> + </font> + </ul> + <font size="3"> </font> + <h3><font size="3">Incompatible Changes</font></h3> + <font size="3"> </font> + <ul> + <font size="3"> + <li>Removed IHistogramXX.h files from GaudiKernel. +The user should +use AIDA/IHistogramXX.h instead. The dependency on AIDA in GaudiKernel +has been removed because is not needed any more. </li> + <li>Due to the change in the AIDA version some methods have changed +(e.g. IHistogram::dimentions() is now IHistogram::dimension() ). Refer +to the Doxygen documentation for details. </li> + </font> + </ul> + <font size="3"> </font> +</ul> +</body> +</html> diff --git a/GaudiRelease/doc/release.notes.v10r0.txt b/GaudiRelease/doc/release.notes.v10r0.txt new file mode 100644 index 000000000..70027d39c --- /dev/null +++ b/GaudiRelease/doc/release.notes.v10r0.txt @@ -0,0 +1,264 @@ + +! === GaudiKernel v12r0 ================================================= +! 20020408 Pere Mato + - Included ISvcLocator.h and IMessageSvc.h in Algorithm.h instead + of the existing forward declaration + +! 20020405 Pere Mato + - Added two new accessors to AlgTool base class + templated service( name, svc, createif) to access any service + tooSvc() to access the tool service + +! 20020327 Pere Mato + - Changes needed for Solaris (by Wim Lavrijsen). Details: + +++ GaudiKernel/src/Lib/Property.cpp + getQuotedItem() in unnamed namespace instead of static + +++ GaudiKernel/src/Lib/ModuleInfo.cpp + explicit cast added: "if ( 0 != ::dladdr((void*)System::moduleHandle,... + +++ GaudiKernel/src/Lib/System.cpp + in System::typeinfoName(), added a #elif defined(sun) + +++ GaudiKernel/CnvFactory.h + removed virtual inheritence in class CnvFactory & CnvFactory2 + +++ GaudiKernel/ObjectFactory.h + removed virtual inheritence in class ObjectFactory & ObjectFactory2 + +! 20020315 Markus Frank + - Kernel.h + Properly #ifdef LONGLONG_MAX, LONGLONG_MIN + - MsgStream.h + Add operator<<(longlong), operator>>(longlong&) + - StreamBuffer.h + Add serialization for std::vector, std::list + Add operator<<(longlong), operator>>(longlong&) + - Converter.cpp + Do not dereference dataProvider if pointer is invalid + - TimePoint.h + Add StreamBuffer& operator<<(), StreamBuffer& operator>>(), + MsgStream& operator<<() + - TimePoint.h + Add MsgStream& operator<<() + - ITime.h + Add MsgStream& operator<<() + +! 20020213 - Markus Frank + - Added clear() method to ObjectVector<T> and ObjectList<T> + clear() removes all elements from the ObjectVector and ObjectList<T> + +! 20020215 Pere Mato + - Removed dependency with AIDA + - Eliminated the old IHistogramXXX interfaces. Users should use the + AIDA ones directly + - Changed ClassId.h and IHistogramSvc.h to include 3D histograms + +! 20020225 Markus Frank + - Problem reported by Kambiz Mahboubi fixed concerning the + user defined random number generator (i.e. DefinedPdf) + - GaudiKernel/RndmGenerators.h + +! 20020213 - Pere Mato + - Algorithm.cpp: Fixed bug + The status code of sysInitilize() of sub-algorithms was not + checked. Now it should fail and report an error. + +=== GaudiSvc v9r0 ========================================================= +! 20020407 Pere Mato + - Decrease dependency with HTL by addding -no_auto_imports + +! 20020327 Pere Mato + - Changes needed for Solaris (by Wim Lavrijsen). Details: + +++ GaudiSvc/src/EventSelector/EventSelector.cpp + prepended "const" + +++ GaudiSvc/src/MessageSvc/MessageSvc.h + removed virtual inheritence in class MessageSvc + +++ GaudiSvc/src/ChronoStatSvc/ChronoStatSvc.h + removed virtual inheritence in class ChronoStatSvc + +++ GaudiSvc/src/JobOptionsSvc/JobOptionsSvc.h + removed virtual inheritence in class JobOptionsSvc + +! 20010315 Markus Frank + PersistencySvc.h/cpp add call "commitOutput" as required by interface + IConversionSvc + OutputStream.cpp Call commitOutput after object conversion. + +! 20020318 - Pere Mato + - Moved ListItem.h to GaudiKernel package since it is quite usefull helper class. + +! 20020313 - Pere Mato (David Quarrie) + - New property "OutStreamType" for the ApplicationMgr to select the + default type for Output Streams. The default value is "OutputStream" + be compatible. + +! 20020226 - Pere Mato + - Adapted to use AIDA 2.2 + - Introduced 3D Histograms (fix and variable binning) + +! 20020225 - Markus Frank + - Problem reported by Kambiz Mahboubi fixed concerning the + user defined random number generator (i.e. DefinedPdf) + - RndmGenSvc/HepRndmGerators.cpp + +=== HBookCnv v12r0 ======================================================= +! 20020408 - Pere Mato + - Removed importing dependency to CERBLIB + +! 20020227 - Pere Mato + - Modified to be adapted to the new AIDA interfaces (2.2) + +=== RootHistCnv v6r0 ===================================================== +! 20020405 - Markus Frank + - Adapted to the new version of Gaudi + - Removal of all global static storage + - Major cleanup + +! 20020327 - Pere Mato + - Adapted to use the new AIDA interfaces (2.2) + - Added converters for 3D histograms support + +===GaudiODBCDb v6r0 ====================================================== +! 20020402 Pere Mato + - Changes needed for Solaris (by Wim Lavrijsen). Details: + +=== GaudiDb v6r0 ========================================================= + +! 20020402 Pere Mato + - Changes needed for Solaris (by Wim Lavrijsen). Details: + +++ GaudiDb/DbFederation.h + removed includes of DbSession.h and DbDataBase.h + added forward declaration of DbFederation + added include of DbBase.h + added forward declaration of dbHandle< DbSession > + +++ GaudiDb/DbDataBase.h + added forward declarations of DbFederation and DbSession + added forward declaration of dbHandle< DbFederation > + +++ GaudiDb/DbSession.h + removed include of DbFederation.h + removed include guard of DbBase.h + removed forward declaration of specialisation of template dbHandle< DbSession > + added forward declaration of class DbDataBase + added forward declaration of dbHandle< DbFederation > and dbHandle< DbDataBase > + +++ GaudiDb/src/Base/DbBaseConverter.cpp + added include of DbFederation.h as first of the GaudiDb includes + moved DbDataBase.h include to just before DbFederation.h include + +++ GaudiDb/src/Base/DbContainer.cpp + added include of DbFederation.h followed by DbDataBase.h just after include of DbHandle.h + +++ GaudiDb/src/Base/DbContainerObj.cpp + added include of DbDataBase.h just after include of DbHandle.h + +++ GaudiDb/src/Base/DbDataBaseObj.cpp + added include of DbDataBase.h just before include of DbIter.h + +++ GaudiDb/src/Base/DbFederation.cpp + added include of DbSession.h just after include of DbFederation.h + +++ GaudiDb/src/Base/DbFederationObj.cpp + moved include of DbSession.h just before include of DbFederation.h + +++ GaudiDb/src/Base/DbGenericConverter.cpp + explicit construction of a string (std::string("")) + +++ GaudiDb/src/Base/DbImplementation.cpp + moved include of DbImplementation.h to just after include of DbDataBase.h + +++ GaudiDb/src/Base/DbObject.cpp + moved include of DbDataBase.h to just after include of DbHandle.h + +++ GaudiDb/src/Base/DbObjectAccessor.cpp + moved include of DbDataBase.h to just after include of DbHandle.h + +++ GaudiDb/src/Base/DbSession.cpp + added include of DbSession.h just before include of DbFederation.h + explicit construction of a string (std::string("UNKNOWN")) + +++ GaudiDb/src/Base/DbTypeInfo.cpp + added const on char* + +++ GaudiDb/src/Base/DbDataBase.cpp + moved include of DbHandle.h before include of DbDataBase.h + added include of DbFederation.h before include of DbDataBase.h + +++ GaudiDb/src/Base/IDbDataBase.cpp + moved include of DbDataBase.h before include of DbIter.h + +++ GaudiDb/src/Ntuples/DnNTupleCnv.cpp + added include of DbFederation.h before include of DbContainer.h + added include of DbDataBase.h before include of DbContainer.h + unnamed namespace instead of static + +++ GaudiDb/src/Services/DbCnvSvc.cpp + added include of DSession.h before include of DbIter.h + added include of DbFederation.h before include of DbIter.h + added include of DbDataBase.h before include of DbIter.h + +++ GaudiDb/src/Services/DbEvtSelector.h + made DbEvtSelector::ListName publicly accessible + added include of DbDataBase.h before include of DbIter.h + +++ GaudiODBC/src/ODBCDb.h + use non-const strings for map of tables + +!=== GaudiIntrospection v4r0 ============================================== +! 20020328 - Stefan Roiser + - changed version to v4r0 + - added doxygen-documentation + +! 20020319 - Stefan Roiser + - changes to the interface when adding information about methods, passing only strings for return-types and + argument-types. Internal resolving of information about MetaClasses. + - default modifier for meta-fields set to 'private' + - added MetaConstructor + +!=== GaudiObjDesc v4r0 ==================================================== +! 20020328 Stefan Roiser + - changes to produce dictionary-information compliant to the new interface of GaudiIntrospection v4r0 + +! 20020328 Pere Mato + - Added ${CONSTITUENT}_GODflags in fragments + +! 20020327 Pere Mato + - Changes needed for Solaris (by Wim.Lavrijsen). Details: + +++ GaudiObjDesc/src/DaDiCppHeader.cpp + several const added + +++ GaudiObjDesc/src/DaDiCppDict.cpp + several const added + +! 20020325 - Stefan Roiser + - bugfix no reference for arguments which are fundamental types of more then one word (e.g. signed int) + +! 20020319 - Stefan Roiser + - bugfix when using stdVectorTypeDef to create type std::vector<classname*> + +!=== GaudiPython v4r0 ====================================================== +! 20020321 - Pere Mato + - Adapted to the new GaudiIntrospection, which adds method support + +! 20020319 - Markus Frank + - Added the possibility to obtain any interface implemented by + a component (service) + + +! === GaudiExamples v10r0 ================================================= +! 20020327 - Pere Mato + Added test for Ntuples and histograms + +! 20020213 - Pere Mato + Enhanced AlgSequecer test with Sub- and Parent-Algorithms + +!=== GaudiPolicy v5r5 ===================================================== +! 20020321 - GaudiPolicy v5r5 (Flr) + - new patterns accept an argument library=<library name> + libraryShr, library_stamps, library_Clinkopts, library_Cshlibflags + library_Llinkopts, library_Lshlibflags, library_Softlinks, library_path + i.e. apply_pattern libraryShr library=GaudiAlg + apply_pattern library_path library=GaudiAlgLIb + + - new patterns to handle component library and linker library + accepts one argument library=<library name> + i.e. apply_pattern component_library library=GaudiAlg + apply_pattern linker_library library=GaudiAlgLib + + - following patterns accept an argument + library=<library name> + packageShr, package_stamps, package_Clinkopts, package_Cshlibflags, + package_Llinkopts, package_Lshlibflags + + - package_libraries,linker_path patterns accept an argument + library = <list of libraries for wich SoftLinks are required> + i.e. - apply_pattern package_Llinkopts library=GaudiAlgLib + apply_pattern package_Clinkopts library=GaudiAlg + apply_pattern package_libraries library=GaudiAlg GaudiAlgLib + apply_pattern linker_path library=GaudiAlg GaudiAlgLib + +! 20020321 - GaudiPolicy (Pere) + - added tags from ATLAS and definition of a set of "primitive" tags + to be used when defining macros and sets. + +! 20020313 - GaudiPolicy (Pere) + - changed dsp_all fragment to add the release.notes in the DevStudio project + +! 20020307 - GaudiPolicy (Pere) + - added <package>Dict in linker_path pattern \ No newline at end of file diff --git a/GaudiRelease/doc/release.notes.v10r1 b/GaudiRelease/doc/release.notes.v10r1 new file mode 100644 index 000000000..419835dc3 --- /dev/null +++ b/GaudiRelease/doc/release.notes.v10r1 @@ -0,0 +1,71 @@ +================ GaudiKernel v12r2==================================== +! 22020506 Pere Mato + - Bug fix in AlgTool.cpp. Pointer to ToolSvc not initialized + (Reported by O. Callot) + +! 22020502 Pere Mato + - Bug fix in base classes Service and Converter. The accessor msgsvc() shpould + returns always a valid MessageSvc (Reported by RD Schaffer) + - Added templated function service() in Converter base class. + - Bug fix in Service.cpp. The finalize method access violates if called before + initialize (Reported by Wim Lavrijsen) + +================ GaudiObjDesc v4r2==================================== +! 20020503 Pere Mato +- Small problem on the fragment obj2doth_header that forced the re-creation of + all header files each time. +- Some changes in the generation of dictionaries: + ~ In methods avoid use of static variables for complex types (one one instance available) + ~ The same for accessor methods + ~ The return type for relations was not correct in the MetaMethod creation + +================ GaudiIntrospection v4r2============================== +! 20020503 - Pere Mato + - changed MetaMethod class to allow its use with GaudiPython for + calling methods of the new event model. The only package affected + by these changes is GaudiPython itself. + +================ GaudiPython v4r1===================================== +! 20020503 - Pere Mato + - Adapted to new LHCb event model (KeyedContainers in addition to + ObjectVectors). + - Re-structured a bit: the IntrosObj and IntrosFunc share a single + function to handle conversion of single and complex types to python. + +================ GaudiKernel v12r1===================================== +! 20020426 Markus Frank + - Bug fix in DataSvc, which inhibited automatic directory + generation if intermediate leafs were present. + +================ GaudiDb v7r0====================================== +! 20020426 Frank Markus + - New files: + +++ IGenericDatabase.h/cpp : Generic database access + - Changed files: + +++ GaudiDb_load.cpp : GenericDataBase factory + + +++ IOODataBase.h, + +++ DbContainer.h/cpp + +++ DbImplementation.h/cpp, + +++ DbContainerObj.h/cpp : Enhanced SQL access + +++ IDataBaseMgr.h : Const access to implementation IOODataBase + +++ DbContainerConverter.cpp: Remove unused variable + +++ DbCnvSvc.h/cpp : Handle generic conversions using "any" converters + +! 20020417 Markus Frank + - Bug fix to handle keyed containers when elements have been + removed + +================ GaudiODBCDb v7r0====================================== +! 20020426 - Markus Frank (v6r0) + - Allow for deletion and updates using SQL statements + +================ GaudiRootDb v7r0====================================== +! 20020429 - Markus Frank + Re-compilation needed for new GaudiDb + +================ GaudiIntrospection v4r1=============================== +! 20020419 - Stefan Roiser + - changed static maps of MetaClass to pointers to maps to be able to check + whether they are created or not + diff --git a/GaudiRelease/doc/release.notes.v10r2 b/GaudiRelease/doc/release.notes.v10r2 new file mode 100644 index 000000000..70093e8a6 --- /dev/null +++ b/GaudiRelease/doc/release.notes.v10r2 @@ -0,0 +1,36 @@ +================GaudiSvc v8r1 ================================== +! 20020618 Markus Frank + - Add option to output stream: OutputStream.OptItemList + Elements in this option are not required to be present + in the transient datastore to be written. However, if + present, they get wrttwen to the stream as well. + +================ GaudiDb v8r0 ====================================== +! 20020522 Frank Markus + - New File: Services/DbGenericDataBase.h/cpp + Implementation of generic database access. + - Support for sequences if supported by technology + - Better access to SQL-like databases by extending + the container interface. + +================ GaudiRootDb v8r0====================================== +! 20020622 - Markus Frank + - Enable to generate the operator<< for TBlob objects on creating + the ROOT dictionary + - Re-compilation needed for new GaudiDb + and ROOT version v3.02 (v3.02.07) + +================ RootHistCnv v7r0========================================== +! 20020618 - Pere Mato + - Change of the ROOT version to v3.02 (v3.02.07) + +================ GaudiObjDesc v4r4======================================== +!20020619 - Stefan +- introduced new value for 'inout'-attribute of <arg>-element called 'BYVALUE' to be + able to force the passing of a non-simple argument by value + +!20020617 - Stefan +- handling of offsets to abstract-interface-classes +- use friend-classes for investigation of offsets instead of defines +- no dictionary-information for private, protected, pure virtual and friend-functions +- changes to dictionary-fragments to produce the class with the friend-class in the dict-directory diff --git a/GaudiRelease/doc/release.notes.v10r3 b/GaudiRelease/doc/release.notes.v10r3 new file mode 100644 index 000000000..1101a818c --- /dev/null +++ b/GaudiRelease/doc/release.notes.v10r3 @@ -0,0 +1,42 @@ + + +================ GaudiKernel v12r3===================================== + +! 20020628 Pere Mato, Sebastien Ponce + - Improved error reporting when loading dynamic libraries + - Changed INFO messages to DEBUG when initializing services + - Replaced forward class declarations in Algorithm.h by including the concerned + header files. This is to aliviate user confusion. + - Added function format(char* fmt, ...) that can be used to format messages + within the MsgStream class. + Example: + log << MSG::INFO << format("Evt: %8d Run: %8d", evt, run) << endmsg; + Caveat: Since the unspecified argument list is used (...) the arguments can not + be cheched for the correct type and possible conversions are not triggered. + +! 20020529 Paolo Calafiura + - Auditor.h: service() needs IServiceLocator header file + - DeclareFactoryEntries.h: typo in AudFactory name + +! 20020506 Andrea Valassi + - Change in MsgStream.h to allow the use of std::hex on Windows + +================ GaudiSvc v8r2================================== +! 20020701 Pere Mato + - Removed printout when loading dll modules + - Print summary of loaded modules successfully and failed + - Implemented "GaussianTail distribution" requested by Chris Parkes + Rndm::GaussianTail( cut, sigma) + +================ GaudiRootDb v8r1====================================== +! 20020627 - Markus Frank, Pere Mato + - Patched to allow RFIO file access (files in castor). This should not + be necessary but is nedeed in the current version of ROOT + Files changed: RootDbase.cpp and requirements + +!=============== GaudiAlg v6r1=========================================================== +! 20020704 - Pere Mato + - Eliminated INFO messages during the construction of the algorithm sequence + Output a summary of it. + + diff --git a/GaudiRelease/doc/release.notes.v10r4 b/GaudiRelease/doc/release.notes.v10r4 new file mode 100644 index 000000000..8cfb78f1f --- /dev/null +++ b/GaudiRelease/doc/release.notes.v10r4 @@ -0,0 +1,42 @@ + + +!=============== ROOT v2r303p0 ============================ +! 2002-07-17 - Pere Mato + requirements - use version 3.03/06 of ROOT + +================ GaudiSvc v8r3================================== +! 20020717 Markus Frank + - Bug fix in EventSelector.h/.cpp added finalize stream. This fixes + the problem detected when running a job over several ROOT files that + were not closed properly and their memory buffers deallocated. + +! 20020705 Pere Mato + - Modified/Fixed JobOptions service (PropertyCompiler) to support properties with units. + The file containing the unit equivalences is specified as: + #units "units file" + The format of the file is: + <value> <unit_name> = <equivalent_value> + For example: + 1 m = 1000 + 1 cm = 10 + The syntax in the JobOptions files is: + <numerical_value>[*]<unit_name> + For example: + PropertyAlg.ArrayWithUnits = { 1.1 m2 , 2.cm, 3.3*cm, 0.4e-03 * m }; + +!================ GaudiDb v8r1====================================== +! 20020718 Frank Markus + - Bug fix in DbEvtSelector: properly close the database + once the iteration is finished. + +!================ GaudiRootDb v9r0====================================== +! 20020717 - Pere Mato + - Re-compilation needed for ROOT version 3.03 (3.02/06) + +!================ RootHistCnv v8r0 ========================================== +! 20020717 - Pere Mato + - Change of the ROOT version to v3.03 (3.03/06) + +! 20020703 - Paolo Calafiura + - PersSvc.cpp: disambiguate method overload for SmartDataPtr + - RCWNtupleCnv.cpp: removed static parseName qualifier diff --git a/GaudiRelease/doc/release.notes.v11r0 b/GaudiRelease/doc/release.notes.v11r0 new file mode 100644 index 000000000..268e25d2a --- /dev/null +++ b/GaudiRelease/doc/release.notes.v11r0 @@ -0,0 +1,253 @@ +================ GaudiPolicy v5r6 ======================================== +! 20020913 - Pere Mato + - removed -Bsymbolic in the componentshr_linkopts macro. This is + suspected of producing memory leaks. + - added more tags to take into account new version of redhat and gcc compiler + +================ GaudiKernel v13r0 ======================================= +! 2202-10-04 - Pere Mato + - Changed interface IJobOptionsSvc to add accessors to the JobOptions + catalogue + +! 2002-09-27 - Sebastien Ponce + - fixes in order to compile on gcc 3.2 + - lots of coding conventions applications + +! 2002-09-25 - Markus Frank + - Add declarations for object factories to DeclareFactoryEntries.h + - Remove windows compiler warning in Bootstrap.cpp + +! 2002-09-25 - Sebastien Ponce + - Implementation of the reinitialize method for DataSvc + +! 20020916 Pere Mato + - Changes to clean the reference counting and memory deallocation + detected by the "valgrind" tool. + +! 20020703 Paolo Calafiura + - RegistryEntry.h: put DataSvc in the global ns when declaring as friend + - Service.h: add ISvcLocator include for service() inline implementation + +! 20020628 Pere Mato, Sebastien Ponce + - Improved error reporting when loading dynamic libraries + - Changed INFO messages to DEBUG when initializing services + - Replaced forward class declarations by including the concerned header files. + This is to aliviate user confusion. + - Added function format(string fmt, ...) that can be used to format messages + within the MsgStream class. + Example: + log << MSG::INFO << format("Evt: %8d Run: %8d", evt, run) << endmsg; + Caveat: Since the unspecified argument list is used (...) the arguments can not + be cheched for the correct type and possible conversions are not triggered. + +! 20020529 Paolo Calafiura + - Auditor.h: service() needs IServiceLocator header file + - DeclareFactoryEntries.h: typo in AudFactory name + +! 20020506 Paolo Calafiura + - PropertyMgr: use interface hub (Massimo ApplicationMgr refactoring) + +! 20020506 Andrea Valassi + - Change in MsgStream.h to allow the use of std::hex on Windows + +================ GaudiSvc v10r0 ============================================ +! 2002-10-04 - Pere Mato + - Added accessors to the JobOptions Catalogue to allow to edit from any + client: getClients(), getProperties(...), addProperyToCatalogue(...), + removePropertyFromcatalogue(...) + New version of IJobOptionsSvc. + +! 2002-09-27 - Sebastien Ponce + - fixes in order to compile on gcc 3.2 + - lots of coding conventions applications + +! 2002-09-27 - Sebastien Ponce + - fixes in order to compile on gcc 3.2 + - lots of coding conventions applications + +! 2002-09-27 - Pere Mato + - Added the following properties to MessageSvc to allow the control of output level + for objects that can not be controlled by job options (e.g. DetectorElement, etc.) + MessageSvc.setVerbose += {"name1", "name2"}; + (or setDebug, setInfo, setWarning, setError, setFatal, setAlways ) + +! 2002-09-25 - Sebastien Ponce + - implementation of reinitialize method for DetDataSvc + - implementation of histogram serialization and deserialization + +! 20020924 - Pere Mato + - Changes to clean the reference counting and memory deallocation + detected by the "valgrind" tool. + Modified files: ApplicationMgr.cpp(h), + AlgorithmFactory.cpp, AppMgrRunable.cpp(h), ConverterFactory.cpp, + DLLClassManager.cpp(h), EventLoopMgr.cpp(h), MinimalEventLoopMgr.cpp, + ObjectManager.cpp(h), ServiceManager.cpp, AuditorSvc.cpp, EvtDataSvc.cpp(h), + EventSelector.cpp, HistogramSvc.cpp, PropertyCompiler.cpp, MessageSvc.cpp, + RndmEngine.cpp, RndmGen.cpp, RndmGenSvc.cpp + +============== GaudiAud v6r1========================================================== +! 2002-09-24 - Pere Mato + - Changes to clean the reference counting and memory deallocation + detected by the "valgrind" tool. Changed failes: ChronoAuditor.cpp (.h) + - requirements: use v* + +================ GaudiAlg v6r2 ======================================= +! 2002-09-27 - Pere Mato + - Added new base class GaudiAlgorithm developed originally in the context of + the LHCb Calorimeter (Ivan Belyaev [Ivan.Belyaev@cern.ch]) + + The most essential features + + 1) 3 predefined properties: a) "Input", b) "Output", c) "Detector" + for value of each property the special accessor is defined: + inputData(), outputData(), detData() + + 2) initialize method prints the values of all used properties + in MSG::DEBUG mode + + 3) Simplified error/warning/exceptions/printing: + + StatusCode sc = ... ; + if( sc.isFailure() ) { return Error("something wrong here!",sc);} + ... + if( sc.isFailure() ) { return Warning("something wrong here!",sc);} + + Each errors and warning are counted internally and at the end + one has the full printout of all errors, warnings and exceptions. + + The actual error message is extended with the name the actual + type (RTTI) of the algorithm + + 4) Easy way to deal with exceptions (catch, throw, re-throw) + + a) throw the exception: + + if( sc.isFailure() ) { return Exception(" something wrong here!");} + + "Return" here is artificial. Nothing is actually returned. + and exception is thrown + + b) catch and rethrow the exceptions + try { ... } + catch( const GaudiException& e1 ) { + /* do something here */ + /// rethrow the exception (if needed) + return Exception(" coudl not recove Gaudi exception, rethrow it ", e1 ); + } + catch( const std::exception& e2 ) { + /* do something here */ + /// rethrow the exception (if needed) + return Exception(" could not recove the std::exception, rethrow it ", e2 ); + } + catch( ... ) { + /* do something here */ + /// rethrow the exception (if needed) + return Exception(" could not recove the unknown exception "); + } + + + 5) easy ("1 line") access to the data, e.g. + + const MCParticles* particles = get( eventSvc() , inputData() , particles ); + + In the case of errors, method throws an exception. + Error message is printed. + One does not need to check the value of pointer against null. + For "DEBUG" output level the actual data type and location will be + printed. + + 6) easy ("one line) registration of object into GTES: + + MCParticles* particles = ... ; + StatusCode sc = put( particles , outputData() ); + + In the case of errors, method throws an exception. + Error message is printed. + One does not need to check the return value. + For "DEBUG" output level the actual data type and + location will be printed. + + + 7) easy ("one line") access to tools: + + IMyTool* mytool1 = tool( "some combination of type and name" , mytool1 , this ) ; + IMyTool* mytool2 = tool( "some type", "some name" , mytool2 , this ) ; + + Both methods throw exception for unlocated tools. + Type coudl be "Type" or "Type/Name" , Name could be "Name" or "", + and any combination is possible and has sence. + It is useful if one specify Type, Name or Type/Name from properties. + The methods are able to decoder properly all these cases. + For "DEBUG" output level the actual tool type and name will be printed. + + 8) Assertions + + StatusCode sc = ... ; + Assert( sc.isSuccess() , " soem failure occurs! " ); + + Assertions are efficient (they are inlined), they do not + result in significant performance degradation and could be + used for all purposes. + +! 2002-09-24 - Pere Mato + - Changes to clean the reference counting and memory deallocation + detected by the "valgrind" tool. Changed files: Sequencer.cpp + +================ GaudiGSL v2r0 ======================================= +! 2002-09-27 - Ivan Belyaev & Kirill Miklyaev + - new minimization tool is added + GaudiGSL/IFuncMinimum.h the abstract interface + src/FuncMinimum.h,.cpp the concrete implementation + of minimization tool + + Example of the configuration of minimization tool: + +// choice of underlying minimization algorithms: +// (1) conjugate_fr ( default ) +// (2) conjugate_pr +// (3) vector_bfgs +// (4) steepest_descendent +ToolSvc.FuncMinimum.Algorithm = "conjugate_fr" ; /// default value + +/// declare maximum of iteration +ToolSvc.FuncMinimum.Iteration = 1000 ; // default value is 200 + +/// declare the absolute tolerance for the Euclidean norm of the gradient +ToolSvc.FuncMinimum.Gradient = 1e-10 ; // defualt value + +!==================== HbookCnv v13r1 ========================== +! 2002-09-23 - Florence Ranjard + - requirements - use v* + +! 2002-07-16 - Florence Ranjard + - requirements - use CERNLIB v2r2002p* and AIDA v3r22p* + +! 2002-06-04 - Charles Leggett + - write/read CWNTuples with multiple blocks. + + writing to block "LEPTON": + nt->addItem ("LEPTON/NELE", m_nele, 0, 100); + nt->addItem ("LEPTON/PXELE", m_pxele, m_nele); + if no block name is given, variables will be put in a block + called AUTO_BLK + nt->addItem ("Event", m_event); + + reading: + use same format as for writing + nt->item("LEPTON/NELE", m_nele); + nt->item("LEPTON/PXELE", m_pxele); + nt->item("Event",m_event); + + Block names must be at most 8 characters. + +! 2002-05-15 - Paolo Calafiura + - changes to dinamically resize pawc. //Charles + +=============== GaudiObjDesc v4r5 ====================================== +!20020925 - Stefan +- new database of header-files generated +- meta-information about constructors added to the dictionary-files + +================ GaudiODBCDb v8r1====================================== +! 20020927 - Markus Frank (v6r0) + - Fix compatibility on Linux. Should compile without warnings. diff --git a/GaudiRelease/doc/release.notes.v11r1 b/GaudiRelease/doc/release.notes.v11r1 new file mode 100644 index 000000000..2393a6b62 --- /dev/null +++ b/GaudiRelease/doc/release.notes.v11r1 @@ -0,0 +1,72 @@ +!================ GaudiPolicy v5r7============================================ +! 20021028 - Pere Mato + - Added compilation flag -Wno-deprecated to avoid warnings when compiling with gcc3.2 + +!======================== ExternalLibs v4r0p1 =============================== +! 2002-10-29 - Pere Mato + - Added new tags rh73_gcc2952 and rh74_gcc32 in PLATARCH + +! 2002-10-09 - Paolo Calafiura + - small fixes for LBNL site + +================GaudiKernel v13r1===================================== +! 2002-10-21 - Pere Mato + - IRegistry.h - the typedefs in this class are now public. + +! 2002-10-21 - Sebastien Ponce + - Bug fix in StreamBuffer for deserialization of char* + +! 2002-10-11 - Paolo Calafiura + - Added protection in ConversionService::setDataProvider: since ATLAS use + StoreGate and pass a NULL pDataSvc pointer. + +!==================== HbookCnv v13r1p1 ========================== +! 20021020 - Markus Frank + - Pad tag names properly for row wise N-tuples to make + +================= RootHistCnv v8r0p2 ======================================= +! 2002-10-10 - Pere Mato + - Corrected bug reported by Thomas Ruf concerning the filling of + underflow and overflow contents for 2D and 3D histograms. + +!============================= XERCES v2r160p1 ============================ +! 2002-10-29 - Pere Mato + added -lpthread in the XERCES_linkopts macro (required by gcc 3.2) + + ================ GaudiDb v8r3====================================== +! 20021104 Markus Frank + - Remove #ifdef WIN32 and make vc6 code again same as gcc code. + +! 20021028 Pere Mato + - Some changes required to compile with gcc 3.2 + (repoted by Michael Kuss/GLAST) + +================== GaudiIntropection v4r4p1 ============================ +! 20021029 - Pere Mato + - Corrected minor problems to compile with gcc 3.2 + +================ GaudiSvc v10r0p1 ============================================ +! 2002-11-04 - Pere Mato + - Changed INFO to DEBUG the messages generated by OutputStream when adding + items into the output list + - Cahnges in printing in JobOptions: + - printing always what include files are included + - do not print when switch on/off printing + - printing on/off is inherited by included files but not inherited back + when returning to parent file. + +! 2002-10-29 - Pere Mato + - Minor warnings on gcc 3.2 + +================ GaudiRootDb v9r1p1=============================== +! 20021028 - Pere Mato + - Compilation with gcc 3.2 + +================ GaudiODBCDb v8r1p1====================================== +! 20021031 - Pere Mato + - Fix compilation errros with gcc 3.2 + +================ GaudiAlg v6r3 ======================================= +! 2002-09-27 - Vanya Belyaev + - Corrected bug it setDetData() + - Added macro ALG_ERROR to print file name and line number when reporting errors diff --git a/GaudiRelease/doc/release.notes.v11r2 b/GaudiRelease/doc/release.notes.v11r2 new file mode 100644 index 000000000..f2ed352bf --- /dev/null +++ b/GaudiRelease/doc/release.notes.v11r2 @@ -0,0 +1,77 @@ +================GaudiKernel v13r2===================================== +! 2002-11-06 - Sebastien Ponce + - fixes in order to remove deprecated warnings on gcc 3.2 + - coding conventions applications + +! 2002-11-11 - Markus Frank + - Timing.cpp: Use routine ::gettimeofday(...) to measure current time. + This improves the precision of several timing measurements + (current time, elapsed time) to 1 micro second. + The change affects linux only. + +! 2002-11-08 - Markus Frank + - Move CLID for N-tuples into ClassID.h + - Fix bug in ISvcLocator.h: If service initialization failed, status was still OK. + +! 2002-11-06 - Markus Frank + - DeclareObjectFactory.h - add declarations for containedobject factories + and dataobject factories. + +================ GaudiSvc v10r1 ============================================ +! 2002-11-06 - Sebastien Ponce + - fixes in order to remove deprecated warnings on gcc 3.2 + - coding conventions applications + +! 2002-11-08 - M.Frank + - Add seperate service for histogram persistency. Allows to read + histogram input from several sources. + Required changes: + No necessity to check everywhere for "ApplicationMgr.HistogramPersistency". + It is only done in HistogramPersistencySvc, which is ALWAYS created, + but depending on the real value of "ApplicationMgr.HistogramPersistency" + invokes the proper histogram conversion service for HBOOK, ROOT etc. + + End user implications: Normally None + However, if explicit properties for HBOOK/ROOT should be set + like the PAWC size, the service to talk to is + - HbookHistSvc for HBOOK + - RootHistSvc for ROOT + + Required changes: + - ApplicationMgr + - EventLoopMgr + - HistogramSvc + New property "Input": vector<string> histogram input + (format as for N-tuple Svc) + - PersistencySvc + Minor updates. + + New files: + - src/ApplicationMgr/HistogramAgent.h + - src/PersistencySvc/HistogramPersistencySvc.cpp + - src/PersistencySvc/HistogramPersistencySvc.h + +================ GaudiRootDb v9r1p2 ================================ +! 2002-11-12 - Florence Ranjard + - requirements - add RFIO library in GaudiRootDb_shlibflags at CERN + and WIN32 to be able to read castor files + +!==================== HbookCnv v13r2 ========================== +! 20021108 - Markus Frank + - Implement histogram reading for H1D, H1DVar, H2D + But be careful: + AIDA does NOT support to set bin contents/errors directly. + The best I could do is to set the content; the errors will + be sqrt(content). RMS, MEAN etc. are not correct. + - Change all factories to export only IFactory reference: + Makes GaudiSvc_load much simpler. + Specialized IXXXFactory reference is not necessary + +================ GaudiExamples v11r1 ================================ +! 20021112 - Pere Mato + - Changed Histograms.exe example to test reading histograms + +===============================GaudiObjDesc v4r5p1============================ +!20021112 - Stefan +- bugfix: corrected the output for 'const' return-values of self-defined methods + diff --git a/GaudiRelease/doc/release.notes.v11r3 b/GaudiRelease/doc/release.notes.v11r3 new file mode 100644 index 000000000..0cf68736c --- /dev/null +++ b/GaudiRelease/doc/release.notes.v11r3 @@ -0,0 +1,52 @@ +!================ GaudiPolicy v5r9============================================ +! 20021128 - Pere Mato + - Removed redefinitions of $(bin), $(src),.... + - Corrected bugs in patterns library_Clinkopts and library_Llinkopts + for UnixStatic + +================GaudiKernel v13r3===================================== +! 2002-11-21 - Sebastien Ponce + - fixes in Converter.cpp to avoid memory leaks + +! 2002-11-19 - Pere Mato + - Added setExecuted() after execute() in Algorithm::sysExecute(). Requested by + Vanya. + +================ GaudiSvc v10r1p1 ============================================ +! 2002-11-29 - Pere Mato + - Corrections to support linking applications statically + +! 2002-11-21 - Sebastien Ponce + - memory leak fixes in DetDataSvc and PersistencySvc + +! 2002-11-19 - Sebastien Ponce + - memory leak fix in EventLoopMgr + +! 2002-11-06 - Sebastien Ponce + - fixes in order to remove deprecated warnings on gcc 3.2 + - coding conventions applications + + ================ GaudiAlg v6r3p1 ======================================= +! 2002-11-29 - Pere Mato + - Corrections to support linking applications statically + +================ GaudiDb v8r3p1====================================== +! 2002-11-29 - Pere Mato + - Corrections to support linking applications statically + +!==================== HbookCnv v13r2p1 ========================== +! 2002-11-29 - Pere Mato + - Corrections to support linking applications statically + +================= RootHistCnv v8r1p2 ======================================= +! 2002-11-29 - Pere Mato + - Corrections to support linking applications statically + +================ GaudiRootDb v9r1p3 ================================ +! 2002-11-29 - Pere Mato + - Corrections to support linking applications statically + +!============================== ROOT v2r30309p1 =========================== +! 2002-11-29 - Stefan Roiser + Improved requirements. Added specific fragments for nmake to correct + some of the problems diff --git a/GaudiRelease/doc/release.notes.v11r4 b/GaudiRelease/doc/release.notes.v11r4 new file mode 100644 index 000000000..cad03bcc4 --- /dev/null +++ b/GaudiRelease/doc/release.notes.v11r4 @@ -0,0 +1,5 @@ +================ GaudiSvc v10r1p2 ============================================ +! 2002-12-11 - Markus Frank + - Corrected reference counting of ConversionSvc in OutputStream.cpp + This was producing a crash at the end of Brunel. Reported by Marco. + diff --git a/GaudiRelease/doc/release.notes.v7 b/GaudiRelease/doc/release.notes.v7 new file mode 100644 index 000000000..cc05b8a68 --- /dev/null +++ b/GaudiRelease/doc/release.notes.v7 @@ -0,0 +1,344 @@ +package Gaudi +package manager: Pere Mato + + +! ============================================================================ +! 20010316 GaudiKernel v9 + + - New Interface added IEventProcessor + - Minor changes in IValidity.h, MsgStream.h ClassID.h + - Removed const in IProperty::getProperty(const string&, string&) + Implies to modify all the classes implementing such interface + - IScriptingSvc.h Add execute( const std::string& ) to allow for execution + of a script. + - Property.cpp Fix problem in dealing with either double or single quotes + as delimiters for string values. + + - GaudiKernel/ + Bootstrap.h Add entry point to create multiple Application Managers + StreamBuffer.h Change in buffer allocation (See Gaudi Developers message) + strcasecmp.h Make inline function for WIN32 to standardize on Linux str(n)casecmp + without all the #ifdefs + HashTable.h Bug fix by Traudl Hansl-Kozanecka (GLAST) + RefTable.h dto. Moved from LHCbEvent to GaudiKernel. + IRunable.h new interface for Runable + IAppMgrUI.h Allow access to the application managers state. + (May need changes to ApplicationMgr in GaudiSvc) + SystemBase.h ->@System + System.h ->@System + Timing.h ->@System + Memory.h ->@System + ModuleInfo.h ->@System + Debugger.h ->@System + + - src/static/ Move all files to LIB - static is no longer needed at all! + + - src/Lib + Bootstrap.cpp Add entry point to create multiple Application Managers + DataObject.cpp Remove warning on linux in acceptInspector() + ConversionSvc.cpp Bug-Fix: if on creating persistent objects no converter was + found success (!!) was returned. No correctly returns error. + + System.cpp ->@System + Debugger.cpp ->@System + Memory.cpp ->@System + Timing.cpp ->@System + ModuleInfo.cpp ->@System + Win32PsApi.h ->@System + ProcessDescriptor.h ->@System + ProcessDescriptor.cpp ->@System + + -@System: + Major code reshuffeling. + - Static class was changed to namespace. This will make it much simpler to + extend the functionality without actually having the default header System.h. + System.h containes the declarations of all functions in a backwards-compatible way. + - All other functionality was factorized out: + Memory.h/cpp Info about memory consumption + Timing.h/cpp Info about time consumption + ModuleInfo.h/cpp Info about running modules + Debugger.h/cpp Invoke debugger from running program (NT only) + ProcessDescriptor.h/cpp **Internal** access to process specific information + + Win32Api.h as it is exported by Linux/NT. This header is PURELY internal + and should never be included directly. + + - Moved files ISolid.h, IPVolume.h, ILVolume.h, IDetectorElement.h, IGeometryInfo.h + ITransportSvc.h to the DesDesc package. Forward links to the new position have been + left in place. + + - Implemented PropertyMgr::setProperty( const std::string& n, const std::string& v ) + - Properly implement the macro QUOTEDELEMENTINPUT. + CTDay ir right when he quotes that this is "HACK Big Time". It's also undebuggable. + + - Corrected bug reported by O. Callot that the OutputLevel was not working + for Algorithms. + + - ARM page 210 tweaks to IToolFactory.h to avoid compiler warnings. Add + DECLARE_ALGTOOL(X) and DECLARE_TOOL(X) macros to DeclareFactoryEntries.h + + - Changes for Solaris support, which is incomplete. The package compiles on + this platform, but some of the required template specialization "hacks" are + not fully understood and need to be revisited. Run-time debugging hasn't + yet begun. + - Changes to avoid compiler warning messages. These are all due to function + overloading across class hierarchies. The policy is described on Page 210 + of the ARM. It's not yet clear whether these are compatible with the Visual + C++ compiler on NT. Modified files: + GenericLink.h IAlgFactory.h IAuditorFactory.h IDataDirectory.h + IFactory.h IHistogramSvc.h ISvcFactory.h ObjectContainerBase.h + ObjectFactory.h ObjectList.h ObjectVector.h + - Changes to support the scripting service. SimpleProperties now support + callback handlers for both reading and updating. The IProperty interface + has been extended to allow more flexible setting & retrieving of properties + from streams and strings. Modified files: + IProperty.h Property PropertyMgr PropertyVerifier + - Add support for explicitly specifying the CLID and name of the root + object in the transient event store (defaults are CLID_Event and "/Event"). + Modified files: + DataSvc IDataManagerSvc + - Other details: + AlgTool Algorithm Auditor Service + Support new IProperty interface. Use function template for + declareProperty. Support deferred service instantiation in service + accessors. + FactoryTable.h + Fix compiler warning because of missing comment characters + System.cpp + Minor tweak to avoid SOlaris compiler warning. + + + - Changes to deal with the template specialization in the new version of GNU c++ compiler + + - Modified System.cpp. Added suffix in the DLL name when loading + + - Changed CLID& by CLID in Converter base class to avoid weird problems with some + converters in Linux. + - Corrected bug in Algorithm::service() + - In Bootstrap.h, added static method Gaudi::svcLocator() to get the ISvcLocator* + in isolation. + - In ISvcLocation.h added a templated method ISvcLocator::service() to facilitate + retrival of services. + + - GaudiKernel/IGiGa*.h - update include file path to new schema. + + <<< Changes are not compatible with existing packages. Everything should be re-built >>>> + - Eliminated static library GaudiBase. + - Eliminated the constant data files IInterface.cpp and Kernel.cpp + - Renamed class IID to InterfaceID + - Added de definition of the InterfaceID (IID) constants in each interface Ixxxx.h file + - Introduced new file ClassID.h which constains some the definition of CLID and some basic + constants. + - Changes asked by Vanya for the classes: ILVolume, IPVolume, ISolid, IGeometryInfo, + IDetectorElement + + - Renamed Time::Time class by TimePoint class + - The constants Time::time_absolutepast and Time::time_absolutefutre are now defined + in the TimePoint.h. The namespace Time has been removed. + + - Cleanup and adaptation to the new way of documenting the code based + on Doxygen (JavaDoc style) + - Incorparated changes done by D.Quarrie in the old LHCb repository + + - Add isInitialized() and seInitialized() member functions and handling to prevent + multiple initialization attempts on the same Algorithm. This protection is needed + when scripting is in use. + + - Implemented a new service called ScriptingSvc. This is a service (with an + initial implementation based on Python), which provides a scripting capability + at run-time as opposed to the JobOptionsSvc which is limited to run startup + time. This service has entailed some changes to the Gaudi kernel classes, which + are mainly extensions to existing interfaces, but with some backwards-compatible + rework of several of the Property classes. + + Added new interface: IScriptingSvc + + - Auditor/Auditor + Same changes as for Algorithm. + + - Interfaces/IServiceLocator + Add list<IService*> getServices() for symmetry with the IAlgManager. + + - JobOptionsSvc + A major rework of the Property class hierarchy to better support the scripting + interface. For the most part the changes are backwards compatible, with the + exception that bounds checking involves use of a verifier(). Note that the + PropertyRef.cpp & .h files are obsolete since that class is now typedef'd. + The PropertyList class for nested properties is not yet functional. Both of + these classes have been retained but bypassed in the build for now. + + - Kernel/Service + Replace overloaded declareProperty function by function template. + Add PropertyMgr* accessor + + - ApplicationMgr/AppMgrUI + Add AppMgrUI class as intermediate class between IAppMgrUI and + ApplicationMgr. This simplifies the scripting interface. + + - Moved in ObjectVector<T> and ObjectList<T> from the LHCbEvent package. + Removed iterator from ObjectContainerBase class + + - Various changes needed for CMT v1r7 and Nmake + + - Moved *.cpp into src/static/ and src/Lib/ + - Moved *.h, *.icpp and GaudiFactory.cpp into GaudiKernel/ + - Updated #include statements + +! ============================================================================ +! 20010316 GaudiSvc v5 + + - HistogramSvc: Remove redundant trailing "/" character in histogram paths. + + - Some restructuring done on the ApplicationMgr. + New classes: EventLoopMgr, MinimalEventLoopMgr, GaudiEventLoopMgr with increasing + specialization. The ApplicationMgr delegates the Event Loop functionality to these ones. + AppMgrRunable it is the default runable (implements IRunable) that is activated + after the initialization is complete. It calls the nextEvent() of the ApplicationMgr. + - Changed in HistogramSvc and NTupleSvc the strtream for convering numbers to strings for + the itoa() function. + + - Adapted to the new method IProperty::getProperty(const string&, string&) + - Adapted to the new method IAppMgrUI::state() + + - ApplicationMgr + Add a temporary "Exit" command for force program termination from within + a script. This will be replaced at some point once we have proper control + mechanisms in place. + + Add an update callback handler to the OutStream Property. Allow the + HistogramPersistencySvc to be specified as "NONE" to avoid having + to specify one of "HBOOK" or "ROOT" when none is required. + + - JobOptionsSvc + Add source type "NONE" to bypass usage of the PropertyCompiler + and thence result in the catalog being empty. + + - Changes to the job options processing + - Make the job options service re-entrant. + Removed all static storage, which prevented reading the options twice. + - Add value-of operator '@' to assign a job option the value of another + option + Usage: + MyAlg.OutputLevel = @MessageSvc.OutputLevel; + ApplicationMgr.TopAlgs += { @ApplicationMgr.ExtSvc }; + Note: + The value-of of a vector addresses the elements, not the vector itself. + - Allow reset of vector lists to empty lists. + Usage: + ApplicationMgr.TopAlgs += {}; + + - Corrected bug in EventSelector.cpp which core dumped when accessing a non + existing file. + + - ApplicationMgr + Added update callback handlers to "TopAlg", "ExtSvc" and "Dlls" properties. + This allows them to be updated at run-time by the scripting interface, and + to act immediately upon such updates. Also added a "Go" Property which + allows minimal control handling. This will probably be replaced in the + future. Interchange the sequence of initialization of Algorithms and + Output Streams to allow the latter to reference the former. Deal with + the expanded IProperty interface. + - EventSelectorDataStream + Deal with support for renaming the root object of the transient event + store. Use StringProperty declaration from Property.h instead of its own. + - HistogramSvc + Deal with compiler warnings on Linux & Solaris related to ARM Page 210. + - OutputStream + Add "AcceptAlgs","RequireAlgs", "VetoAlgs" properties. This allows filtering + depending on the filter passed flags from the specified Algorithms. The + event will be written to the output stream if _any_ of the Algorithms in + the "AcceptAlgs" list was executed for this event and has its filter + passed set. The event will only be written if _all_ of the Algorithms in + the "RequireAlgs" list were executed and had their filter passed set. The + event will not be written if _any_ of the Algorithms in the "VetoAlgs" + list was executed and has its filter passed set. Combinations are logically + and'ed. The default remains to output every event. These properties have + update callback handlers associated with them so they can be modified at + run-time by the scripting interface and have an immediate effect. + - HepRndmEngin & HepRndmEngines + Correct a bug in the declaration of rndm( ) function which does not correctly + override the parent version. + + - Modified StatEntity.h by Vanya + + - Changes needed to accomodate to the new GaudiKernel that avoids the static library. This + means that the IIDs are now a static constant in the .h file instead of accessing them + by and external declaration. + - FactoryTable is cleaned each time a dynamic library gets loaded + + +! ============================================================================ +! 20010316 GaudiAud v3 + + - New Auditor MemStatAuditor made by I. Belyaev added to the package + +! ============================================================================ +! 20010316 GaudiAlg v3 + + - Small changes to make it compile in NT + - Add update callback handler for "Members" and "BranchMembers" properties. + This allows them to be changed at run-time via the scripting interface. + - Rename *.cxx to *.cpp to conform to GAUDI file name conventions. + +! ============================================================================ +! 20010316 GaudiTools v3 + + - Accommodate to the changes in GaudiKernel. Removed extern declaration for IIDs. + +! ============================================================================ +! 20010316 GaudiNagC v5r3p1 + + - Adapted to CMT v1r7 + +! ============================================================================ +! 20010316 GaudiDb v3 + + - Adapted to the new method IProperty::getProperty(const string&, string&) + + - Add support to re-locate (rename etc) files. + References are now consistent within the same file. + + - Changes for Solaris support. + - Changes to avoid compiler warnings (see ARM Page 210) on Linux & Solaris + - Changes to allow the CLID and name of the root object to be specified. + The defaults remain as CLID_Event and "/Event". + + - Changed to accomodate to the changes in GaudiKernel. + + - Add macros to DbContainerConverter.h and DbGenericConverter.h that support + classes in different namespaces. + + - Package supporting data persistency within the Gaudi framework. + Result of the splitting of the package DbCnv (v3) from LHCb. + +! ============================================================================ +! 20010316 HbookCnv v9 + + - Support multiple blocks per ntuple. Fix some minor character string handling + problems. + - Fixes to avoid having to specify a histogram output file even if only ntuples + are being created. Template specialization tweaks for Solaris. + - Accomodate to the changes in GaudiKernel. Removed the extern declarations to access + IIDs. + +! ============================================================================ +! 20010316 RootHistCnv v3 + + - Fix problems when using ROOT for both event and histogram persistency. + - Tweaks to NTupleINfo.h for template handling on Solaris. + - Accomodate to the changes in GaudiKernel. Removed the extern declarations to access + IIDs. + +! ============================================================================ +! 20010316 SIPython v1r1 + + - Corrected some problems for NT + - Eliminated from the cvs repository unnessary files + - Add support for the "theApp.Exit" command as a temporary method of forcing + program termination from within a script. + - Add handling for direct execution of a script from the C++ side. + + - This package is an implementation of the ScriptingSvc based on the Python + scripting language. The package name derives from "Scripting Interface, + Python". Note that many of the files are in fact generic, and might be + moved to a SIGeneric package in the future, leaving only the minimal + Python-specific C++ file and Python scripts. + diff --git a/GaudiRelease/doc/release.notes.v8 b/GaudiRelease/doc/release.notes.v8 new file mode 100644 index 000000000..5095d6714 --- /dev/null +++ b/GaudiRelease/doc/release.notes.v8 @@ -0,0 +1,203 @@ +package Gaudi +package manager: Pere Mato + +! ============================================================================ +! 20010706 GaudiKernel v10 + +- Changes in interfaces needed for improved interactivity support : + IService.h : Added new method reinitialize() to allow services to + take into account changes after the first time initialization + IAlgorithm.h : Added beginRun() and endRun() methods. These are called each time + the event loop is executed. + IEventProcessor.h : Added executeRun() and nextEvent() methods. This is to + eliminate the need to use the IAppMgrUI interface in the + EventLoopMgr components. + IAppMgrUI.h : Renamed method state() to stateName(). + IScriptingSvc.h : Deleted + +- Changes in support classes for transient data stores + + Bootstrap.h/cpp : Allow to set the instance of the service locator + in case several ApplicationMgr instances are present. + ObjectVector.h, + ObjectList.h : Add forward typedefs for pointer and const_pointer + (Requested by P.Calafiura/LBL) + RefTable.h : Implement serialize methods + RegistryEntry.h/cpp, + DataSvc.h/cpp : Implement several bug-fixes + - allow for objects in locations like /AA/BB/BB/BB/... + - allow to access objects with omission of the root + directory: "/Event/MC" is equivalent to "MC" + - execution optimization + SmartDataObjectPtr.h : Fix annoying compiler warning + SmartRefBase.h, + SmartRef.h : operator==() was badly implemented (Found by O.Callot) + strcasecmp.h : WIN32 needs an additional #include <cstring> + +- Added remote properties functionality. Changed PropertyMgr and base classes Service + and Algorithm +- Added MsgStream::endmsg with same functionality as endreq. (Request from ATLAS) +- Using AIDA Historams instead of LHCb private ones. The existing include files + include the new ones but generating a warning. The IAnnotation interface is added + because it does not exists in the used AIDA release + +- Fixed bug reported by M. Cattaneo. The OutputLevel of AlgTools was not + set correctly if the parent Algorithm didn't set it explicitely. + +- Allow access to data store items without specification of the top level + directory. It is equivalent to specify an histogram like "/stat/simple/1" + or simply "simple/1". Note that the the entire prefix "/stat/" must be + omitted. The use is backwards compatible. + +- Added a qualifier ALWAYS to the message service specifying that a given + message should always be printed. + ie. + MsgStream log (msgSvc(), "Name") + log << MSG::ALWAYS << "Hello." << endreq; + will result in + Name SUCCESS Hello. + and will not be omitted. + +- Bug fixes: + GaudiKernel/DllMain.icpp WINNT: Processhandle should no longer be closed + since the handle is shared for all DLLs. + GaudiKernel/INTuple.h Interface extended to directly use NTuple pointer + to write/read n-tuple. It is no longer necessary to + use the n-tuple service for these actions. + NTupleImplementation.h/cpp dto. + GaudiKernel/SmartDataPtr.h Bug fix: + SmartDataPtr<Object> obj (...) + if ( obj ) {...} + Check succeeded if object is present however + had bad type. Now this check checks for the + presence of the object AND the data type. + Moved pointer to object from SmartDataObjectPtr + to SmartDataStorePtr (template class). + Also moved corresponding check operators. + GaudiKernel/SmartDataLocator.h dto. + GaudiKernel/SmartDataStorePtr.h dto. + GaudiKernel/SmartDataObjectPtr.h dto. + GaudiKernel/SmartDataObjectPtr.cpp dto. + +! ============================================================================ +! 20010706 GaudiSvc v6 + +- Bug Fix in JobOptions. Scientific notation in floats/doubles is now working correctly +- Fixed problem "Gaudi jobs do not fail if the job options service fails + to set an option" CT0000000060711 by M. Cattaneo +- Fixed bug on Histograms projections introduced when going to AIDA + +- Minor bug fixes to logic for the interactivity support (scripting). +- Minor tweaks to avoid warning messages with gcc 2.95.2. + +- Number of changes needed for the interactivity support (scripting) + the ApplicationMgr and EventLoopMgr make use of the newly added method + reinitialize() to take into account changes in the configuration done + by the user interaction like adding new services or algorithms. These + new components are initialized in the reinitialize() method. +- Deleted GaudiEventLoopMgr class and moved its functionality to EventLoopMgr. +- Implemented IEventProcessor::executeRun() in ApplicationMgr and EventLoopMgr + to call beginRun() and endRun() to all Algorithms. +- Callbacks (handlers) in AppicationMgr to support scripting have been simplified. +- HistogramSvc implements reinitialize() + +- ChronoStatSvc : modification for improved printout + +- Dll/GaudiSvc_Load.cpp : Add new factory for event tag collections + NTuples/* : update to separate event tag collections from + NTuples. NTuple persistency is now completely + steered by the option + ApplicationMgr.HistogramPersistency + See mail of D.Rousseau in GAUDI_DEVELOPERS +- PersistencySvc/EvtCollectionStream.cpp + Update for separation of NTuples and + event tag collections + +- Modified HistogramSvc to use the AIDA interfaces (1.0). This required quite a lot + of changes due to the fact that setTitle() method was not definied. Instead the + IAnnotation has been used. + +- Allow Histograms and N-tuples to be booked without the top level directory + ie. without always specifying "/stat/....". The specification of an histogram + such as "/stat/simple/1" is now equivalent to "simple/1". The use of + histograms and N-tuples is backwards compatible. + +- NTupleSvc/NTupleSvc.cpp Simplification using changes in + GaudiKernel v10 +- EventSelector/EventSelectorDataStream.cpp Recognize SICB file type also for + specs like: + "DATAFILE='xxx.dat' TYP='SICB'" + is now equivalent to + "FILE='xxx.dat'" + +- Fixed bug concerning histograms being saved to disk before Algoritms are + finalized, reported by Stefan Piperov (HARP). Changed GaudiEventLoopMgr.cpp + +! ============================================================================ +! 20010706 HbookCnv v10 + +- Introduced new option to Hbook histogram persistency service + to steer the handling of row-wise N-tuples, because many people + complained about the additional column in the N-tuple. + The following options are possible: + Note: New DEFAULT is FLOAT_ONLY. + + // Old style (uses the additional column - backwards compatible) + HistogramPersistencySvc.RowWiseNtuplePolicy = "USE_DATA_TYPES"; + // Save and retrieve all variables as NTuple::Item<float> ONLY + HistogramPersistencySvc.RowWiseNtuplePolicy = "FLOAT_ONLY"; + // Fortran: IMPLICIT REAL*4 A-H,O-Z + // IMPLICIT INTEGER*4 I-N + HistogramPersistencySvc.RowWiseNtuplePolicy = "FORTRAN_STYLE"; + // Hungarian notation: Use variable name to determine type + // (first and possibly second char) + // Bxxx -> bool + // Cxxx -> char + // Ixxx -> int + // UIxxx-> unsigned int + // Fxxx -> float etc. + HistogramPersistencySvc.RowWiseNtuplePolicy = "HUNGARIAN_STYLE"; + +- Fixed problem that histogras and NTuples could not have the same ID + HbookDef.h Add declaration for HRESET + HConverter.h/cpp Common base class now for NTuples & Histograms. + Proper RZ directory handling for both + RZ and //PAWC objects. Histograms now + temporarily go to the //PAWC/stat/... directory + instead of being created in //PAWC, which caused + clashes. + H1DCnv.h/cpp + H1DVarCnv.h/cpp + H2DCnv.h/cpp Adjusted to make use of base class HConverter, + including proper directory handling. + DirectoryCnv.h/cpp Nearly dummy; uses base class HDirectoryCnv + PersSvc.cpp Cosmetics + +- Changed to use the AIDA interfaces. The IAnnotation is used to obtain the histogram + title and histogram id. + +! ============================================================================ +! 20010706 GaudiDb v4 + +- DbBaseConverter.cpp : Enhanced error printing in case of failures + +! ============================================================================ +! 20010706 GaudiRootDb v4 + +- Updated for use of ROOT version 3.01 + +! ============================================================================ +! 20010706 SIPython v2 + +- Modify logic to only execute the AppMgr.JobOptionsPath script + if none is explicitly specified _and_ the AppMgr.JobOptionsType + is set to NONE. +- Changed to use the IRunable interface. +- Getting the startup script from the ApplicationMgr options + +! ============================================================================ +! 20010706 RootHistCnv v4 + +- Changed to use AIDA interfaces +- Modified to not create a directory (/stat) if histograms are at top level +- Updated for use of ROOT version 3.01 diff --git a/GaudiRelease/doc/release.notes.v9 b/GaudiRelease/doc/release.notes.v9 new file mode 100644 index 000000000..56c9f439d --- /dev/null +++ b/GaudiRelease/doc/release.notes.v9 @@ -0,0 +1,160 @@ +package Gaudi +package manager: Pere Mato + +! ============================================================================ +! 20011129 GaudiKernel v11 + + - Many Changes for the DataStore classes re-design. It affects many classes: DataObject, + RegistryEntry, Converter, DataSvc and Interfaces: IRegistry, IDataProviderSvc, ... + More detailed instruction refer to: + http://lhcb-comp.web.cern.ch/lhcb-comp/Frameworks/Gaudi/Gaudi_v9/Changes_cookbook.pdf + + - MsgStream.cpp + Any change of the printout level from the application program + using MsgStream::setLevel(...) is ignored by the message service. + Update the local printout level on a by message bases and restore + the previous printout level. + + - NTuple.h + the function entries addItem(...) are DEPRECATED for + Ntuple columns, which depend on an index column. + The replacement is: addIndexedItem(...). + This has repeatedly caused confusion for users. + Also added doxygen information for these entries. + + - Added initialize() and finalize() methods in IAlgTool interface. + - The base class AlgTool implemements them as dummy but allows an implementation + of them on specific Algorithm Tools + - Removed the need to implement a queryInterface() in specific Algorithm tools. Instead + use the expresion declareInterface<Ixxxx>(this) in the constructor. + - Added releaseTool() method in IToolSvc. + + - New versions of interfaces: + ISvcManager.h (incompatible) Added more functionality to offload ApplicationMgr + ISvsLocator.h (compatible) Changed getServices() to const + + - Added new methods in DataSvc to be able to set the root without clearing + the store + + - Removed CLID_Event from ClassID.h to avoid clashes with Event.h generated from + GaudiObjDesc tools + + - Changed IInterface.h Introduced a new constructor for InterfaceID that + uses a name (class name) instead of the interface number. A hash + function converts the name into a number. + + - Changed SmartDataLocator.h reported by David Rousseau + + - Modified ClassID.h to include CondDB stuff + Solved bug in DataSvc.cpp reported by Andrea Valassi + + - Removed interfaces IGiGaSvc.h and IGiGaSetUpSvc.h + + - Extend IChronoStatSvc to support retrieving the delta-time between + start/stop pairs. + +! ============================================================================ +! 20011129 GaudiSvc v7 + + - Removed default services being creted by ApplicationMgr + - Allow to switch on and of printing of job options + while reading the job options text file. + Usage: + #pragma print on + #pragma print off + off will switch printing off; on will switch it on. + + - Changed ToolSvc to make use of the new methods initialize() and finalize() + in the IAlgTool interface modified in GaudiKernel. + - Implement new method of IToolSvc::releaseTool() + + - Many Changes for the DataStore classes re-design. See details in separate note + + - Removed functionality from ApplicationMgr and moved to ServiceManager + in what concerns dealing with Services. + - Interface ISvcManager improved and extended + - Removed the inheritance of ApplicationMgr to (ISvcManager, IAlgManager, + ICnvManager, IObjManager). Functionality recovered by queryInterface() + - Removed default services being creted by ApplicationMgr + + - Implementation of ClearStore for DetectorDataSvc + +! ============================================================================ +! 20011129 GaudiDb v5 + + - Changes to adapt to the new GaudiKernel that includes a re-design of + the data store classes + + - Small improvements. + +! ============================================================================ +! 20011129 HbookCnv v11 + + - Changes to adapt to the new GaudiKernel that includes a re-design of + the data store classes + + - New job option HistogramPersistencySvc.PrintHistos to steer + printing to standard output. Defaults to false. + - Persistency service fails initialize if output file not defined. + + - Allow RZ directory names up to 16 characters rather than 8. + - Delete histograms from PAW common after they were written to + disk; saves memory space, which was a problem. + + - Fixed the bug that was eliminating the first character in the + histogram titles. + +! ============================================================================ +! 20011129 RootHistCnv v5 + + - Changes to adapt to the new GaudiKernel that includes a re-design of + the data store classes + +! ============================================================================ +! 20011129 GaudiRootDb v5 + + - Changes to adapt to the new GaudiKernel that includes a re-design of + the data store classes + +! ============================================================================ +! 20011129 GaudiODBCDb v5 + + - Changes to adapt to the new GaudiKernel that includes a re-design of + the data store classes + +! ============================================================================ +! 20011129 GaudiPython v2 + + - First version with somhow limited functionality but useful for testing + - New package for interfacing Python using boost/python libraries + + +! ============================================================================ +! 20011129 GaudiIntrospection v2 + + - added map with ClassID-keys and corresponding MetaClass-values + - New package for object introspection + +! ============================================================================ +! 20011129 GaudiObjDesc v2 + + - changed serializing functions and operator overloading + - added serializing functions and operator overloading for serializing objects + + - relation-attribute 'ratio' renamed to 'multiplicity', possible values '1', 'M', 'm', 'N', 'n' + fragment for cpp-file production for dictionaries changed, destination is now /dict + classID-information added to cpp-files for passing it to the dictionary + + - many small changes: handling of arguments in selfdefined methods, concatenate class descriptions, produce + at least one empty constructor, handling and errorhandling of class-attribute 'argList' + + - CppWriter generates an entry (classname - packagename/classname) to the 'Headerdatabase' before writing the cpp + + - Added production of non-standard constructors, destructors, warning at top of file + + - Changed production of serializers in .h-files + + - New package object description based on XML files + + + diff --git a/GaudiRelease/doc/release.notes.v9r1 b/GaudiRelease/doc/release.notes.v9r1 new file mode 100644 index 000000000..273b95fbe --- /dev/null +++ b/GaudiRelease/doc/release.notes.v9r1 @@ -0,0 +1,39 @@ +====GaudiKernel v11r1 ======================================================= + +! 20020128 - Markus Frank + - DataObejct.cpp: Fixed bug + Automatically create leaves on registerAddress if the + Option "ForceLeaves" is set to true + - SmartRefs.cpp: + Fixed Feature: For smart refs to ContainedObject(s), resolve + parent pointer only when needed. + - ConversionSvc.cpp: + Bug fix: Converters were never finalized. Done from now on, whenever the + converter gets disconnected from the conversion service. + +====GaudiSvc v7r2 =========================================================== + +! 20020205 - Pere Mato (v7r2) + - Fixed bug reported by O. Callot that failing to load a DLL + should fail the configuration phase of ApplicationMgr. + Changed ApplicationMgr.cpp + +! 20020123 - Marco Cattaneo & Pere Mato + - Changed search list for the job options path. + It would take: + - argv[1] if it exists else + - JOBOPTPATH if it is set else + - default to ../options/job.opts + +! 20020123 - Sebastien Ponce + - Removed the use of variable DDDB in DetDataSvc + +====GaudiAlg v5r1 ========================================================= + +! 20020205 - Pere Mato (v5r1) + - Fixed bug reported by O. Callot that a Sequence must return an + error when it can not create one or more of the member Algorithms. + Changed Sequencer.cpp + + + diff --git a/GaudiRelease/doc/release.notes.v9r2 b/GaudiRelease/doc/release.notes.v9r2 new file mode 100644 index 000000000..e73cc1a76 --- /dev/null +++ b/GaudiRelease/doc/release.notes.v9r2 @@ -0,0 +1,71 @@ +================GaudiSvc v7r3===================================== +! 20020205 - Gloria Corti + - Modification necessary to correctly name a private tool belonging + to an other tool in ToolSvc. + +================GaudiIntrospection v3r0===================================== +! 20020214 - Stefan Roiser + - added handling of Arrays + - added handling of std::vectors + - generic invocation of methods added + - handling of inheritance when searching for methods and fields + - functions 'field' and 'method' of MetaClass will only return a pointer to a public meta-field/method if exists + - functions 'fields' and 'methods' of MetaClass will return vectors of pointers to meta-fields/methods + - added 'declaredMethod(s)' and 'declaredField(s)' which search in the inheritance-tree for all fields/methods + +================GaudiObjDesc v3r2===================================== +! 20020319 - Stefan Roiser + - introduced new <class>-attribute 'stdVectorTypeDef' for typedef of a std::vector of class-pointer + - introduced new <class>-attribute 'serializers' to enable/disable writing of serialize-functions + - bugfix typedefs and enums used in function-implementations outside class now prefixed with 'ClassName::' + +! 20020318 - Stefan Roiser + - applying naming rules for getters with abbreviations also to _dict.cpp-files + +! 20020314 - Stefan Roiser + - bugfix when using methods inside namespaces + - bugfix declaring public enums before method-definitions + +! 20020313 - Stefan Roiser + - attribute 'array' introduced in <attribute>-element + - element <method> inside <namespace> introduced + - bugfix when using forward-declarations <import name='packname/classname' soft='TRUE'/> + - bugfix no double includes of classes when specified in package- and class-scope + - attribute noQuote for <location>-element introduced (when concatenating variables) + +! 20020227 - Stefan Roiser + - GaudiObjDesc independent from GaudiKernel + - added tag 'ignore' to <import>-element for non-inclusion of types + - new naming-conventions for getters with abbreviations + - non-const getter for non-simple attributes, 1-M relations and pointers + - empty initialization of members in standard-constructor when initialization-value is given + - only one setter for 1-1-relations with SmartRef<Type> as argument + - only one addTo- and removeFrom-function for 1-M-relations with SmartRef<Type> as argument + +================GaudiObjDesc v3r1===================================== +! 20020214 - Stefan Roiser + - added <typedef> and <desc> as sub-elements of <namespace> + - added 'author'-attribute to <namespace> + - bugfix: Defs of <typedef>s recognized as types which do not have to be included + - bugfix: classes created through xml-file will be added to 'class-database' ad Event/'ClassName' + - handling of pointers as simple types + +================GaudiObjDesc v3r0===================================== +! 20020130 - Stefan Roiser + - added function to locate the place in the TDS + - added possibility to make pure virtual functions + - added 'translator' for unregular plurals + +! 20021028 - Stefan Roiser + - <namespace>-element introduced + - fragments will now write the output to sub-dir "Event" + - new 'database' of classes generated from Gaudi v9r0 + - bugfixes applied (writing to public, protected, private; including of unknown classes) + - typedef for KeyedContainer added if derived from KeyedObject + +! 20020118 - Stefan Roiser + - bugfix applied for better handling of fundamental types + - <enum>-element introduced + - attribute 'initList' for special constructors introduced, which will handle initialization + outside the {-paranthesis + -- GitLab