2 Fixed const issue with ImageFileArray
3 Fixed Array2dFile::labelsCopy()
4 Added copy constructor and assignment for Array2dFileLabel class
5 Added Timer to if-2.cpp and ifinfo.cpp
6 Added beginning of frequency-based (DFT & FFT) filter to SignalFilter
7 Fixed format string for EZPlot
10 Rewrote Array2dFile class to be non-templated
11 Rewrote Array2dFile class to make reads and writes atomic. No disk files are kept open.
12 Rewrote Array2dFileLabel class to make members private, added access routines
13 Removed timedate.cpp in favor of standard C library time/date functions
14 Renamed ctrec to pjrec, sample-ctrec.sh to sample-ctsim
15 Added signature tag and creation date/time to projection files
18 Standardized string option processing by classes. All classes use character strings
19 to select options rather than numeric constants. Added fail() and failMessage()
20 methods to verify that objects are created correctly by character strings.
21 Hid C++ assignment and copy constructors in classes that should not have assignment/copy
22 Rewrote ImageFile class
23 Started support for dmallocxx library, not finished
24 Added G.T. Herman image comparision statistics to ifinfo (see imagefile.cpp)
25 Updated ifinfo to show comparative statistics
26 Added printLabels() to Array2dFile class
27 Added printStatistics() to ImageFile class
30 Moved conversion filter name/id to Filter class
31 Moved conversion backprojection name/id to Backproj class
32 Added MPI broadcasting of strings
35 Merged proj_reconstr into class Projections
36 Used auto_ptr in Projections::reconstruct to make sure destructor is always called
37 Code cleanup in projections.cpp
38 Moved conversion of phantom names/id to Phantom class
41 Converted projection files to C++ library with frnetorderstream
42 Converted image files to C++ library with frnetorderstream
43 Converted filter and convolution to object-oriented code
44 Changed default image file to float from double -- Changable in imagefile.h
45 Optimized image file writing on little-endian architectures
46 Updated README and INSTALL
49 Reorganized source files
50 MPI bug fixed to phm2pj.cpp
53 Reorganized include files
54 Fixed const pointers in strfuncs
57 Renamed directories, moved source files, combined source files
58 to change from 6 libraries to 3 libraries (libctsim, libctsupport,
62 Skip versions to make version 2.0 the first fully C++ version
63 Renamed Raysums to Projections throughout files
64 Renamed Detector to Scanner
65 Converted Scanner and Projecions to full object-oriented
68 Converted Phantom and PhantomElements to Object-Oriented
69 Converted Detector to Object-Oriented
72 Improved Integer backprojection method
73 Fixed nearest neighbor to be truly nearest neighbor
74 Made linear interpolation more integer arithmetic -> speed improvement
75 Finished converting all C files to C++
76 Converted all use of malloc/free to C++ new/delete
77 Began object-oriented conversion of Phantom and Projection structures
80 Converted MPI data structures to C++ object
81 Made ImageFile directly inherit from Array2dFile
85 Portable IF (image file) format implemented with objects (SDF removed)
86 - Now all data files are cross-platform compatible
87 Converted from MPI to MPI++
88 Converted backprojection to object-oriented
89 Removed MTX from libkmath as no longer need -- replaced with C++ matrices
92 Simpilifed endian handling
95 Added support for 64-bit (IA64) CPU
96 Removed broken B-spline interpolation
97 Added support for cygwin platform under Windows 2000
98 Added support for 16-bit PNG graphics
101 Added compile-time configuration of endian order
104 Modified the raysum file format to be platform independent
107 Added Microsoft VC compatibility
108 Cleaned up compilation warnings in libgraph
111 Continued conversion to ANSI C
112 Removed old CRT routines
115 Renamed pictures to phantoms, objects to phantom elements
116 Continued code cleanup
119 More code cleanup with reorganizing libraries
120 Added --log and --exp to sdf-1
121 Allowed negative numbers for window levels in CGI interface
124 Continued code cleanup
128 Better documented, coded raysum in-memory on on-disk options
131 Cleaned out library that wasn't being used by CTSim
132 Modified ctsim.cgi to read in configuration file ctsim.conf
135 First open source distribution for GNU/Linux
138 Converted to GNU/Linux
139 added MPI support via LAM library
142 Developed under MS-DOS and IBM EGA graphics