RISCSoftware / cpacs_tigl_gen

Generates CPACS schema based classes for TiGL
Apache License 2.0
5 stars 5 forks source link

Registration/Unregistration for vectors of UIDs missing #37

Closed RlanderRISCSW closed 3 years ago

RlanderRISCSW commented 3 years ago

For elements of type stringUIDBaseType which have maxOccurs > 1 no registration and unregistration logic for the UID references in the UIDManager is generated. Instead the reference to the raw vector of UIDs (string) is generated. This causes that a manipluation of this vector does not update the references in the UIDManager, so also the invalidation logic does not work as expected. In order to fix this the uid reference vectors should be detected by the code generator, and instead of returning a mutable reference to the vector Add and Remove functions for the vector elements should be generated, which implement the registration logic. (example: CPACSWallPositionUIDs::GetWallPositionUIDs)