Skip to content

7.3.5

Compare
Choose a tag to compare
@github-actions github-actions released this 20 Dec 06:06
· 99 commits to master since this release

Description

Abstract

The package concealer code was refactored.

Background

The code of the package concealer has been modified without any refactoring since its creation until today. This is not due to technical reasons, but simply because there was no opportunity. However, now that the merge of #1454 has been completed, I thought it was a good opportunity to refactor it.

Details

As the title suggests, I plan to refactor concealer in several stages. The purpose of this pull request is to first make the code more compact without making any functional changes.

Base Class Autoware

When I designed concealer, I was struggling with the need to support three different Autoware flavors in scenario_simulator_v2: Autoware.AI, Autoware.T4B, and AutowareArchitectureProposal. The structure of the base class Autoware and its derived class AutowareUniverse is based on the assumption that Autoware with an architecture different from Autoware.Universe will appear. However, in reality, no such different type of Autoware has appeared since the emergence of Autoware.Universe. This could be interpreted as just a coincidence that it has not appeared until now, but it is also true that the code is bulky due to this structure, so for the time being, I deleted the base class and simplified the code.

Reducing Member Functions

Member functions that are only used by certain member functions have been changed to function local functions. Making them private member functions was also an option, but we decided not to do so. Based on our experience in maintenance over the past few years, the cost of understanding where a certain member function is being called from is a burden both in terms of code modification and code review. This is just a matter of preference. I don't mind changing function-local functions to private member functions at some point, so I'm doing it this way for now to make refactoring following this pull request easier.

References

None.

Destructive Changes

None.

Known Limitations

None.

Related Issues