2 Fixed compiler warnings at -Wall level
3 Began work on CTSim program to be graphical front-end of all functions
4 Moved current src/*.cpp to tools/*.cpp
5 Made CTSim graphical front-end's home to be src/
8 Added highly optimized backprojection method idiff3
9 Moved comparative stats to if-2 program from ifinfo
10 Fixed image display in if2img using G2 library
11 Added column-plot and row-plot options to if-2
12 Added autoselection of analytic/calculated spatial responses to SignalFilter
13 Added frequency-based preinterpolation to SignalFilter and idiff3
14 backprojection method. Currently, this technique is still under
15 development and debugging
16 Moved graphic file writing to ImageFile class from if2img program
19 Cleaned up SignalFilter class
20 Added zeropad option to pjrec
21 Added zeropad options to html and cgi files
22 Added fourier_table and rfttw filter methods
23 Added FFTW routines to use real/half-complex transformations
26 Updated trace level processing
27 Added trace level to SignalFilter
28 Fixed magnitude vs. real output bug in FFT/Fourier filter
31 Fixed const issue with ImageFileArray
32 Fixed Array2dFile::labelsCopy()
33 Added copy constructor and assignment for Array2dFileLabel class
34 Added Timer to if-2.cpp and ifinfo.cpp
35 Added beginning of frequency-based (DFT & FFT) filter to SignalFilter
36 Added option processing for filter-method for pjrec to choose
37 between convolution, dft, & fft filtering
38 Fixed format string for EZPlot so axis labels now print
39 Added support for FFTW library
42 Rewrote Array2dFile class to be non-templated
43 Rewrote Array2dFile class to make reads and writes atomic. No disk files are kept open.
44 Rewrote Array2dFileLabel class to make members private, added access routines
45 Removed timedate.cpp in favor of standard C library time/date functions
46 Renamed ctrec to pjrec, sample-ctrec.sh to sample-ctsim
47 Added signature tag and creation date/time to projection files
50 Standardized string option processing by classes. All classes use character strings
51 to select options rather than numeric constants. Added fail() and failMessage()
52 methods to verify that objects are created correctly by character strings.
53 Hid C++ assignment and copy constructors in classes that should not have assignment/copy
54 Rewrote ImageFile class
55 Started support for dmallocxx library, not finished
56 Added G.T. Herman image comparision statistics to ifinfo (see imagefile.cpp)
57 Updated ifinfo to show comparative statistics
58 Added printLabels() to Array2dFile class
59 Added printStatistics() to ImageFile class
62 Moved conversion filter name/id to Filter class
63 Moved conversion backprojection name/id to Backproj class
64 Added MPI broadcasting of strings
67 Merged proj_reconstr into class Projections
68 Used auto_ptr in Projections::reconstruct to make sure destructor is always called
69 Code cleanup in projections.cpp
70 Moved conversion of phantom names/id to Phantom class
73 Converted projection files to C++ library with frnetorderstream
74 Converted image files to C++ library with frnetorderstream
75 Converted filter and convolution to object-oriented code
76 Changed default image file to float from double -- Changable in imagefile.h
77 Optimized image file writing on little-endian architectures
78 Updated README and INSTALL
81 Reorganized source files
82 MPI bug fixed to phm2pj.cpp
85 Reorganized include files
86 Fixed const pointers in strfuncs
89 Renamed directories, moved source files, combined source files
90 to change from 6 libraries to 3 libraries (libctsim, libctsupport,
94 Skip versions to make version 2.0 the first fully C++ version
95 Renamed Raysums to Projections throughout files
96 Renamed Detector to Scanner
97 Converted Scanner and Projecions to full object-oriented
100 Converted Phantom and PhantomElements to Object-Oriented
101 Converted Detector to Object-Oriented
104 Improved Integer backprojection method
105 Fixed nearest neighbor to be truly nearest neighbor
106 Made linear interpolation more integer arithmetic -> speed improvement
107 Finished converting all C files to C++
108 Converted all use of malloc/free to C++ new/delete
109 Began object-oriented conversion of Phantom and Projection structures
112 Converted MPI data structures to C++ object
113 Made ImageFile directly inherit from Array2dFile
116 First C++ conversions
117 Portable IF (image file) format implemented with objects (SDF removed)
118 - Now all data files are cross-platform compatible
119 Converted from MPI to MPI++
120 Converted backprojection to object-oriented
121 Removed MTX from libkmath as no longer need -- replaced with C++ matrices
124 Simpilifed endian handling
127 Added support for 64-bit (IA64) CPU
128 Removed broken B-spline interpolation
129 Added support for cygwin platform under Windows 2000
130 Added support for 16-bit PNG graphics
133 Added compile-time configuration of endian order
136 Modified the raysum file format to be platform independent
139 Added Microsoft VC compatibility
140 Cleaned up compilation warnings in libgraph
143 Continued conversion to ANSI C
144 Removed old CRT routines
147 Renamed pictures to phantoms, objects to phantom elements
148 Continued code cleanup
151 More code cleanup with reorganizing libraries
152 Added --log and --exp to sdf-1
153 Allowed negative numbers for window levels in CGI interface
156 Continued code cleanup
160 Better documented, coded raysum in-memory on on-disk options
163 Cleaned out library that wasn't being used by CTSim
164 Modified ctsim.cgi to read in configuration file ctsim.conf
167 First open source distribution for GNU/Linux
170 Converted to GNU/Linux
171 added MPI support via LAM library
174 Developed under MS-DOS and IBM EGA graphics