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

MacroRootDict. Improving the identification of structures for dictionary generation #421

Merged
merged 3 commits into from
May 18, 2023

Conversation

jgalan
Copy link
Member

@jgalan jgalan commented May 17, 2023

jgalan Ok: 60

See also the following closed PR: #356

There was a problem with c++ structure identification for dictionary generation. The cmake macro identifying the struct keyword was also identifying the keyword structure that appears on the documentation.

  • A quick fix is added in this PR to search for the struct keyword with an additional space behind.

This PR solves the proper streaming of TRestRawBiPoToSignalProcess that was not properly storing MatacqBoard information.

However, there is an additional problem the cmake macro was only identifying the first struct found in the class.

  • The macro has been updated so that multiple structures can be added to the dictionary. The resulting LinkDef file is then auto-generated as follows (for the case of TRestRawBiPoToSignalProcess). Now both structures, MatacqBoard and BiPoSettings appear on the LinkDef file.
#ifdef __ROOTCLING__
#pragma link off all globals;
#pragma link off all classes;
#pragma link off all functions;
#pragma link C++ nestedclasses;
#pragma link C++ nestedtypedef;
#pragma link C++ class MatacqBoard+;
#pragma link C++ class std::vector<MatacqBoard>+;
#pragma link C++ class BiPoSettings+;
#pragma link C++ class std::vector<BiPoSettings>+;
#pragma link C++ class TRestRawBiPoToSignalProcess+;

The following PR will require the updates introduced in this PR.

rest-for-physics/rawlib#106

@jgalan jgalan marked this pull request as draft May 17, 2023 08:15
@jgalan jgalan changed the title MacroRootDict. Adding a space on struct identification MacroRootDict. Improving the identification of structures for dictionary generation May 17, 2023
@jgalan jgalan marked this pull request as ready for review May 17, 2023 13:10
@jgalan jgalan merged commit 7801872 into master May 18, 2023
@jgalan jgalan deleted the jgalan_cmake_fix branch May 18, 2023 10:16
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

Successfully merging this pull request may close these issues.

3 participants