feat(base_peripheral): Update mutex to be mutable
and make all read
methods const
.
#538
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
base_mutex
asmutable
to allow locking inconst
methods.read
methods asconst
to reflect their non-modifying nature.read_register
methods to directly use the underlyingconfig
methods for accessing the peripherals, enablingconst
correctness.const Config &config() const;
anduint8_t address() const;
methods to the public section for better accessibility in subclasses.Motivation and Context
Allows
read
methods to be called onconst
instances of the class, improving code safety and clarity. This makes subclasses that implementread
methods more flexible and easier to use inconst
contexts.How has this been tested?
Screenshots (if appropriate, e.g. schematic, board, console logs, lab pictures):
Types of changes
Checklist:
Software
.github/workflows/build.yml
file to add my new test to the automated cloud build github action.