| The Gaudi Framework v28r2-patches (bc4ad17a)

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

PartPropSvc

    Package : ParticleProp
    Package manager : Charles Leggett
    Commit Id: $Format:%H$

    ================================ Gaudi v28r2 =================================

    ================================ Gaudi v28r1 =================================

    ! 2016-12-14 - Attila Krasznahorkay (commit a42ff2a)

     - CMake configuration changes to build Gaudi with optional externals missing

       In the last days I experimented a bit with teaching Gaudi how to build when
       only ROOT, Boost and TBB are available to it. This is the result. As far as I
       can tell the code builds in the same way as the current master branch when
       all possible externals are available. (All the ones available in a full ATLAS
       offline build at least.) And I'm also able to build the project in these
       modes:
         * On Ubuntu 16.04 with the system provided Boost and TBB versions, against
       a privately built ROOT 6 version.
         * On macOS Sierra against privately built Boost, ROOT and TBB versions.
       Both when building the project completely on its own, and when building it
       against an ATLAS externals project.
        Some notes:
         * The code uses C++14 expressions in quite a few places by now. So I raised
       the default C++ standard to C++14. This is the default in ATLAS builds since
       a while, I only saw this as an issue when building Gaudi "on its own" with a
       very minimal configuration command.
         * While the code advertises that it still has support for ROOT 5, it's not
       able to build against it since a wile. Since the updates I put in for TLS
       variables on macOS. (The macros used there are ROOT 6 only.) And this update
       makes things even worse. As the code now relies on not providing the
       definition of some classes to the dictionary generator in GaudiPython that
       are not available. (Because AIDA or XercesC is missing.) While ROOT 6 handles
       this with just a build warning, ROOT 5's genreflex treats this with an ERROR
       message. That I was unable to get rid of.
        So, extended testing is clearly necessary, the configuration code could
       definitely be fine tuned as I probably turned off the build of more source
       files than absolutely necessary, but I think we should move ahead with such a
       configuration organisation.
        See merge request !241

    ================================ Gaudi v28r0 =================================

    ! 2016-10-28 - Marco Clemencic (commit 7a372bb)

     - fixed a few compilation warnings

       See merge request !221

    ! 2016-10-27 - Gerhard Raven, Marco Clemencic (commit b111898)

     - modernization of Property

       This is a major rewrite of the system of `Property` classes. Started as  the
       implementation of GAUDI-1214, it continued as a review of
       `IProperty` and `PropertyMgr`, to end up in a complete rewrite
       (and optimization) of `PropertyWithValue`.

       * Fixes GAUDI-1214
        - added missing `declareProperty` signature
        - added `PropertyHolder` (an updated `PropertyMgr`)
        - adapted all properties in Gaudi
       * improved use of `PropertyHolder`
        - use inheritance instead of composition
        - removed ~200 (duplicated) lines of code in GaudiKernel
       * optimization of Property (fixes GAUDI-1229)
        - use templates and automatic code generation to handle efficiently
          both value and reference properties
          - avoid creation of values on the heap (see GAUDI-1229)
          - removed the *owned* boolean flag
          - improved usability of properties (e.g. begin/end wrappers for
            C++11 loops, increment/decrement operators...)
          - deprecated use of C arrays as properties
        - merged features of `PropertyWithVerifier`, `SimpleProperty` and
          `SimplePropertyRef` into `PropertyWithValue`
        - deduplication of name and doc strings via

       [`boost::string_ref`](http://www.boost.org/doc/libs/1_61_0/libs/utility/doc/html/string_ref.html)

          and a static storage  (see GAUDI-1229)
       * Fixes GAUDI-1205
       * add deprecation warnings in service accessors of `Algorithm` (@graven)
       * renamed `Property` base class to `Gaudi::Details::PropertyBase` and
       `PropertyWithValue` to `Gaudi::Property`
        - added backward compatibility type aliases (but not compatible with
          forward declarations of `class Property`, which should be replaced
          by `#include "GaudiKernel/PropertyFwd.h"`)
       * added macro `GAUDI_PROPERTY_v2` to allow easy implementation of
        backward compatible changes in derived projects (e.g. when user code
        relied on `DoubleProperty` having a verifier)
       * Fixes GAUDI-1268
        The changes are as backward compatible as much as possible (except if you
       explicitly inherit from `SimpleProperty`, or you forward declared
       `class Property`, which now are typedefs), but must be validated in the
       experiment frameworks.
        See merge request !182

    ! 2016-10-12 - Marco Clemencic (commit b5e05a1)

     - improved handling of package version in CMake configuration

       use project version if a package version is not provided
        See GAUDI-1215.
        See merge request !175

    ! 2016-07-25 - Marco Clemencic (commit e3d4b07)

     - remove CMT configuration and related files

       * removed CMT configuration files
       * adapted scripts not to use CMT
        Fixes GAUDI-1216 Fixes GAUDI-979
        See merge request !186

    ============================== PartPropSvc v7r1 ==============================

    ! 2016-03-10 - commit 4a18175

     - removed uses of templates implements[1-4], extends[1-4] and
       extend_interfaces[1-4]

       Since merge request !22 they are unnecessary.
        See merge request !133

    ! 2016-02-11 - commit b0618f7

     - Improve CommonMessaging

       Implementation of GAUDI-1146: Improve CommonMessaging and use it in more
       places.

       See merge request !76

       Conflicts:
       GaudiExamples/tests/qmtest/refs/AlgTools2.ref
       GaudiExamples/tests/qmtest/refs/MultiInput/Read.ref
       GaudiExamples/tests/qmtest/refs/conditional_output/write.ref
       GaudiKernel/GaudiKernel/AlgTool.h
       GaudiKernel/GaudiKernel/Algorithm.h
       GaudiKernel/GaudiKernel/Service.h
       GaudiKernel/src/Lib/AlgTool.cpp
       GaudiKernel/src/Lib/Algorithm.cpp

    ============================== PartPropSvc v7r0 ==============================

    ! 2015-10-27 - commit e585b09

     - PartPropSvc: patch for bad parsing of input files: GAUDI-1119

       In the PartPropSvc, after upgrade to boost::regex, parsing of input files
       fails silently if no "=" is present in the token (ie file type is not
       specified), and the file loaded will be the default table instead of the user
       supplied one.

       eg: InputFile = "myPDGTABLE.MeV" will result in "PDGTABLE.MeV" being loaded
       instead, with no message that this has taken place.

       Fixes GAUDI-1119.

       See merge request !59

    ! 2015-10-26 - commit de80db5

     - More modernization changes

       Fix (almost) all warnings from clang 3.7, and use clang-modernize to further
       modernize the code.

       Fixes GAUDI-1118.

       See merge request !49

    ============================== PartPropSvc v6r4 ==============================

    ! 2015-09-11 - commit c062cbe

     - C++11 modernization changes

       Some trivial - and some not so trivial! - changes which take advantage of
       C++11...

       See merge request !7

    ============================== PartPropSvc v6r3 ==============================
    ! 2015-05-21 - Marco Clemencic
     - Fixed compilation with CMT.

    ! 2015-04-15 - Marco Clemencic
     - GAUDI-1024: Replaced Tokenizer with regular expression.

    ============================== PartPropSvc v6r2 ==============================
    ! 2014-10-07 - Charles Leggett
     - added missing neutrinos and gluon to PDGTABLE.MeV and PDGTABLE.2014.MeV

    M       share/PDGTABLE.MeV
    M       share/PDGTABLE.2014.MeV

    ============================== PartPropSvc v6r1 ==============================
    ! 2014-10-07 - Charles Leggett
     - added missing Geantinos to PDGTABLE.MeV and PDGTABLE.2014.MeV

    M       share/PDGTABLE.2002.MeV
    M       share/PDGTABLE.2014.MeV

    ! 2014-09-18 - Marco Clemencic
     - Updated CMake configuration.

    ============================== PartPropSvc v6r0 ==============================
    ! 2014-09-16 - Charles Leggett
     - updated PDGTABLE.MeV to 2011 numbers
     - moved old PDGTABLE.MeV to PDGTABLE.2002.MeV
     - added PDGTABLE.2014.MeV
     - deleted PDGTABLE (2002 in GeV) as nobody is using it

    D       share/PDGTABLE
    M       share/PDGTABLE.MeV
    A       share/PDGTABLE.2002.MeV
    A       share/PDGTABLE.2014.MeV

    ============================== PartPropSvc v5r1 ==============================
    ! 2014-03-18 - Ben Couturier
     - Fixed bug #104127: remove hwaf configuration.

    ============================== PartPropSvc v5r0 ==============================
    ! 2013-12-11 - Sebastien Binet
     - Added hwaf configuration files.

    ! 2013-07-19 - Marco Clemencic
     - Clean up in the use of the new PluginService.

    ! 2013-07-18 - Marco Clemencic
     - Removed use of obsolete AlgFactory.h, SvcFactory.h, ToolFactory.h,
       AudFactory.h and CnvFactory.h.

    ! 2013-07-17 - Marco Clemencic
     - Removed factories forward declarations.

    ! 2013-07-03 - Marco Clemencic
     - Removed explicit link to Reflex from CMakeLists.txt.

    ============================== PartPropSvc v4r6 ==============================
    ! 2012-11-14 - Marco Clemencic
     - Updated CMakeLists.txt.

    ============================== PartPropSvc v4r5 ==============================
    ! 2012-07-27 - Marco Clemencic
     - Rationalized the permissions of files in the repository.

    ============================== PartPropSvc v4r4 ==============================
    ! 2012-06-08 - Marco Clemencic
     - Added CMake configuration files.

    ============================== PartPropSvc v4r3 ==============================
    ! 2011-10-28 - Marco Clemencic
     - Changed the usage of make_pair to support C++0x.

    ============================== PartPropSvc v4r2 ==============================
    ! 2011-01-11 - Marco Clemencic
     - Fixed some ICC remarks.

    ============================== PartPropSvc v4r1 ==============================
    ! 2010-12-03 - Charles Leggett
     - Patch #76003: fix bug in initialize
       - change default location of PDGTABLE to remove "share" dir. Should
         really do this with a declare_runtime_extras to copy it to the Gaudi
         InstallArea/share dir, but this seems to be broken.

    ============================== PartPropSvc v4r0 ==============================
    ! 2010-08-18 - Charles Leggett
     - Patch #4323: allow user defined heavy ion handling in PartPropSvc
       - change way jobOpts handled: now assign type with each file
       - make log member var
       - allow user to specify UnknownParticleHandler function
       - instantiate PDT on first use, not before
       - PartPropSvc.cpp: handle heavy ions

    ============================= PartPropSvc v3r3 ===============================
    ! 2010-04-20 - Marco Clemencic
     - Removed ICC warnings and remarks.

    ================ PartPropSvc v3r2 ====================================
    ! 2009-07-21 - Hubert Degaudenzi
     - Fixed typo in the -no_static usage.

    ! 2009-07-20 - Marco Clemencic
     - Added '-no_static' to the declaration of the libraries (implemented since CMT
       v1r20p20081118).

    ================ PartPropSvc v3r1 ====================================
    ! 2009-06-10 - Marco Clemencic
     - Removed _dll.cpp and _load.cpp files (not needed anymore).

    ================ PartPropSvc v3r0 ====================================
    ! 2009-04-07 - Marco Clemencic
     - Moved back the namespace MSG to the global namespace.

    ! 2009-04-06 - Marco Clemencic
     - Renamed back the namespace Msg to MSG and moved it into the namespace Gaudi.

    ! 2009-02-19 - Marco Clemencic
     - Patch #2790: Rename the namespace MSG to Msg

    ! 2009-01-30 - Marco Clemencic
     - Replaced all the occurrences of endreq with endmsg.

    ! 2009-01-22 - Marco Clemencic
     - Adapted to the new IInterface functionalities (see GaudiKernel release.notes)

    ================ PartPropSvc v2r7 ====================================
    ! 20081028 Marco Clemencic
     - Removed extra "-lHepPID" from link options (already included in the LCG
       interface package).

    ================ PartPropSvc v2r6 =========================================
    ! 20070605 Paolo Calafiura
     Patch #1186.
     - added missing charged geantino.

    ================ PartPropSvc v2r5 =========================================
    ! 20070216 Charles Leggett
     Patch #1076
     - fix for default PDGTABLE.

    ================ PartPropSvc v2r4 =========================================
    ! 20070216 Charles Leggett
     Patch #1019
     - changed into a component lib
     - moved IPartPropSvc to GaudiKernel
     - moved PartPropSvc.h to src/

    ! 20070202 Hubert Degaudenzi
     - added missing library (CLHEP-HepPDT) in the CLHEP_linkopts macro
       (in the private section for the moment).
     - commented out the "apply_pattern install_runtime".

    ================ PartPropSvc v2r3p1 =========================================
    ! 20040910 Charles Leggett
     - src/PartPropSvc.cpp: uses PathResolver to locate PDT files
                            return FAILURE if can't find any files to open.

    ================ PartPropSvc v2r3 ==========================================
    ! 20040716 Charles Leggett
     - changed IID to InterfaceID

    ================ PartPropSvc v2r2 ==========================================
    ! 20040507 Charles Leggett
     - use standard macros in PartPropSvc_entries.cpp, PartPropSvc_load.cpp
     - removed PartPropSvc_dll.cpp

    ================ PartPropSvc v2r1 ==========================================
    ! 20040129 Paolo Calafiura
     - return an error if no PDT file was read
    ! 20040126 Charles Leggett
     - changed default data file to PDGTable.MeV. Obviously non-backward compatible

    ================ PartPropSvc v2r0 ==========================================
    ! 20040115 Paolo Calafiura
     - importing package to cvs repository"

    ! 20030624 Charles Leggett
     - removed built in version of HepPDT, uses CLHEP version instead
     - PartPropSvc.cpp: reads in Herwig and IsaJet as well
                      : removed QQ input mode
                      : added share directory, jobOptions and PDGTABLE file

    ! 20020703 Paolo Calafiura
     - TableBuilderT.icc: addQQParticles added return value (false) to
                          dummy implementation