brandonbraun653 / Chimera

A generalized high level interface to commonly used embedded systems resources
MIT License
4 stars 0 forks source link

Clean Up Interface Spec #21

Closed brandonbraun653 closed 4 years ago

brandonbraun653 commented 4 years ago

Go through the entire Chimera interface and see what either does not make sense or could be cleaned up. Focus on consistency, ease of understanding for the reader, and the KISS principle.

Eliminate Unique Pointer Access/Creation: From a conceptual perspective, having a unique pointer for shared hardware peripherals really doesn't make much sense. Strip out this aspect of the interface from the Chimera peripheral drivers. Ideally each hardware peripheral can be shared across all other systems in the network, so having that unique pointer ownership concept present in the API is pretty confusing. If exclusive access is needed, then locking the driver via the built in thread locks can be used.

Assume Drivers Always Exist Because Chimera is a hardware peripheral abstraction layer, the devices described by those layers will never disappear. This allows the drivers to get away from dynamic memory allocation and excessive object creation abuse.

brandonbraun653 commented 4 years ago

This work has been completed.