Skip to content
Snippets Groups Projects
  1. Oct 17, 2023
  2. Sep 19, 2023
  3. Sep 13, 2023
  4. Jul 18, 2023
    • Marco Clemencic's avatar
      Reorganize files and refactor code to make GaudiAlg optional · 6babff9b
      Marco Clemencic authored
      - move Gaudi::Funtional to GaudiFunctional subdir
        - headers are now under "Gaudi/Functional"
        - legacy GaudiAlg corresponding header redirect to the new ones
      - replace GaudiAlgorithm with Algorithm wherever possible in tests and
        utilities
      - add Gaudi::Sequencer basic implementation to replace GaudiSequencer
      - move GaudiAlg specific tests, examples, dictionaries and Python modules
        to GaudiAlg subdir
      - add CMake option GAUDI_ENABLE_GAUDIALG to allow skipping GaudiAlg
        (default to true)
      - minor fixes and clean ups
      6babff9b
  5. Jun 02, 2023
  6. Jan 30, 2023
  7. Nov 10, 2022
  8. Jun 01, 2022
  9. Mar 30, 2022
  10. Mar 29, 2022
  11. Mar 25, 2022
  12. Mar 23, 2022
  13. Mar 19, 2022
  14. Mar 04, 2022
  15. Feb 23, 2022
  16. Jan 10, 2022
  17. Dec 20, 2021
  18. Dec 14, 2021
  19. Dec 13, 2021
  20. Dec 09, 2021
  21. Nov 16, 2021
  22. Oct 20, 2021
  23. Sep 02, 2021
    • Gerhard Raven's avatar
      Make Gaudi::Functional constructors more paranoid about # of inputs/outputs · 73911404
      Gerhard Raven authored
      Currenly, the constructors of the Gaudi::Functional baseclasses use
      `std::array<KeyValue,N>` as arguments where N is the number of inputs
      or outputs specified. However, this implies that one can specify a list
      of less than N KeyValues, as `std::array` will happily
      default-initialize any missing items. This will then result in an error
      in genConf, as this implies a property with a default-initialized string
      (i.e. an empty string) as key.
      
      This can be fixed by replacing the `std::array<KeyValue,N>` with a tuple
      with N `KeyValues, eg. for N=2 an `st::tuple<KeyValue,KeyValue>`.
      73911404
  24. Aug 17, 2021
  25. Jun 28, 2021
  26. Jun 27, 2021
    • Gerhard Raven's avatar
      Optimize TupleObj::fill · cfcde29c
      Gerhard Raven authored
      * avoid using C-style VA_ARGS which assumes 'double' arugments without any checking
      * generalize to 'all the same type of arguments' instead of 'all double', and check
        at compile time
      * avoid creating an `std::vector` to tokenize the format string
      cfcde29c
  27. Jun 25, 2021
    • Gerhard Raven's avatar
      Optimize the ItemStore in TuplePut.h · 49d0ee69
      Gerhard Raven authored
      * remove one level of indirection in memory layout
      * allow the use of std::string_view in find
      49d0ee69
    • Gerhard Raven's avatar
      Optimize TupleObj · d1d98ca8
      Gerhard Raven authored
      * remove one redundant layer of indirection in the storage of the
        'value' -- items in a `std::unordered_map` are stable, so no need
        to store a `unique_ptr<T>`, and instead just store a `T` directly
        (as T is highly constraint already in order to be able to write it
        into an NTuple)
      * make lookup by `std::string_view` instead of `std::string` as most
        usecases have a string literal (which is not an `std::string`) as
        argument, and in case of `std::string` this implies at least copying
        the characters, and (in case it overflows the SBO of `std::string`)
        a potential memory allocation
      d1d98ca8
  28. Jun 10, 2021
  29. May 17, 2021
  30. May 03, 2021
    • Alex Pearce's avatar
      Add a MultiMergingTransformerFilter. · 656dd321
      Alex Pearce authored
      Based on the MultiMergingTransformer implementation, but allows for
      algorithms to return a boolean which sets the 'filter passed' property
      for the control flow.
      
      A new test checks an example instantiation along one of
      MultiMergingTransformer, which was not previously tested. To make this
      test more obvious the IntDataProducer example now has a configurable
      value property.
      656dd321
Loading