RELEASE_NOTES.TXT File Reference
This file gives a high level overview of recent changes. More...
Go to the source code of this file.
Detailed Description
This file gives a high level overview of recent changes.
Revision 1.28
- This is likely to be the last release of the monolithic dlr_libs package. Subsequent releases are planned to package each library separately, making it easier for users to pick and choose what they want.
- This release fixes a bug in dlr::linearAlgebra::linearSolveInPlace(). If you use this function for non-symmetric problems, then your code will be affected. Also, linearSolveInPlace() no longer returns by reference the LU decomposition of its matrix argument. Please note that the documentation has always warned that this feature may change.
- Several updates to (unstable) dlrComputerVision.
- Cleaned up code in dlrUtilities/imageIO.h, and Added code to check and adjust byte order when writing 16 bit PPMs.
- Significant updates to dlr::utilities::lockFile.
- Added a fledgling dlrGeometry library.
- Other documentation changes, bugfixes, and minor updates.
Revision 1.27
- Cleaned up Visual Studio build and added VC++ projects to build unit tests, and upgraded to VC++ 2005. Note that not all tests currently pass under VC++. We're correcting this bit by bit. Most of the failures so far appear to be related to poorly designed tests and non-standard iostreams behavior.
- Updated dlrTest to allow automatic execution of tests using a pre-written main function in libdlrTestAutoMain, and modified the unit test suite to use this feature.
- Reworked all convolution-like functions (dlr::numeric::convolve*(), dlr::computerVision::filter2D()), added another template parameter, and marked their interfaces as unstable.
- Reworked handling of conditions in dlrThread::Monitor and its friends.
- Renamed dlr::thread::DataQueue to dlr::thread::BroadcastQueue (but left a DataQueue class wrapper so as not to break existing code.
- Added new class dlrThread::DistributionQueue for times when all of the machinery of BroadcastQueue is not necessary.
- Added missing constructors in DLR_DECLARE_EXCEPTION_TYPE macro. The lack of these constructors was preventing derivation of new exception classes from subclasses of dlr::exception.
- Cleaned up namespace usage, moved each library into its own namespace, and provided "using" declarations in namespace dlr so as (hopefully) not to break existing code.
- Added getFunctor() method to Transform?D, which should ease working with STL style algorithms.
- Added empty() method to Array?D, and added row iterators to Array2D.
- Added new file, geometry2D.h, which currently only contains the function bilaterate().
- Updated documentation slightly.
- Other enhancements and bugfixes.
Revision 1.26
- Considerable rework in dlrComputerVision, including revamped pixel types which no longer require that compilers don't pad C structures, and a few new capabilities.
- Added a new class dlrUtilities/FrequencyGoverner to allow easy control of loop execution speeds.
- Updated dlrCommon/OptionParser to throw an exception when an unrecognized option value is requested by application code.
- Reworked dlrCommon/byteOrder.h to match more types.
- Other minor bugfixes, updates, and enhancements.
Revision 1.25
- Added some new operator==() implementations for Array?D in dlrNumeric.
- Added functions allTrue(), someTrue(), etc. to dlrNumeric/utilities.h for testing arrays of bools
- Added dlrNumeric/convolve.h to support 1D convolution and correlation.
- Added dlrNumeric/sampledFunctions.h to support stock functions such as Gaussians, Hamming windows, etc. Currently only 1D Gaussians are implemented.
- Added an implementation of Horn's method for registering 3D ponits to dlrNumeric.
- Added solveQuadratic() function to dlrNumeric/utilities.h.
- Added new (still unstable) Stencil2D class to dlrNumeric.
- Added Levenberg-Marquardt nonlinear least-squares optimization to dlrOptimization.
- Added DLR_DECLARE_EXCEPTION_TYPE macro to make it easier to declare dlr::Exception subclasses in user code.
- Added CompileTimestamp class to dlrCommon. This makes it easy to figure out when your code was compiled.
- Added subsample() function to dlrComputerVision/utilities.h.
Revision 1.24
- Added RGBA and BGRA pixel formats to dlrComputerVision.
- Added OptionParser class in dlrUtilities for handling command line arguments.
- Added LockFile class in dlrUtilities for creating and deleting lockfiles. This class is currently only available in the Linux build.
- Added isExistingPath() and isRegularFile() functions to dlrUtilities/path.h.
- Added more flexibility to wrapString() in dlrUtilities/stringManipulation.h.
- Added maxSplit parameter to splitString() in dlrUtilities/stringManipulation.h.
- Added StaticArray1D class in dlrNumeric. Please note that this class is a work in progress, and will change significantly in the future.
- Added argsort() function to dlrNumeric/utilities.h.
- Corrected omissions which may have made OptimizerNelderMead uncompilable under some circumstances.
- Minor updates to improve usefulness of dlrTest output.
- Updated VC++ build files.
- Other minor code cleanup.
Revision 1.23
- Updated VC++ project and solution files to eliminate warnings during compilation. Also added missing files to dlrUtilities.vcproj.
- Continued updates to dlrComputerVision library, including more pixel types, basic morphological operations, edge detection, a naive snake implementation, and more. This library is still pretty cumbersome, and is likely to change significantly. Use this code at your own risk.
- Added Index2D, Polynomial and BSpline classes to dlrNumeric.
- Minor updates to dlrCommon to avoid getting stomped on by macros defined in other libraries.
- Other minor updates and bugfixes, including correcting an indexing bug in dlrNumeric/bilinearInterpolator (!).
Revision 1.22
WARNING: In this release, I updated the VC++ project and solution files. This involved upgrading to Visual Studio .NET 2003, which is the only version I had available. If you've been building using an older version of Visual Studio, this probably breaks your build, since older versions are unlikely to open the more recent Visual Studio .sln and .proj files.
- Updated README.TXT file. Now it's harder to read, but it has a lot more information, and formats nicely in Doxygen output.
- Updated .vcproj and .sln files for building under Visual Studio.
- Added new library dlrThread. This library is still unstable, but it may be useful in its current state. The DataQueue and Monitor classes are unlikely to change their interfaces very much.
- Changed the name of library dlrImageProcessing to dlrComputerVision and added a bunch of new code. This library is still pretty cumbersome, and will continue to change a lot.
- Updated documentation significantly.
- Added (nearly empty) dlrStochastics library.
- Added code to dlrCommon for handling endian-ness.
- Added joinString() and wrapString() routines to dlrUtilities/stringManipulation.h
- Minor fixes, additions, and updates.
Revision 1.21
NOTE: This release still needs testing on Windows. Please contact dlr@cs.cmu.edu if you download it and have trouble building.
- Minor continuing work on dlrImageProcessing and dlrClassification libraries. NOTE: These two libraries are not yet ready for public use!!
- Added skeleton of dlrThreads library. NOTE: This library is not yet ready for public use!!
- Added linearLeastSquares() function to dlrLinearAlgebra which solves general linear least squares problems.
- Reworked routines dlrLinearAlgebra slightly for better portability and speed.
- Added two new routines to dlrUtilities/stringManipulation.h: joinString and wrapString().
- Added some time routines (getCurrentTime(), preciseSleep()) to dlrPortability.
- Minor bugfixes and updates, including several fixes to dlrNumeric test suite.
- Updates to permit building with g++-4.0, g++-4.1.
Revision 1.20
NOTE: This release still needs testing on Windows. Please contact dlr@cs.cmu.edu if you download it and have trouble building.
- Updated handling of exception traces to be thread-safe.
- Added scripts subdirectory, and a python script to instrument source code for exception trace generation.
- Added the beginnings of a test suite in dlrCommon.
- Changed the name of the internal variable of the END_TRACEABLE macro so that it is less likely to collide with variable names in the calling context.
- Added the beginnings of a test suite for dlrImageProcessing.
- Removed unneeded convenience functions in dlrImageProcessing.
- Added code to dlrImageProcessing/imageIO.cpp to handle comments in PGM headers.
- Corrected code which reads plain PGMs so it reads the correct numerical values from the image file.
- Added dlrNumeric/bilinearInterpolator.h.
- Added stream input and output operators for Transform2D.
- Added invert() methods to Transform2D and Transform3D classes.
- Added minimal tests for Transform2D and Transform3D.
- Minor portability updates.
Revision 1.19
- Added single argument constructor to build Image instances from Array2D instances.
- Added function writePGM8() to dlrImageProcessing.
- Added splitPath() function to dlrPortability and dlrUtilities.
- Added tests for joinPath() and splitPath().
- Updated joinPath() to handle empty arguments.
- Updated code in isDirectory() to compile under windows.
Revision 1.18
Revision 1.17
- Added dlrCommon/types.h to manage integer precision, etc. on 64-bit architectures.
- Updated all calls into lapack library to use explicit precision so as to allow running on 64-bit architectures.
- Corrected parameter name in Triple copy constructor.
- Corrected typo in eigenvectorsSymmetric(): "," -> "||".
- Added pseudoinverse() function to dlrLinearAlgebra.
- Added sanity check in singularValues() to handle apparent bug in lapack.
- Minor updates and documentation changes.
Revision 1.16
- Changed eigenV*() functions to be spelled eigenv*().
- Updated documentation slightly.
Revision 1.15
- Added functions to dlrLinearAlgebra for computing eigenvalues and eigenvectors of symmetric matrices.
- Added function to dlrLinearAlgebra for computing SVD.
- Added absFunctor template specializations for float, long double, int, long int, and long long int.
- Minor optimizations in Array2D.
- Added a few tests.
- Several bug fixes & portability fixes.
Definition in file RELEASE_NOTES.TXT.
Generated on Mon Jul 9 20:34:15 2007 for dlrLibs Utility Libraries by
1.5.2