|
orca-robotics
INTRODUCTION
Overview
Download and Install
Documentation
REPOSITORY
Interfaces
Drivers
Libraries
Utilities
Software Map
DEVELOPER
Dashboard
PEOPLE
Contributors
Users
Project
Download
Mailing lists
|
|
|
Developers: as you make substantial changes in the code (add features, fix bugs, etc.), add an item in the section on changes. When the next version is released, this list will be copied into the release notes.
- Project wide
- Build system
- cmake files updated for cmake 2.6
- New interfaces
- New drivers
- GbsGarminGbx
- a thin wrapper for the actual Garmin driver which moved from Hydro to Gearbox.
- New libraries
- libHydroSim2d (alex b)
- Library for simple 2D simulations
- Updated libraries
- HydroIceUtil
- In the EventLoop class fixed a bug which caused error messages from clearing (alex m)
- EventLoop::postEvent() added an option to supply a string to the event which will help identify where the event came from in case it's not handled properly (alex m)
- In EventScheduler class fixed bug which led to mutex lockup on recursive scheduling. (alex m)
- Fixed a number of bugs in LocalStatus which prevented properly reporting changes in status. Update is published when subsystems are added and removed. (alex m)
- Project wide
- Build system
- GearBox distribution is now required to build Hydro. Hydro uses Gearbox cmake scripts.
- Default installation directories follow GearBox standard (/usr/local).
- Renamed all local cmake variables to low case. (alex m)
- Added autogenerated linking tests to all dynamically loadable drivers. (alex m)
- New interfaces
- Gps
- LaserFeatureExtractor
- Extracts features from scans
- New drivers
- GpsFake, GpsGarmin
- LaserFeatureExtractorCombined
- New libraries
- libHydroFeatureObs (alex b)
- Library for representing features (eg features extracted for SLAM purposes).
- libHydroLaserFeatureExtract (alex b)
- Library for extracting features from laser scans.
- Almost-complete rewrite from Orca version.
- Updated libraries
- libHydroUtil
- Much stricter parsing of properties. Throwing exceptions whenever parsing fails (to int and double, vectors of ints and doubles). Fails when characters trail a numeric value. This applies to '.' as meaning that parsing fails when a double is given in place of an int. Comments are allowed to trail values. (alex m)
- Properties API. Added function isDefined(key). (alex m)
- libHydroIceUtil
- JobQueue reports number of active jobs. (alex m)
- New class EventLoop which is a specialization of JobQueue for dispatching events to recievers. Includes a built-in registry of reciever ID's. (alex m)
- Project wide
- Build system
- Better cmake feedback when modules cannot be built. (alex m)
- Added modular input of license information (with GLOBAL_ADD_LICENSE macro). (alex m)
- Source
- Global change to the updated API's of hydroutil::Status and hydrointerfaces::Context.
- Compiles with gcc-4.3
- New libraries
- HydroSerialDriver (alex b)
- Utility classes for writing serial drivers.
- HydroIceUtil (alex m)
- Split off all IceUtil-dependent code from HydroUtil. This allows IceUtil-independent drivers.
- Added EventScheduler class -- a simple inaccurate delayed dispatcher of events. (alex m)
- Added checkedSleep(ThreadPtr) function to sleep for some time but check for stopping every once in a while. (alex m)
- Updated interfaces
- LaserScanner2d (alex b)
- Allowed reporting of warnings.
- Updated drivers
- SegwayRmpAcfr
- Fixed a couple of bugs which resulted in incorrect speeds. (alex b)
- CAN version: tested with libpcan v. 6.5 and updated documentation. (alex m)
- HydroPathPlan (alex b)
- Bugfix in extra nodes for sparse skel
- Updated libraries
- libHydroUtil
- Fixed thread-unsafe bug in LocalTracer (alex m)
- Significant changes to JobQueue API. Results are no longer returned. Any results should be sent back to job owners through events. Polling for jobs is replaced with much more efficient blocking. (alex m)
- Important changes to Status API. addSubsystem() must be called first. (alex m)
- Added convinience class SubStatus integrated by SafeThread. (alex m)
- Moved Context from libHydroInterfaces
- Context now returns references to Tracer and Status instead of pointers (alex m)
- Removed deprecated hydroutil::Proxy (replaced with Store) (alex b)
- Split off all IceUtil-dependent code into libHydroIceUtil (alex m)
- libHydroInterfaces
- Moved Context to libHydroUtil
- Project wide
- build system
- fixed bugs in checking dependencies (alex m, alex b)
- fixed compilation in Windows (tom b.)
- New interfaces
- HumanInput2d
- Abstraction of 2D input for position or velocity control.
- Robot2d
- Access to a generic 2D robotic platform.
- SegwayRmp
- Access to Segway's RMP robotic platform.
- New drivers
- HumanInput2dJoystick
- HumanInput2dKbdIostream
- HumanInput2dKbdTermio
- Implementations of HumanInput2d interface. Refactored from Orca's Teleop component. (alexm)
- Robot2dFake
- Robot2dPlayerClient
- Implementations of Robot2d interface. Refactored from Orca's Robot2d component. (alexm)
- SegwayRmpAcfr
- SegwayRmpFake
- SegwayRmpPlayerClient
- Implementations of SegwayRmp interface. Refactored from Orca's SegwayRmp component. (alexm)
- New utilities
- New libraries
- libHydroGeom2d
- libHydroGpsUtil
- libHydroNovatelUtil
- libHydroOgMap
- libHydroPathPlan
- libHydroMapLoad
- Moved in from Orca (alexb, alexm)
- Updated libraries
- libHydroUtil
- The constructor of Properties can now take an optional string specifying the common key prefix which will be removed from all keys before insertion. (alex m)
- bug fix: LocalTracer inits itself properly. (alex m)
- Calls to LocalStatus are now automatically traced when status or message change (alex m)
- SafeThread uses Tracer if one is provided. (alex m)
- added simple time utility functions. (alex m)
- libHydroNavUtil
- Created Gmm: a class for representing Gaussian Mixture Models (for pose distributions) (alex b)
- Moved Velocity in (from orcalocalnav) (alex b)
- Removed Offset. Use Pose everywhere instead (alex b)
- libHydroPathPlan
- Cleaned up structure (alex b)
- Added code to add extra nodes in SparseSkel to avoid problems when the skel is super-sparse in some areas (alex b)
- Project wide
- First commit. Code refactored from Orca.
- Additions to refactored code
- libHydroUtil was refactored from libOrcaIce
- a set of tools which depends only on libIceUtil (and general c++). Specifically, contains nothing related to communications. See notes on libOrcaIce. (alex m)
- added new utility class JobQueue for spinning off long-term tasks into a different thread. (alex b)
- added new function substitute() to string utilities. It substitutes parameters in the form ${parameter}. (alex m)
- added new function executeSystemCommand() a wrapper for Linux popen(). (alex b)
|
|