Skip to content

C++ codegen extensions, archetype tests, array ctors#2916

Merged
Wumpf merged 20 commits intomainfrom
andreas/cpp/custom-extensions
Aug 7, 2023
Merged

C++ codegen extensions, archetype tests, array ctors#2916
Wumpf merged 20 commits intomainfrom
andreas/cpp/custom-extensions

Conversation

@Wumpf
Copy link
Copy Markdown
Member

@Wumpf Wumpf commented Aug 5, 2023

What

Introduces a simple extension system for C++ codegen: Add an extra cpp file that will be compiled as part of the SDK. A section between two markes is copied into the generated hpp as part of generation (typically this section is removed from compilation via #ifdef)

Adds extensions to:

  • color
  • vec2/vec3/vec4
  • quaternion
  • origin3d
  • point2d
  • point3d
  • arrow3d

... and uses them to simplify examples and test code!

All fully supported archetypes now have a simple test that checks that the base interface works and that we can serialize out to arrow without issues.

Additionally, there's tests for vecN/quaternion/color to check that their various constructors work as expected (not being a C++ expert it's fairly hard to predict)

Extends codegen with single-array-field-constructors.


Checklist

@Wumpf Wumpf added the sdk-cpp C/C++ API specific label Aug 5, 2023
@teh-cmc teh-cmc self-requested a review August 7, 2023 07:39
@Wumpf Wumpf mentioned this pull request Aug 7, 2023
Copy link
Copy Markdown
Contributor

@teh-cmc teh-cmc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤌

@Wumpf Wumpf force-pushed the andreas/cpp/custom-extensions branch from fa1b387 to e73a7cb Compare August 7, 2023 08:22
@Wumpf Wumpf merged commit 52d66ea into main Aug 7, 2023
@Wumpf Wumpf deleted the andreas/cpp/custom-extensions branch August 7, 2023 09:16
@emilk emilk added examples Issues relating to the Rerun examples exclude from changelog PRs with this won't show up in CHANGELOG.md and removed examples Issues relating to the Rerun examples exclude from changelog PRs with this won't show up in CHANGELOG.md labels Oct 5, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

sdk-cpp C/C++ API specific

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Support manual extensions to generated types Arrow3D migration to archetypes

3 participants