Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New sio backend #130

Merged
merged 34 commits into from
Nov 10, 2020
Merged

New sio backend #130

merged 34 commits into from
Nov 10, 2020

Commits on Oct 6, 2020

  1. Copy earlier attempts and updated them where necessary

    - Reimplement old templates in jinja2 format
    - Adapt the generator accordingly
    - Merge CMakeLists.txt files (hopefully correctly)
    gaede authored and tmadlener committed Oct 6, 2020
    Configuration menu
    Copy the full SHA
    40e6de8 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    8a22165 View commit details
    Browse the repository at this point in the history
  3. Disentangle libTestDataModel and TestDataModelDict

    Makes it possible to remove the ROOT dependency from libTestDataModel in
    case for e.g. SIO reading.
    tmadlener committed Oct 6, 2020
    Configuration menu
    Copy the full SHA
    14b3678 View commit details
    Browse the repository at this point in the history
  4. Cleanup tests CMakeLists.txt for better readability

    Defining a function that creates tests and optionally links to the ROOT
    I/O if necessary allows for cleaner and definition of individual tests
    tmadlener committed Oct 6, 2020
    Configuration menu
    Copy the full SHA
    6ba4d8c View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    91e136e View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    f2ab11c View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    503dff0 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    5fd2c86 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    2a08d8e View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    b4c95a3 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    6c8f357 View commit details
    Browse the repository at this point in the history
  12. Add I/O of event meta data

    tmadlener committed Oct 6, 2020
    Configuration menu
    Copy the full SHA
    60bc62a View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    ec32fb5 View commit details
    Browse the repository at this point in the history
  14. First attempt of splitting core and IO libraries

    Making the core podio library independent of SIO (as it has previously
    also been done with ROOT). In a similar fashion split off the SIO
    dependent parts from the libTestDataModel and try to generate a specific
    blocks library that only contains the SIOBlocks stuff. Currently need to
    inclue at least one of the SIOBlock headers of the library to actually
    force the proper self-registration of the SIOBlocks in the SIOBlock
    factory.
    tmadlener committed Oct 6, 2020
    Configuration menu
    Copy the full SHA
    2bee996 View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    0bd80a8 View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    ab772fe View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    cd0dfa1 View commit details
    Browse the repository at this point in the history
  18. Configuration menu
    Copy the full SHA
    b73975b View commit details
    Browse the repository at this point in the history
  19. Configuration menu
    Copy the full SHA
    90c02c4 View commit details
    Browse the repository at this point in the history
  20. Make SIOReader follow the same interface as ROOTReader

    Now no longer owns the blocks it reads, but instead creates them for
    every event and then passes on the ownership to the EventStore
    tmadlener committed Oct 6, 2020
    Configuration menu
    Copy the full SHA
    683db11 View commit details
    Browse the repository at this point in the history
  21. Configuration menu
    Copy the full SHA
    ed5c9ff View commit details
    Browse the repository at this point in the history
  22. add option USE_BOOST_FS (for older macs)

     - turn on to use boost_filesystem instead of sustem one
     - used only in libSioIO so far
    gaede authored and tmadlener committed Oct 6, 2020
    Configuration menu
    Copy the full SHA
    59b62a8 View commit details
    Browse the repository at this point in the history
  23. Configuration menu
    Copy the full SHA
    9be042f View commit details
    Browse the repository at this point in the history
  24. Make IO handlers arguments to PODIO_GENERATE_DATAMODEL

    Making the generator accept (and require) these as command line
    arguments allows for a bit more flexibility in defining I/O backends.
    For backwards compatibility the additional argument to
    PODIO_GENERATE_DATAMODEL is currently made optional and defaults to only
    the ROOT backend.
    tmadlener committed Oct 6, 2020
    Configuration menu
    Copy the full SHA
    84e65d0 View commit details
    Browse the repository at this point in the history
  25. Copy functionality to check for fs libraries from dd4hep

    Make podio look for a compatible filesystem library itself during the
    cmake stage, eventually falling back to boost in case the compiler
    doesn't support it natively.
    tmadlener committed Oct 6, 2020
    Configuration menu
    Copy the full SHA
    a126485 View commit details
    Browse the repository at this point in the history
  26. Adjust the IReader interface and make implementations follow

    Marking the getEntries and endOfEvent methods virtual and adding them to
    the IReader interface allows to re-use the same code for the read tests
    independent of the reader that actually provides the data.
    
    NOTE: The current implementation of SIOReader::getEntries is just here
    for feature completeness, and should be replaced with a more performant
    and const-correct version.
    tmadlener committed Oct 6, 2020
    Configuration menu
    Copy the full SHA
    c229462 View commit details
    Browse the repository at this point in the history
  27. Configuration menu
    Copy the full SHA
    d70602c View commit details
    Browse the repository at this point in the history
  28. Make fs check compatible with older cmake versions

    VERBOSE and DEBUG become available as modes to message only in cmake
    3.15.
    tmadlener committed Oct 6, 2020
    Configuration menu
    Copy the full SHA
    dcd9462 View commit details
    Browse the repository at this point in the history
  29. Add some cmake macros for easier downstream usage

    Provide cmake functions to:
    - Add the core datamodel library without any I/O backend dependencies.
    - Conditionally add a ROOT dict target (if the corresponding code has
      been generated)
    - Conditionally add a SioBlocks library target (if the corresponding
      code has been generated).
    
    Example usage in tests/CMakeLists.txt
    
    The usage still requires downstream users to check whether the target
    has been generated if they absolutely require it, but at least a lot of
    the boilerplate that comes with building (or trying to do so) is now
    hidden in these functions.
    tmadlener committed Oct 6, 2020
    Configuration menu
    Copy the full SHA
    6ac0add View commit details
    Browse the repository at this point in the history
  30. Use correct function name also in docstring

    Co-authored-by: Andre Sailer <andre.philippe.sailer@cern.ch>
    tmadlener and andresailer committed Oct 6, 2020
    Configuration menu
    Copy the full SHA
    9c4a059 View commit details
    Browse the repository at this point in the history
  31. Configuration menu
    Copy the full SHA
    643fcba View commit details
    Browse the repository at this point in the history

Commits on Oct 8, 2020

  1. Configuration menu
    Copy the full SHA
    f2df7ec View commit details
    Browse the repository at this point in the history

Commits on Oct 9, 2020

  1. Configuration menu
    Copy the full SHA
    f7c9271 View commit details
    Browse the repository at this point in the history

Commits on Oct 14, 2020

  1. Configuration menu
    Copy the full SHA
    cdf77a9 View commit details
    Browse the repository at this point in the history