allwpilib
allwpilib copied to clipboard
[wpiutil] DataLog: Add last value and change detection
Update() checks/updates the last value and appends only if changed. GetLastValue() gets the last value.
This is only implemented at the Entry object level, not the overall DataLog, to avoid needing to add a hashtable lookup.
TODO:
- [x] Finish StructArray C++
- [ ] Add tests
- [x] Add mutexes for thread safety
- [x] Add clone()/copy() interface for Java struct and protobuf to enable immutable objects to avoid serialization