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