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