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