1
0
Fork 0
mirror of https://github.com/betaflight/betaflight.git synced 2025-07-24 16:55:36 +03:00

Cleaned up feature handling functions.

This commit is contained in:
mikeller 2018-07-04 23:33:58 +12:00
parent 8abf138e2a
commit 985a9208d5
2 changed files with 13 additions and 19 deletions

View file

@ -35,39 +35,34 @@ PG_RESET_TEMPLATE(featureConfig_t, featureConfig,
.enabledFeatures = DEFAULT_FEATURES | DEFAULT_RX_FEATURE | FEATURE_DYNAMIC_FILTER | FEATURE_ANTI_GRAVITY,
);
void intFeatureSet(uint32_t mask, uint32_t *features)
void featureSetLocal(const uint32_t mask, uint32_t *features)
{
*features |= mask;
}
void intFeatureClear(uint32_t mask, uint32_t *features)
void featureClearLocal(const uint32_t mask, uint32_t *features)
{
*features &= ~(mask);
}
void intFeatureClearAll(uint32_t *features)
{
*features = 0;
}
bool featureConfigured(uint32_t mask)
bool featureConfigured(const uint32_t mask)
{
return featureConfig()->enabledFeatures & mask;
}
void featureSet(uint32_t mask)
void featureSet(const uint32_t mask)
{
intFeatureSet(mask, &featureConfigMutable()->enabledFeatures);
featureSetLocal(mask, &featureConfigMutable()->enabledFeatures);
}
void featureClear(uint32_t mask)
void featureClear(const uint32_t mask)
{
intFeatureClear(mask, &featureConfigMutable()->enabledFeatures);
featureClearLocal(mask, &featureConfigMutable()->enabledFeatures);
}
void featureClearAll(void)
{
intFeatureClearAll(&featureConfigMutable()->enabledFeatures);
featureConfigMutable()->enabledFeatures = 0;
}
uint32_t featureMask(void)

View file

@ -62,12 +62,11 @@ typedef struct featureConfig_s {
PG_DECLARE(featureConfig_t, featureConfig);
bool featureConfigured(uint32_t mask);
void featureSet(uint32_t mask);
void featureClear(uint32_t mask);
bool featureConfigured(const uint32_t mask);
void featureSet(const uint32_t mask);
void featureClear(const uint32_t mask);
void featureClearAll(void);
uint32_t featureMask(void);
void intFeatureClearAll(uint32_t *features);
void intFeatureSet(uint32_t mask, uint32_t *features);
void intFeatureClear(uint32_t mask, uint32_t *features);
void featureSetLocal(const uint32_t mask, uint32_t *features);
void featureClearLocal(const uint32_t mask, uint32_t *features);