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