| ECC1C 145-944-00

Public Member Functions | Public Attributes | List of all members
SystemManager

## Public Member Functions
void | registerSystem (System *system, uint8 system_id)
void | UnregisterSystem (uint8 system_id)
System * | getSystem (const uint8 systemID)
uint32 | getSystemsCount () const
System * | getSystemIterator (size_t &i)
System * | getCurrentSystem ()
Error | getSystemRegister (uint8 systemID, uint8 regID, uint32 &value)
Error | setSystemRegister (uint8 systemID, uint8 regID, uint32 value)
Error | isValidSystemRegisterValue (uint8 systemID, uint8 regID, uint32 value)

## Public Attributes
System * | systems [KUM_NUM_OF_SYSTEMS]

## Detailed Description

Here's the main system manager (and the registry of systems)

## Member Function Documentation

## ◆ getCurrentSystem()

System * getCurrentSystem | ( |  | ) |
| inline

Get the currently selected system

## ◆ getSystem()

System * getSystem | ( | const uint8 | systemID | ) |
| inline

Get the system for the given ID

References SystemManager::systems.

Referenced by SystemManager::getSystemRegister(), SystemManager::isValidSystemRegisterValue(), and SystemManager::setSystemRegister().

## ◆ getSystemIterator()

System * getSystemIterator | ( | size_t & | i | ) |
| inline

Get the i-th valid system, each call increments i by the required amount

References SystemManager::systems.

## ◆ getSystemRegister()

Error getSystemRegister | ( | uint8 | systemID,
|  | uint8 | regID,
|  | uint32 & | value
| ) |  |

Check if system exists, and read content of register into the value variable (if it is poissible)

References SystemManager::getSystem().

## ◆ getSystemsCount()

uint32 getSystemsCount | ( |  | ) | const
| inline

Get the number of registered systems

## ◆ isValidSystemRegisterValue()

Error isValidSystemRegisterValue | ( | uint8 | systemID,
|  | uint8 | regID,
|  | uint32 | value
| ) |  |

Check if system exists, and write value to register if possible

References SystemManager::getSystem(), and System::isWritableValue().

## ◆ registerSystem()

void registerSystem | ( | System * | system,
|  | uint8 | system_id
| ) |  |
| inline

Register a system

References SystemManager::systems.

## ◆ setSystemRegister()

Error setSystemRegister | ( | uint8 | systemID,
|  | uint8 | regID,
|  | uint32 | value
| ) |  |

Check if system exists, and write value to register if possible

References SystemManager::getSystem(), and System::setRegister().

## ◆ UnregisterSystem()

void UnregisterSystem | ( | uint8 | system_id | ) |
| inline

Unregister a system

References SystemManager::systems.

## Member Data Documentation

## ◆ systems

System* systems[KUM_NUM_OF_SYSTEMS]

All the possible systems

Referenced by SystemManager::getSystem(), SystemManager::getSystemIterator(), SystemManager::registerSystem(), and SystemManager::UnregisterSystem().