ExtendedController Base and MSVC updates #382

Merged
gaisser merged 10 commits from mueller/fsfw-update-3 into development 2021-03-16 15:04:11 +01:00
Owner

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.

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.
muellerr added 32 commits 2021-03-08 14:23:36 +01:00
muellerr added the
feature
API Change
labels 2021-03-08 14:23:47 +01:00
gaisser added 1 commit 2021-03-09 14:19:03 +01:00
muellerr added 1 commit 2021-03-09 14:48:52 +01:00
gaisser reviewed 2021-03-09 15:39:14 +01:00
@ -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,
Owner

Parameter naming is now wrong here

Parameter naming is now wrong here
Author
Owner

fixed

fixed
muellerr marked this conversation as resolved
gaisser reviewed 2021-03-09 15:39:44 +01:00
@ -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);
Owner

I have to think about that. I would like to check that.

I have to think about that. I would like to check that.
Author
Owner

separate MSVC handling now

separate MSVC handling now
gaisser marked this conversation as resolved
muellerr added 1 commit 2021-03-09 21:07:12 +01:00
muellerr added 1 commit 2021-03-09 21:09:09 +01:00
muellerr added a new dependency 2021-03-11 13:20:34 +01:00
muellerr added 1 commit 2021-03-16 14:53:30 +01:00
gaisser added this to the ASTP 1.0.0 Local pools milestone 2021-03-16 15:03:59 +01:00
gaisser self-assigned this 2021-03-16 15:04:02 +01:00
gaisser merged commit 125dffcf28 into development 2021-03-16 15:04:11 +01:00
gaisser deleted branch mueller/fsfw-update-3 2021-03-16 15:04:22 +01:00
Sign in to join this conversation.
No description provided.