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