Libraries:
Util is the non-android common utility library for all of Dairy.- Type safe units families (distances and angles).
- Vectors and Poses that use these.
- Observable shared reference containers.
- This is unlikely to be used unless you’re writing a library yourself, or looking to implement some advanced automated system.
- Useful for writing your own OpMode registering annotations like
@TeleOp
or@Autonomous
.
- Core is the base library for most other Dairy libraries.
- It enables a bunch of new patterns for writing cleaner FTC code, and establishes the way that Dairy works.
- It can be used as a good place to start improving your own team’s code, or to use as a toolkit to write a library yourself.
- Core is designed to ensure that libraries using it play nice together.
- If you’re planning on writing a library using Core, please reach out to get help, ensure that it will work with other libraries, and for advice on publication, documentation, and management. If you would like your library added to the Dairy Foundation, please reach out as well.
- Pasteurized is super simple, and provides a great deal of default tooling for gamepads in FTC.
- But at the same time, has the tools to allow for super complex systems and gamepad layouts.
- Its a good base library if you’re looking to add further gamepad logic, its used in Mercurial for example.
- Lots of teams will find Mercurial a great place to start in Dairy.
- Command Based is a paradigm (system / approach) to structuring robot code in a reusable and concurrent manner, this makes it easy to run and manage lots of tasks on the robot at the same time, and is a popular approach to writing robot code in both FTC and FRC.
- Its similar enough to FTCLib to make it easy to pick up for those familiar with command based.
- Its focused on developer ergonomics, and makes it easy to compose and work with large command structures.