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

Make Python package and print_structure #4

Open
zonca opened this issue Nov 8, 2023 · 2 comments
Open

Make Python package and print_structure #4

zonca opened this issue Nov 8, 2023 · 2 comments
Assignees

Comments

@zonca
Copy link
Collaborator

zonca commented Nov 8, 2023

@maxnoe had already implemented most of the parsing of the higher level in Kaitai, and that is available in #1

@maxnoe @jpivarski Unless you have other recommendations, I was thinking about these next steps:

  • Turn the repo in a proper Python package where the kaitai automatically generated module is a subpackage of.

  • Implement the different types of Objects in the package so that we can reproduce what eventio_print_structure prints out, e.g.

    eventio_print_structure test_files/corsika_iact/one_shower.dat 
        RunHeader[1200]
        InputCard[1212]
        TelescopeDefinition[1201]
        EventHeader[1202](event_id=1)
        ArrayOffsets[1203]
        TelescopeData[1204](event_id=0)
          Photons[1205](array_id=0, telescope_id=0, n_bunches=382)
        EventEnd[1209](event_id=1)
        RunEnd[1210]
    
@zonca zonca self-assigned this Nov 8, 2023
@zonca zonca mentioned this issue Nov 17, 2023
@zonca
Copy link
Collaborator Author

zonca commented Nov 18, 2023

@maxnoe @jpivarski are the next steps suggested above fine?

@jpivarski
Copy link
Collaborator

Yes, I think it sounds great!

I think it's a good idea to maintain a separation between the generic Awkward-Kaitai Python package and an EventIO package that uses it. Similarly, there will be an SDSS package that uses the same generic routines. (It's good to have at least two dependents like this, to clarify what's generic and what's domain-specific on a case-by-case basis: "Do both EventIO and SDSS need this, or only one?")

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants