ExtendedController Base and MSVC updates #382
No reviewers
Labels
No Label
API Change
Breaking API Change
bug
build
cosmetics
Documentation
duplicate
feature
help wanted
hotfix
invalid
question
Refactor
Tests
wontfix
No Milestone
No Assignees
2 Participants
Notifications
Due Date
No due date set.
Blocks
#386 Local Pool Test Updates
fsfw/fsfw
Reference: fsfw/fsfw#382
Loading…
Reference in New Issue
Block a user
No description provided.
Delete Branch "mueller/fsfw-update-3"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Implements the forwarding of abstract functions to the user on top of #380 for the ExtendedControllerBase. This forces implementing functions to implement those abstract functions (which is better and more explicit), therefore classified API change.
Also includes updates to make the FSFW compilable with MSVC, using Visual Studio 2019 for my tests. Unfortunately, some template forward declarations still cause compiler crashes for the most recent Visual Studio 2019 compilation process, but I think this will be fixed soon. MSVC is (rightfully) allergic to the implicit conversion size_t to smaller datatypes, so there is a ton of warnings. This is a good opportunity to add casts where needed.
@ -10,3 +10,3 @@
class PowerComponent: public PowerComponentIF {
public:
PowerComponent(object_id_t setId, uint8_t moduleId, float min, float max,
PowerComponent(object_id_t setId, uint8_t moduleId, float minVoltage, float maxVoltage,
Parameter naming is now wrong here
fixed
@ -100,0 +98,4 @@
const uint8_t validityMaskSize = std::ceil(static_cast<float>(fillCount)/8.0);
/* Use a std::vector here because MSVC will (rightly) not create a fixed size array
with a non constant size specifier */
std::vector<uint8_t> validityMask(validityMaskSize);
I have to think about that. I would like to check that.
separate MSVC handling now