2 Added RPM Spec file for RPM package creation
3 Added loading of ASCII phanthom definitions from files
6 Added line color support to SGP
10 Finished support for dmallocxx library
11 Fixed bug in SignalFilter::convertFilterMethodNameToID()
12 Rewrote SGP & EZPlot to use C++ object-oriented. SGP can now write to
13 G2 windows and well as WXWindows.
14 ctsim program: "Create Phantom" now shows phantom object
15 Fixed row-plot bug in if-2
16 Reworked EZPlot's multiple plot operation
19 ctsim program: improved initial size and scroll area for image
21 ctsim program: added rasterization parameters, projections parameters,
22 and reconstruction parameters dialogs
23 Moved char[] static definition from header files to c++ files
24 Completely reorganized option processing in classes to improve
25 expandability and to assist ctsim graphical user interface.
28 ctsim program: Added dialog to set minimum/maximum display levels
29 Started ctsim.tex document file
32 Fixed compiler warnings at -Wall level
33 Began work on CTSim program to be graphical front-end of all functions
34 Moved current src/*.cpp to tools/*.cpp
35 Made CTSim graphical front-end's home to be src/
38 Added highly optimized backprojection method idiff3
39 Moved comparative stats to if-2 program from ifinfo
40 Fixed image display in if2img using G2 library
41 Added column-plot and row-plot options to if-2
42 Added autoselection of analytic/calculated spatial responses to SignalFilter
43 Added frequency-based preinterpolation to SignalFilter and idiff3
44 backprojection method. Currently, this technique is still under
45 development and debugging
46 Moved graphic file writing to ImageFile class from if2img program
49 Cleaned up SignalFilter class
50 Added zeropad option to pjrec
51 Added zeropad options to html and cgi files
52 Added fourier_table and rfttw filter methods
53 Added FFTW routines to use real/half-complex transformations
56 Updated trace level processing
57 Added trace level to SignalFilter
58 Fixed magnitude vs. real output bug in FFT/Fourier filter
61 Fixed const issue with ImageFileArray
62 Fixed Array2dFile::labelsCopy()
63 Added copy constructor and assignment for Array2dFileLabel class
64 Added Timer to if-2.cpp and ifinfo.cpp
65 Added beginning of frequency-based (DFT & FFT) filter to SignalFilter
66 Added option processing for filter-method for pjrec to choose
67 between convolution, dft, & fft filtering
68 Fixed format string for EZPlot so axis labels now print
69 Added support for FFTW library
72 Rewrote Array2dFile class to be non-templated
73 Rewrote Array2dFile class to make reads and writes atomic. No disk files are kept open.
74 Rewrote Array2dFileLabel class to make members private, added access routines
75 Removed timedate.cpp in favor of standard C library time/date functions
76 Renamed ctrec to pjrec, sample-ctrec.sh to sample-ctsim
77 Added signature tag and creation date/time to projection files
80 Standardized string option processing by classes. All classes use character strings
81 to select options rather than numeric constants. Added fail() and failMessage()
82 methods to verify that objects are created correctly by character strings.
83 Hid C++ assignment and copy constructors in classes that should not have assignment/copy
84 Rewrote ImageFile class
85 Started support for dmallocxx library, not finished
86 Added G.T. Herman image comparision statistics to ifinfo (see imagefile.cpp)
87 Updated ifinfo to show comparative statistics
88 Added printLabels() to Array2dFile class
89 Added printStatistics() to ImageFile class
92 Moved conversion filter name/id to Filter class
93 Moved conversion backprojection name/id to Backproj class
94 Added MPI broadcasting of strings
97 Merged proj_reconstr into class Projections
98 Used auto_ptr in Projections::reconstruct to make sure destructor is always called
99 Code cleanup in projections.cpp
100 Moved conversion of phantom names/id to Phantom class
103 Converted projection files to C++ library with frnetorderstream
104 Converted image files to C++ library with frnetorderstream
105 Converted filter and convolution to object-oriented code
106 Changed default image file to float from double -- Changable in imagefile.h
107 Optimized image file writing on little-endian architectures
108 Updated README and INSTALL
111 Reorganized source files
112 MPI bug fixed to phm2pj.cpp
115 Reorganized include files
116 Fixed const pointers in strfuncs
119 Renamed directories, moved source files, combined source files
120 to change from 6 libraries to 3 libraries (libctsim, libctsupport,
124 Skip versions to make version 2.0 the first fully C++ version
125 Renamed Raysums to Projections throughout files
126 Renamed Detector to Scanner
127 Converted Scanner and Projecions to full object-oriented
130 Converted Phantom and PhantomElements to Object-Oriented
131 Converted Detector to Object-Oriented
134 Improved Integer backprojection method
135 Fixed nearest neighbor to be truly nearest neighbor
136 Made linear interpolation more integer arithmetic -> speed improvement
137 Finished converting all C files to C++
138 Converted all use of malloc/free to C++ new/delete
139 Began object-oriented conversion of Phantom and Projection structures
142 Converted MPI data structures to C++ object
143 Made ImageFile directly inherit from Array2dFile
146 First C++ conversions
147 Portable IF (image file) format implemented with objects (SDF removed)
148 - Now all data files are cross-platform compatible
149 Converted from MPI to MPI++
150 Converted backprojection to object-oriented
151 Removed MTX from libkmath as no longer need -- replaced with C++ matrices
154 Simpilifed endian handling
157 Added support for 64-bit (IA64) CPU
158 Removed broken B-spline interpolation
159 Added support for cygwin platform under Windows 2000
160 Added support for 16-bit PNG graphics
163 Added compile-time configuration of endian order
166 Modified the raysum file format to be platform independent
169 Added Microsoft VC compatibility
170 Cleaned up compilation warnings in libgraph
173 Continued conversion to ANSI C
174 Removed old CRT routines
177 Renamed pictures to phantoms, objects to phantom elements
178 Continued code cleanup
181 More code cleanup with reorganizing libraries
182 Added --log and --exp to sdf-1
183 Allowed negative numbers for window levels in CGI interface
186 Continued code cleanup
190 Better documented, coded raysum in-memory on on-disk options
193 Cleaned out library that wasn't being used by CTSim
194 Modified ctsim.cgi to read in configuration file ctsim.conf
197 First open source distribution for GNU/Linux
200 Converted to GNU/Linux
201 added MPI support via LAM library
204 Developed under MS-DOS and IBM EGA graphics