r198: *** empty log message ***
[ctsim.git] / ChangeLog
1 2.0.0 - 9/7/00
2    Version 2.0.0 released!
3    ctsim: Added Window menu to Main frame
4    ctsim: Disabled not support reconstruction method
5    Fixed obscure bug in sys_error
6    Fixed compilation in mingw environment not present
7    Fixed compilation in non-graphical environments      
8         
9 2.0.0-b12 - 9/4/00
10    ctsim: Added animation of reconstruction
11    ctsim: Added saving of dialog parameters for Projection & Reconstruction
12    ctsim: Added progress dialog for rasterization of phantom
13    ctsim: used setpriority to set lower priority
14    ctsim: fixed pReconstruct not being deleted causing scaling problem
15    ctsim: fixed projection animation dialog buttons
16
17 2.0.0-b11 - 9/1/00
18    ctsim: Added projection graph to animation of projection collection  
19    ctsim: Added single stepping to projection collection animation
20    ctsim: improved File/Properties display for projection files
21    ctsim: Added progress dialog for reconstructions
22    ctsim: Added file labels for projection and reconstruction images
23    ctsim: Made File/Properties bring up modal dialogs
24    Added reconstruction for Equilinear and Equiangular geometries
25    Changed theta to be -PI/2 to make compliant with Kak-Slaney formulas
26    Separated reconstruction into Reconstructor class
27    Fixed center of detector adjustment for even number of detectors
28    Added --enable-static to generate statically linked programs
29         
30 2.0.0-b10 - 8/25/00
31    ctsim: Added animation of projection collection processs
32    ctsim: Added Auto Scaling for image windows
33    ctsim: Change menus from "windowing" to "display scaling"
34    Added FieldOfView and FocalLength ratio parameters to projection collection
35    Added FocalLength & FieldOfView fields to projection data files
36    Added Projection collection for Equilinear and Equiangular geometries
37    Changed name of Rowland Phantom to correct name of Shepp-Logan
38    Fixed bug in backprojection selection
39         
40 2.0.0-b9 - 8/22/00
41    Added RCS Id strings to executable files
42    Added RPM Spec file for RPM package creation
43    Added loading of ASCII phanthom definitions from files
44    Fixed compilation for non-SGP architectures 
45    Decomposed SignalFilter class into ProcessSignal and SignalFilter classes
46    Added Filter-Generation option to reconstruction to allow direct or 
47         inverse_fourier construction of filters
48    Added median to statistics and to auto-windowing
49         
50 2.0.0-b8 - 8/1/00
51    Added line color support to SGP
52    Fixed lineAbs bug
53         
54 2.0.0-b7 - 7/25/00
55    Finished support for dmallocxx library
56    Fixed bug in SignalFilter::convertFilterMethodNameToID()
57    Rewrote SGP & EZPlot to use C++ object-oriented. SGP can now write to 
58         G2 windows and well as WXWindows.
59    ctsim program: "Create Phantom" now shows phantom object
60    Fixed row-plot bug in if-2
61    Reworked EZPlot's multiple plot operation
62         
63 2.0.0-b6 - 7/22/00
64    ctsim program: improved initial size and scroll area for image 
65         and projection files
66    ctsim program: added rasterization parameters, projections parameters,
67         and reconstruction parameters dialogs
68    Moved char[] static definition from header files to c++ files
69    Completely reorganized option processing in classes to improve
70         expandability and to assist ctsim graphical user interface.
71         
72 2.0.0-b5 - 7/17/00
73    ctsim program: Added dialog to set minimum/maximum display levels 
74    Started ctsim.tex document file
75         
76 2.0.0-b4 - 7/13/00
77    Fixed compiler warnings at -Wall level
78    Began work on CTSim program to be graphical front-end of all functions
79    Moved current src/*.cpp to tools/*.cpp
80    Made CTSim graphical front-end's home to be src/
81         
82 2.0.0-b3 - 7/10/00
83    Added highly optimized backprojection method idiff3
84    Moved comparative stats to if-2 program from ifinfo
85    Fixed image display in if2img using G2 library
86    Added column-plot and row-plot options to if-2
87    Added autoselection of analytic/calculated spatial responses to SignalFilter
88    Added frequency-based preinterpolation to SignalFilter and idiff3
89         backprojection method. Currently, this technique is still under
90         development and debugging
91    Moved graphic file writing to ImageFile class from if2img program
92
93 2.0.0-b2 - 7/07/00  
94    Cleaned up SignalFilter class
95    Added zeropad option to pjrec
96    Added zeropad options to html and cgi files
97    Added fourier_table and rfttw filter methods
98    Added FFTW routines to use real/half-complex transformations
99         
100 2.0.0-b1 - 7/05/00
101    Updated trace level processing
102    Added trace level to SignalFilter
103    Fixed magnitude vs. real output bug in FFT/Fourier filter
104         
105 1.9.9 - 7/04/00
106    Fixed const issue with ImageFileArray
107    Fixed Array2dFile::labelsCopy()
108    Added copy constructor and assignment for Array2dFileLabel class
109    Added Timer to if-2.cpp and ifinfo.cpp
110    Added beginning of frequency-based (DFT & FFT) filter to SignalFilter
111    Added option processing for filter-method for pjrec to choose
112         between convolution, dft, & fft filtering
113    Fixed format string for EZPlot so axis labels now print
114    Added support for FFTW library
115         
116 1.9.8 - 6/27/2000
117    Rewrote Array2dFile class to be non-templated
118    Rewrote Array2dFile class to make reads and writes atomic. No disk files are kept open.
119    Rewrote Array2dFileLabel class to make members private, added access routines
120    Removed timedate.cpp in favor of standard C library time/date functions
121    Renamed ctrec to pjrec, sample-ctrec.sh to sample-ctsim
122    Added signature tag and creation date/time to projection files
123         
124 1.9.7 - 6/25/2000
125    Standardized string option processing by classes. All classes use character strings
126         to select options rather than numeric constants. Added fail() and failMessage()
127         methods to verify that objects are created correctly by character strings.
128    Hid C++ assignment and copy constructors in classes that should not have assignment/copy
129    Rewrote ImageFile class
130    Started support for dmallocxx library, not finished
131    Added G.T. Herman image comparision statistics to ifinfo (see imagefile.cpp)
132    Updated ifinfo to show comparative statistics
133    Added printLabels() to Array2dFile class
134    Added printStatistics() to ImageFile class
135         
136 1.9.6 - 6/22/2000
137    Moved conversion filter name/id to Filter class
138    Moved conversion backprojection name/id to Backproj class
139    Added MPI broadcasting of strings
140         
141 1.9.5 - 6/21/2000
142    Merged proj_reconstr into class Projections
143    Used auto_ptr in Projections::reconstruct to make sure destructor is always called
144    Code cleanup in projections.cpp
145    Moved conversion of phantom names/id to Phantom class
146         
147 1.9.4 - 6/20/2000
148    Converted projection files to C++ library with frnetorderstream
149    Converted image files to C++ library with frnetorderstream
150    Converted filter and convolution to object-oriented code
151    Changed default image file to float from double -- Changable in imagefile.h
152    Optimized image file writing on little-endian architectures
153    Updated README and INSTALL
154         
155 1.9.3 - 6/19/2000
156    Reorganized source files
157    MPI bug fixed to phm2pj.cpp
158         
159 1.9.2 - 6/18/2000
160    Reorganized include files
161    Fixed const pointers in strfuncs
162         
163 1.9.1 - 6/16/2000
164    Renamed directories, moved source files, combined source files
165    to change from 6 libraries to 3 libraries (libctsim, libctsupport,
166    and libctgraphics)
167         
168 1.9.0 - 6/15/2000
169    Skip versions to make version 2.0 the first fully C++ version
170    Renamed Raysums to Projections throughout files
171    Renamed Detector to Scanner
172    Converted Scanner and Projecions to full object-oriented
173         
174 0.6.1 - 6/12/2000
175    Converted Phantom and PhantomElements to Object-Oriented
176    Converted Detector to Object-Oriented
177         
178 0.6.0-b3 - 6/10/2000
179    Improved Integer backprojection method
180         Fixed nearest neighbor to be truly nearest neighbor
181         Made linear interpolation more integer arithmetic -> speed improvement
182    Finished converting all C files to C++
183    Converted all use of malloc/free to C++ new/delete
184    Began object-oriented conversion of Phantom and Projection structures
185         
186 0.6.0-b2 - 6/8/2000
187    Converted MPI data structures to C++ object
188    Made ImageFile directly inherit from Array2dFile
189         
190 0.6.0-b1 - 6/6/2000
191    First C++ conversions
192    Portable IF (image file) format implemented with objects (SDF removed)
193         - Now all data files are cross-platform compatible
194    Converted from MPI to MPI++
195    Converted backprojection to object-oriented
196    Removed MTX from libkmath as no longer need -- replaced with C++ matrices             
197         
198 0.5.4 - 6/4/2000
199    Simpilifed endian handling
200         
201 0.5.4-b3 - 6/1/2000
202    Added support for 64-bit (IA64) CPU
203    Removed broken B-spline interpolation
204    Added support for cygwin platform under Windows 2000
205    Added support for 16-bit PNG graphics
206         
207 0.5.4-b2 - 5/16/2000
208    Added compile-time configuration of endian order
209
210 0.5.4-b1 - 5/14/2000
211    Modified the raysum file format to be platform independent
212         
213 0.5.3 - 5/11/2000
214    Added Microsoft VC compatibility
215    Cleaned up compilation warnings in libgraph
216         
217 0.5.2-b5 - 5/7/2000
218    Continued conversion to ANSI C       
219    Removed old CRT routines
220         
221 0.5.2-b4 - 5/4/2000
222    Renamed pictures to phantoms, objects to phantom elements
223    Continued code cleanup
224         
225 0.5.2-b3 - 4/30/200
226     More code cleanup with reorganizing libraries
227     Added --log and --exp to sdf-1
228     Allowed negative numbers for window levels in CGI interface
229
230 0.5.2-b2 - 4/30/200
231     Continued code cleanup
232         
233 0.5.2-b1 - 4/29/2000
234     Fixed a few MPI bugs
235     Better documented, coded raysum in-memory on on-disk options
236         
237 0.5.1 - 4/28/2000
238     Cleaned out library that wasn't being used by CTSim  
239     Modified ctsim.cgi to read in configuration file ctsim.conf
240
241 0.5.0 - 4/27/2000 
242     First open source distribution for GNU/Linux
243         
244 6/1999 
245   Converted to GNU/Linux
246   added MPI support via LAM library
247         
248 1983-84 
249   Developed under MS-DOS and IBM EGA graphics
250