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