2 Added highly optimized backprojection method idiff3
3 Moved comparative stats to if-2 program from ifinfo
6 Cleaned up SignalFilter class
7 Added zeropad option to pjrec
8 Added zeropad options to html and cgi files
9 Added fourier_table and rfttw filter methods
10 Added FFTW routines to use real/half-complex transformations
13 Updated trace level processing
14 Added trace level to SignalFilter
15 Fixed magnitude vs. real output bug in FFT/Fourier filter
18 Fixed const issue with ImageFileArray
19 Fixed Array2dFile::labelsCopy()
20 Added copy constructor and assignment for Array2dFileLabel class
21 Added Timer to if-2.cpp and ifinfo.cpp
22 Added beginning of frequency-based (DFT & FFT) filter to SignalFilter
23 Added option processing for filter-method for pjrec to choose
24 between convolution, dft, & fft filtering
25 Fixed format string for EZPlot so axis labels now print
26 Added support for FFTW library
29 Rewrote Array2dFile class to be non-templated
30 Rewrote Array2dFile class to make reads and writes atomic. No disk files are kept open.
31 Rewrote Array2dFileLabel class to make members private, added access routines
32 Removed timedate.cpp in favor of standard C library time/date functions
33 Renamed ctrec to pjrec, sample-ctrec.sh to sample-ctsim
34 Added signature tag and creation date/time to projection files
37 Standardized string option processing by classes. All classes use character strings
38 to select options rather than numeric constants. Added fail() and failMessage()
39 methods to verify that objects are created correctly by character strings.
40 Hid C++ assignment and copy constructors in classes that should not have assignment/copy
41 Rewrote ImageFile class
42 Started support for dmallocxx library, not finished
43 Added G.T. Herman image comparision statistics to ifinfo (see imagefile.cpp)
44 Updated ifinfo to show comparative statistics
45 Added printLabels() to Array2dFile class
46 Added printStatistics() to ImageFile class
49 Moved conversion filter name/id to Filter class
50 Moved conversion backprojection name/id to Backproj class
51 Added MPI broadcasting of strings
54 Merged proj_reconstr into class Projections
55 Used auto_ptr in Projections::reconstruct to make sure destructor is always called
56 Code cleanup in projections.cpp
57 Moved conversion of phantom names/id to Phantom class
60 Converted projection files to C++ library with frnetorderstream
61 Converted image files to C++ library with frnetorderstream
62 Converted filter and convolution to object-oriented code
63 Changed default image file to float from double -- Changable in imagefile.h
64 Optimized image file writing on little-endian architectures
65 Updated README and INSTALL
68 Reorganized source files
69 MPI bug fixed to phm2pj.cpp
72 Reorganized include files
73 Fixed const pointers in strfuncs
76 Renamed directories, moved source files, combined source files
77 to change from 6 libraries to 3 libraries (libctsim, libctsupport,
81 Skip versions to make version 2.0 the first fully C++ version
82 Renamed Raysums to Projections throughout files
83 Renamed Detector to Scanner
84 Converted Scanner and Projecions to full object-oriented
87 Converted Phantom and PhantomElements to Object-Oriented
88 Converted Detector to Object-Oriented
91 Improved Integer backprojection method
92 Fixed nearest neighbor to be truly nearest neighbor
93 Made linear interpolation more integer arithmetic -> speed improvement
94 Finished converting all C files to C++
95 Converted all use of malloc/free to C++ new/delete
96 Began object-oriented conversion of Phantom and Projection structures
99 Converted MPI data structures to C++ object
100 Made ImageFile directly inherit from Array2dFile
103 First C++ conversions
104 Portable IF (image file) format implemented with objects (SDF removed)
105 - Now all data files are cross-platform compatible
106 Converted from MPI to MPI++
107 Converted backprojection to object-oriented
108 Removed MTX from libkmath as no longer need -- replaced with C++ matrices
111 Simpilifed endian handling
114 Added support for 64-bit (IA64) CPU
115 Removed broken B-spline interpolation
116 Added support for cygwin platform under Windows 2000
117 Added support for 16-bit PNG graphics
120 Added compile-time configuration of endian order
123 Modified the raysum file format to be platform independent
126 Added Microsoft VC compatibility
127 Cleaned up compilation warnings in libgraph
130 Continued conversion to ANSI C
131 Removed old CRT routines
134 Renamed pictures to phantoms, objects to phantom elements
135 Continued code cleanup
138 More code cleanup with reorganizing libraries
139 Added --log and --exp to sdf-1
140 Allowed negative numbers for window levels in CGI interface
143 Continued code cleanup
147 Better documented, coded raysum in-memory on on-disk options
150 Cleaned out library that wasn't being used by CTSim
151 Modified ctsim.cgi to read in configuration file ctsim.conf
154 First open source distribution for GNU/Linux
157 Converted to GNU/Linux
158 added MPI support via LAM library
161 Developed under MS-DOS and IBM EGA graphics