tkrebes / nisyscfg-python

NI System Configuration Python API
MIT License
4 stars 0 forks source link

Changed pxi bitmask enum base type to enum.IntFlag #51

Closed tkrebes closed 1 year ago

tkrebes commented 1 year ago

What does this Pull Request accomplish?

Why should this Pull Request be merged?

Improves the usability of bitfield enum base type with IntFlag

What testing has been done?

Checked that properties worked with a PXIe-1095 chassis

>>> import nisyscfg
>>> session = nisyscfg.Session()
>>> hw = list(session.find_hardware())
>>> hw[6]
HardwareResource(name=PXIChassis1)
>>> hw[6].pxi.fan_mode
<FanModes.AUTO: 1>
>>> hw[6].pxi.supported_fan_modes
<FanModes.HIGH|SAFE_MANUAL|AUTO: 7>
>>> hw[6].pxi.supported_cooling_profiles
<CoolingProfiles.WATTS_82|WATTS_58|WATTS_38: 7>
>>> hw[6].pxi.supported_inhibit_modes
<InhibitModes.MANUAL|DEFAULT: 3>
>>> hw[6].pxi.cooling_profile
<CoolingProfiles.WATTS_82: 4>