Skip to content
Snippets Groups Projects
  1. Nov 21, 2022
  2. Nov 15, 2022
    • Chris Burr's avatar
      Optimise basket sizes created by RootCnvSvc · 59218fc9
      Chris Burr authored
      Previously the basket size configuration could only be coarsely applied to all
      branches but in most real world files the size of the data in each branch varies
      significantly. Setting a small value causes large branches to be packed into
      individual baskets and prevents effective compression. Setting a large value
      improves the compression ratio of large branches but causes excessive memory
      usage.
      
      Instead we change the parameters to only specifiy the maximum and minimum
      branch size and provide a target for the number of events to pack into each
      basket. We then use the first event to estimate the size of the branch.
      
      This makes the branching very sensitive to the first event size however this
      seems to work okay in practice. If needed the basket sizes could be refined
      after several events to give a more precise estimate.
      59218fc9
  3. Nov 08, 2022
  4. Oct 12, 2022
  5. Jun 02, 2022
  6. Dec 09, 2021
  7. May 17, 2021
  8. Oct 26, 2020
  9. Jun 18, 2020
  10. Feb 26, 2020
  11. Feb 24, 2020
  12. Dec 14, 2019
  13. Oct 21, 2019
  14. Sep 20, 2019
  15. Aug 16, 2019
  16. May 15, 2019
  17. Mar 29, 2019
  18. Mar 08, 2019
    • Stefan Roiser's avatar
      fix compiler fallthrough warnings in · 07e77818
      Stefan Roiser authored
      GaudiKernel/GaudiKernel/StreamBuffer.h:569
      GaudiKernel/src/Lib/EventSelectorDataStream.cpp:81
      RootCnv/src/RootNTupleCnv.cpp:540
      
      by adding the [[fallthrough]] attribute (available since C++17)
      07e77818
  19. Feb 01, 2019
  20. Dec 18, 2018
  21. Sep 10, 2018
  22. Jun 13, 2018
  23. May 24, 2018
    • Gerhard Raven's avatar
      Modernize RootCnv · 637e63b5
      Gerhard Raven authored
      - prefer boost::string_ref instead of const std::string& in interfaces
      - add transparant comparison when using std::map, so that a string_ref
        can be used to search in a map which has keys of type std::string
      - move standalone functions only visible in a single compilation unit
        into an anonymous namespace so that these functions are not visible
        to the linker
      637e63b5
  24. Apr 16, 2018
  25. Apr 12, 2018
  26. Mar 16, 2018
  27. Feb 10, 2018
  28. Feb 09, 2018
  29. Feb 07, 2018
    • Gerhard Raven's avatar
      Avoid C-style casts · 257b12c6
      Gerhard Raven authored
      257b12c6
    • Frank Winklmeier's avatar
      Add category support to StatusCode · 22acc16e
      Frank Winklmeier authored
      The StatusCode now consists of a value and category/domain. By default
      StatusCodes are created within a "default category". But users can
      define new categories and StatusCodes using typed enums. The design is
      mainly borrowed from std::error_code.
      
      Main changes:
      - StatusCode::setCode has been removed
      - No implicit conversions from/to bool or int anymore. This greatly
        increases type safety.
      - Converted all unscoped enums in Gaudi to their own StatusCode
        category (Clients will have to adjust their code to the scoped enum
        names (e.g. ERR -> Status::ERR)
      - Added operator bool() that is equivalent to isSuccess()
      - Added ternary (bitwise) AND(&) and OR(|) operators to combine
        StatusCodes according to three-valued logic
      - Added extensive unit tests for all StatusCode features
      
      Impact on clients:
      - Code that relies on the implicit StatusCode<->bool/int conversion has
        to be changed to explicitly construct/convert StatusCodes via either
        the constructor, operator bool() or getCode().
      - Clients using Gaudi StatusCodes need to adjust to using the scoped
        enums. E.g. clients of the ConversionSvc need to change BAD_STORAGE_TYPE to
        Status::BAD_STORAGE_TYPE when checking for specific StatusCode return
        types.
      22acc16e
  30. Nov 29, 2017
  31. Nov 28, 2017
  32. Nov 27, 2017
  33. Nov 24, 2017
  34. Nov 15, 2017
    • Frank Winklmeier's avatar
      Remove unnecessary long/StatusCode conversions · ae4e372e
      Frank Winklmeier authored
      In preparation for a larger re-design of StatusCode clean up a few
      places where the code unnecessarily relies on an implicit long
      type-conversion. In detail:
      
      - ObjectVector::remove: Return the index of the deleted object as
        documented in the base class. Before it always returned 1
      - RegistryEntry: Change return type of some methods from long to
        StautsCode
      - IODataManager: Get rid of the S_OK/S_ERROR enum alias as this relies
        on the actual type of the StatusCode enums
      - RootDataConnection: Change return type of setCompression from
        long to StatusCode
      ae4e372e
  35. Sep 26, 2017
  36. Sep 19, 2017
  37. Jul 30, 2017
Loading