2 Rewrote Array2dFile class to be non-templated
3 Rewrote Array2dFile class to make reads and writes atomic. No disk files are kept open.
4 Rewrote Array2dFileLabel class to make members private, added access routines
5 Removed timedate.cpp in favor of standard C library time/date functions
9 Standardized string option processing by classes. All classes use character strings
10 to select options rather than numeric constants. Added fail() and failMessage()
11 methods to verify that objects are created correctly by character strings.
12 Hid C++ assignment and copy constructors in classes that should not have assignment/copy
13 Rewrote ImageFile class
14 Started support for dmallocxx library, not finished
15 Added G.T. Herman image comparision statistics to ifinfo (see imagefile.cpp)
16 Updated ifinfo to show comparative statistics
17 Added printLabels() to Array2dFile class
18 Added printStatistics() to ImageFile class
21 Moved conversion filter name/id to Filter class
22 Moved conversion backprojection name/id to Backproj class
23 Added MPI broadcasting of strings
26 Merged proj_reconstr into class Projections
27 Used auto_ptr in Projections::reconstruct to make sure destructor is always called
28 Code cleanup in projections.cpp
29 Moved conversion of phantom names/id to Phantom class
32 Converted projection files to C++ library with frnetorderstream
33 Converted image files to C++ library with frnetorderstream
34 Converted filter and convolution to object-oriented code
35 Changed default image file to float from double -- Changable in imagefile.h
36 Optimized image file writing on little-endian architectures
37 Updated README and INSTALL
40 Reorganized source files
41 MPI bug fixed to phm2pj.cpp
44 Reorganized include files
45 Fixed const pointers in strfuncs
48 Renamed directories, moved source files, combined source files
49 to change from 6 libraries to 3 libraries (libctsim, libctsupport,
53 Skip versions to make version 2.0 the first fully C++ version
54 Renamed Raysums to Projections throughout files
55 Renamed Detector to Scanner
56 Converted Scanner and Projecions to full object-oriented
59 Converted Phantom and PhantomElements to Object-Oriented
60 Converted Detector to Object-Oriented
63 Improved Integer backprojection method
64 Fixed nearest neighbor to be truly nearest neighbor
65 Made linear interpolation more integer arithmetic -> speed improvement
66 Finished converting all C files to C++
67 Converted all use of malloc/free to C++ new/delete
68 Began object-oriented conversion of Phantom and Projection structures
71 Converted MPI data structures to C++ object
72 Made ImageFile directly inherit from Array2dFile
76 Portable IF (image file) format implemented with objects (SDF removed)
77 - Now all data files are cross-platform compatible
78 Converted from MPI to MPI++
79 Converted backprojection to object-oriented
80 Removed MTX from libkmath as no longer need -- replaced with C++ matrices
83 Simpilifed endian handling
86 Added support for 64-bit (IA64) CPU
87 Removed broken B-spline interpolation
88 Added support for cygwin platform under Windows 2000
89 Added support for 16-bit PNG graphics
92 Added compile-time configuration of endian order
95 Modified the raysum file format to be platform independent
98 Added Microsoft VC compatibility
99 Cleaned up compilation warnings in libgraph
102 Continued conversion to ANSI C
103 Removed old CRT routines
106 Renamed pictures to phantoms, objects to phantom elements
107 Continued code cleanup
110 More code cleanup with reorganizing libraries
111 Added --log and --exp to sdf-1
112 Allowed negative numbers for window levels in CGI interface
115 Continued code cleanup
119 Better documented, coded raysum in-memory on on-disk options
122 Cleaned out library that wasn't being used by CTSim
123 Modified ctsim.cgi to read in configuration file ctsim.conf
126 First open source distribution for GNU/Linux
129 Converted to GNU/Linux
130 added MPI support via LAM library
133 Developed under MS-DOS and IBM EGA graphics