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