Skip to content

Releases: GabyGold67/ButtonToSwitch_AVR

v4.6.0 Function pointers to functions with void* arguments added to most classes requiring them

21 Jul 09:50
927cefd

Choose a tag to compare

  • Added attribute flags:
    • For SldrDALtchMPBttn class:
      • Added state for Current Output Value is Maximum (otptCurValIsMax)
      • Added state for Current Output Value is Minimum (otptCurValIsMin)
  • Added functions without parameters and functions with void* parameter for attribute flags value changes:
    • Current Output Value is Maximum
    • Current Output Value is Minimum
    • Output modification direction is Up (increment)
    • Output modification direction is Down (decrement)
  • Added getters and setters for the functions to execute when states changes for the new attribute flags:
    • otptCurValIsMaxOff
    • otptCurValIsMaxOn
    • otptCurValIsMinOff
    • otptCurValIsMinOn
    • curSldrDirUp

v4.5.0 Upgrade to provide similar services to current ESP32 version

16 Jul 13:53
78bc7d5

Choose a tag to compare

v4.5.0 Output changed notification mechanism added

  • Each mechanism that executes methods when changing states happens added the call to a function with the signature: void (function*) (void*). This simple addition opens the possibility to set a pointer to ANY type of argument, including other objects, to be a parameter of the execution of the function, allowing the execution of other objects' public methods.
    The addition is available for the change of the following states:
    • isOn
    • isOff
    • isPilotOn
    • isPilotOff
    • isWarningOn
    • isWarningOff
    • isOnScndry
    • isOffScndry
    • isOnVoided
    • isOfVoided

v4.4.1 Modifications for best practices compliance

  • Class constructors and begin() methods updated according to Arduino best practices recomendations.

v4.0.0 Backwards compatible method addition

  • Added the possibility to start the MPBttn disabled. Implemented for all DbncdMPBttn subclasses objects
  • Added the setBeginDisabled() method to control the option of starting the MPB update in isDisabled = true state

v4.3.1 Improvements and additions

  • _otptsSttsPkg() virtual property confirmation for all subclasses.
  • Unneeded redundant code cleanup.
  • Code simplification: use of fncPtrType for declarations of attributes and methods

v4.3.0 Improvements and additions

  • Added default constructors to all the classes that hadn't. Addition required for some dinamically created objects.

v4.2.0 Debugging, improvements and normalization release

Debugging:

  • HntdTmLtchMPBttn objects had wrong logic settings when entering the isDisabled state for some keepPilot and isOnDisabled combinations.

Improvements:

  • DFA unconditional state changes allowed to cascade on more classes' state machines.

Normalization:

  • The DblActnLtchMPBttn subclasses objects exited the isDisabled state in a sequence not consistent with other classes' objects.
  • isOnScndry attribute flag moved upwards the classes hierachy. Now all DblActnLtchMPBttn subclasses include the attribute flag and have access to it's value through its getters, task and functions execution when turning On & Off.

v4.1.0 Debugging and improvements release
Refactoring:

  • The setOutputsChange() and getOutputsChange() transparently changed. The API was not changed -it still sets and returns a boolean value- but internally now keeps a counter to avoid multithread developments generated race conditions.
    Debugging:
  • The use of getters and taskNotify mechanisms for the same attribute flags at the same time generated unexpected results due to race conditions: SOLVED.
  • Code overall simplification and cleanup.
  • DFA unconditional state changes allowed to cascade on more classes' state machines.
    Example files:
  • Several example files added.
  • Some example files modified to show different solutions approaches for the same results.

v4.0.4 Maintenance release

  • Code cleanup.
  • Auto documentation generation problems solved, documentation regenerated.
  • Several examples added for most of the classes.

v4.0.3 Minor debugging

  • The clearStatus() method for the HntdTmLtchMPBttn class ignored the resetting of some flags that left open the possibility of uncomplete state clearing. Corrected.
  • Several examples added for most of the classes.

v4.0.2 Refactoring update

All changes are transparent to the user.

  • outputschange attribute flag setting added, as the isOn, isEnabled, pilotOn, wrnngOn, isVoided, isOnScndry simple value assignement are refactored into full methods.
  • outputschange attribute flag setting by simple assignement after above mentioned methods execution removed (as it now is uneeded code duplication).
  • Examples added for several classes.

v4.0.1 Examples addition and simulation links

v4.0.0 First Public Release

15 Oct 13:01

Choose a tag to compare

This first public release is SemVersion numberded, previous releases remain in private domain.