Welcome to cedar!
In these pages you can learn more about the structure and organization of cedar.
In the following pages you can find out about general programming concepts we used throughout cedar.
- Storing and loading parameters
- Processing framework
- Threads and dynamics
- Experiment framework
- Inter-process communication using YARP
- Physical units
- cedar's helper functions for boost signals
- Introduction to enum classes
- cedar's Plugin Framework
Much of cedar's power comes from its ability to allocate object at run-time, based on user-defined type strings. A description of the involved concepts can be found here.
If you want to fix a bug in cedar, please stick to the following process.
- report the bug in the issue tracker
- ask a member of the cedar development team to assign this bug to you
- clone the current cedar tip of the release repository if the bug appears in release, otherwise clone development (e.g., if release and development are affected, clone release)
- write or modify a unit test that fails due to this bug
- fix the bug
- check if the unit test now passes
- push the bug fix (and, of course, the unit test)
- resolve the bug in the issue tracker or ask a member of the cedar development team to resolve the issue for you
cedar sticks to a strict coding style.