Notes: Maintenance release. New development is in SpecTcl-3.2
Changes: ] 2.1-006 - Incorporate fix 113 - low level cutoffs lead to corrupted 1-d displays. - Have build procedures clean any pre-built Gri prior to tarring up the distribution. 2.1-007 - Incorporate fix 120 - memory leak on spectrum -delete -all - Date/time/version stamp installation. 2.1-008 - Incorporate fix for issue 95: parameter -list -byid fails to parse the output list for sorting. - Incorporate fix for issue 105: sbind usage level help refers to itself as the bind command not sbind. - Incorporate fix for issue 111: swrite creates a file even if no valid spectra are included on the command line. 2.1-009 - Incorporate printing fixes for last channel of 1-d. - Incorporate printinf fix ensure that 2-d spectrum channels display all non zeroes even if they are below the threshold for the lowest color range. - Place upper limits on 1-d graphical entries at the top of the channel rather than at the bottom. This more realistically describes what's going on - Fix issue 118 Superpositions in window files are by id not name. - Fix issue 122 Speclist with a single spectrum gives blank output. - Fix issue 123 Print with superpositions crashes gri (gives it a bad command file). - Fix issue 124 FWHM not transformed to mapped coordinates. 2.1-010 - Fix Display/Makefile issues with lingering bison/flex output Add missing return value in ValidValue::operator=. 2.1-011 - Fix issue 135 swrite -format ascii does not retain the axis mapping information correctly. - Fallout from issue 133; fixed a defect in Display/axes.cc where computation of mapped channel tick mark intervals could cause DIV0 crashes in Xamine when the axis decreases from left to right. - Backport colormanager intelligent visual choices from 2.2 2.1-012 - Backport fix for defect 144 from 2.2: Memory leak when user rejects events. - Backport repair for defect 149: Some cases where spectrum deletion from Xamine can kill both Xamine and SpecTcl - Backport repair for defect 145 Names with special characters cause saveall to produce bad files. 2.1-013 - Backport filter generation fix from 2.2 Repair defect 157: Graphical object copies fail if target is spectrum slot > 999 2.1-014 - Fixed defect 151: printing 2-d's the channels have incorrect values, and log prints are just plain flat lined. 2.1-015 - Fix un-numbered defect channel command gets/sets wrong channel on Gamma 2-d's. This was broken with the introduction of arbitrary binning in 2.1. Modifications for SpecTcl 2.2 January 30,2004 - Updated gri to gri-2.12.7 March 23, 2004 - Issue 97b - Add hierarchical unpacking capability to scripted spectcl. - Also don't require begin run to pick up config. March 31, 2004 - Added -rpath to contrib/scripted Makefile so that LD_LIBRARY_PATH or ld.so.conf not needed. April 5, 2004 - Fix issue 118 - low level cutoff display bug. April 12, 2004 - Extract as many defs as possible from skeleton makefiles to centrally located include files in order to keep the user makefiles constant. - Use etc not Etc for etcetera stuff. - Add buildstamp April 13, 2004 - Fix memory leak on delete -all command: Spectrum storage itself is not getting deleted. - Fix lack of error checking on insufficient memory for binding 2d spectrum (can segfault). April 29, 2004 - Fix issue 95: parameter -list -byid fails. April 29, 2004 - Fix issue 105: sbind Usage level help calls itself the bind command which conflicts, of course, with the TCL bind command. April 29, 2004 - Fix issue 111 - swrite command creates a file even if no existing spectra have been specified. May 5, 2004 - Fix little diddly issues with printing and also Put right limit at the top of a channel rather than the left side of a channel. - Fix ISSUE 118 superpositions in window files are written as id's not as names. - Fix issue 123 superpositions don't print - Fix issue 124 FWHM is not translated to mapped coordinates when spectrum is in mapped mode. May 12, 2004 - Fix issue 49 Fetching values from ValidValues that are in the invalid state will now throw exceptions - Fix issue with Display/Makefile that clean leaves behind detritus from flex and bison. (Added MOSTLYCLEANFILES to Display/Makefile.am). June 8, 2004 - Increase spectrum size limits to 2^31. June 17, 2004 - Defect 131 - There were problems generating the print tick intervals when the axis specifications went in 'reverse' (e.g. {100 -100 200}). Fixed in modifications to griprint.cc I think. - Fix build issues in TestFiles directory so that the event test generting programs can be built again Yeah. July 1, 2004 - Defect 135 - swrite does not properly preserve the axis mapping information. Fallout from defect 133 discovered and fixed a defect that causes the axis tick computation to DIV0 when mapped axes have decreasing values going away from the origin (e.g. {100 -100 201}). July 2, 2004 - Defect 132 - Translator pointers are constrained to natural data boundaries. - Defect 137 - Fix defect introducec by fix of Defect 132: assumed getOffset was returning T offset it's now returning byte offsets. July 9, 2004 - Added DesignByContract to the Utility headers. July 27, 2004 - Added contrib/calibratedparams (TUNL) for linear calibrations for parameters first the fit functions. July 30, 2004 - Added CCAENV1x90Data.h to contrib/scriptable in order to support unpacking of this module. August 9, 2004 - Modified colormgr.cc to better deal with systems that have visuals that are not in decent order nor good: Look through all the visuals and choose the true/direct color visual with the most bits, if none exist, then Choose the Pseudo color visual with the most bits. If none of those exist drop back to bitonal. August 16, 2004 - Fix broken link to apply.htm in categories.htm documentation August 17, 2004 - Added the calbrated parameters sources to the mix (need to get them to compile!). Debugged as of August 20. August 25, 2004 - Fixed defect 144 - memory leak if user rejects events. September 2, 2004 - Made pseudo parameters pass validity flags too. September 7, 2004 - Fix error in CEventFilter::setBit... which did not count on there being 8 bits per byte. September 8, 2004 - Removed in-linedness of CGate::RecursiveReest I had thought this was triggering a compiler error but it was not in fact. Since this is a virt. there's no gain to inlining it anyway. September 23,2004 - NamedItem.h - decided to finally trust stl's string constructors.. the way I was doing named item constructors was giving Purify fits. September 24,2004 - Added CalibrationDistribution to produce evenly spaced identical peaks. - Added mechanism to fetch the applicatino's test data source so that it can be modified etc. - Fixed defect in CTclGrammerApp::SetupTestDatsSource there was a local declaration of a m_pMultiTestSource that masked the member data.: September 30,2004 - Happy Birthday Ron!! - Fixed issue 133 Centroids and FWHM not correct for mapped parameters (still). - Made test distributions produce floating point params to make the more flexible.. Gaussian is a symmetric cutoff now. October 4, 2004 - Added a bit of defensive programming in view of defect 149. October 19, 2004 - Changed default gate names in Xamine to be better in line with well behaved TCL Strings. October 18-20 2004 - Factor all coordinate transformations into common spots part of trying to fix defect 133. October 20, 2004 - Additional code reorganization of Xamine stuff that I just could not stand to look at in fixing defect 133. October 20, 2004 - Factor acceptgates.cc DrawPoints functions back into the base class where it belongs. Could not stand to look at it duplicated in 3 different places. October 20-22 2004 - Fix defect 145: Spaces and special characters in names can make saveall loadall fail miserably...and other misc. things uncovered while repairing the defect. October 25,26 2004 - Optimize 1d long histogram increments. Note that many but not all changes will help 2d word increments too, but these (less often used) histograms won't get full benefit as there are modifications to the Spectrum1DL file that are deliberately not propagated back to Spectrum1DW October 27, 2004 -Optimize2d short histogram increments November 3,2004 - Fixed position computations on expanded spectra. November 4,2004 - Fixed defect 60 in Xamine: Spectrum choosers should come out sorted by name. November 102004 - Repaired defect 147: Xamine copy object copies to wrong spectrum if slot # > 999 Edit level 2.2-001 November 30, 2004 - Forward port fix to defect 151 from 2.1: colorscales on griprint were way off for 2-d prints. - Fix unnumbered defect: channel get/set broke for 2-d gamma spectra starting with SpecTcl 2.2 spectrum if slot # > 999 SpecTcl 3.0: Port to gcc/g++ 3.x: o Lots of gruntwork with config.h etc. in all sources. o Added Tcl Channel inquiry functions to CTCLInterpreter to allow the location of Tcl_Channel given it's name. GetChannel GetChannelNames o Added CTCLChannel object that can do simple channel operations. Read Write atEof Flush Close o In {Write,Read}Command.cpp use tcl[io]streams to connect swrite/sread to Tcl channel parameters rather than decoding the filename. Propagate fix for defect 151 from 2.1 -> 2.2-> 3.0 December 28, 2004 - Switch ExprLong -> strtol in contrib/scriptable CIntConfigParam.cpp and CIntArrayParam.cpp since ExprLong, as of Tcl 8.4 does not work with large unsigned values. December 31, 2004 - D. Bazin removed the treeparam Makefiles. Adjust the contrib/Makefile.am accordingly. January 06, 2005 - Fixed up some missing quotes on makefile.skel's. January 11, 2005 - Roll in another treeparmaeter update from D. Bazin January 12, 2005 - swrite file creation needs an ios::trunc else existing files will leave postpended data if they were larger. January 13, 2005 - Xamine superposition fix for id's > 999 January 26, 2005 - Fix problem with long spectrum names: o Xamine's truncation was making CHistogrammer::UnbindFromDisplay assert fail. o Xamine was not putting up the correct spectrum list due to a buffer overflow problem in spectra.cc January 27, 2005 - Fix low level cutoff in 1-ds that had been fixed in 2.1 but not propagated to new versions. 3.0-001 February 11, 2005 - Added Analysis subdirectory to the build. This directory will have stuff that's used by buffer analysis it is NSCL specific. February 14, 2005 - Completed testing of Analysis library. February 15, 2005 - Added C interface to Analysis library and unit tests for those. - Added check for paths for the 'check' c unit test framework. February 22, 2005 - Added/debugged classes to TCL++ that make it easy to do variable tracing (TCLTracedVariable, and VariableTraceCallbac e.g.). - Added stuff to SpecTcl that allows it to pull stuff out of string list buffers that represent TCL scriptlets and execute those scripts. this is currently useful to reconstruct control system data and other stuff that may be in statevariable and runvariable buffers which look like a bunch of set varname value commands. - Fix 1/0 month counting problem with run control timestamps in Analysis library. February 25, 2005 - Documented the variable tracing support. - Documented run/state variable recovery. March 4, 2005 - Set the version string to 3.0pre1 March 8, 2005 - Move the event sink pipeline class into Events and out of the Filter directory. - Add SpecTcl API (tested) to the build and cvs. March 17, 2005 - Add documentation for the SpecTcl api as a spectcl man page. March 21, 2005 - Added -fno-elide-constructors to user's makefile to ensure that TreeParameter construction is handled correctly. - Support settable I/O poll dwell time. April 15, 2005 - Began integrating a rewritten treeparameter into the software. April 16, 2005 - In contrib/calibparam : add a random number in [-.5, .5] to the input of the calibration under the assumption that the input is integer and therefore needs to be turned into a real. April 18, 2005 - Added documentation to the treeparamter package. April 19, 2005 - Fix up a tcl 8.4 dependency in CTreeVariableProperties.cpp April 21, 2005 - Fix up coordinate transform problems in Xamine with grobj locations. Scaled wrong and offset wrong. - Make it a bit clearer that the Treeparameter GUI version is decoupled from SpecTcl's version... for now. April 22, 2005 - Remove nulls from Xamine's log files and replace them with \n's instead. April 29, 2005 - TreeParameter save function didn't always get the dependencies right causing error in loading. Changed functions in SpectrumGenerator.tcl. Fix for bugzilla bug 173 May 2, 2005 - Ensure filters get closed if active at program normal exit. - Encapsulate Xamine's gates and grobs inside a vector so that there's no longer a fixed compilation limit on the number of gates /objects that can be defined. - Support GCC-3.4 compiler May 11, 2005 - Added support for StripChart Spectra - Check the compiler type in configure to see if we can use -pedantic and do so if we can. - Debug -pedantic effects on compilation. - Fix defects nobody noticed in swrite -format binary/sread -format binary Probably introduced about SpecTcl-2.0 May 12, 2005 - Fixed attach -format .... error that probably only expresses on gcc-3.x since nobody's seen/reported it but me until now May 13, 2005 - Fixed problem in Strip chart so that the parameter list is returned in the correct order --------------------------- End of Pre3 mods ------------ May 17, 2005 - Set map to on by default in Xamine. May 18, 2005 - Add support for CTCLString::AppendElement(DFloat_t, const char* format) use it in parameter package's parameter list of mapped parameters as a test. - Add support for CTCLString::AppendElement(long, const char* format) - Add support for mask equals gates as well as define the mask gate base class. - Add Support for "not mask" and "and mask" gates May 20, 2005 - Support for compilation on gcc/g++ 4.0 May 23, 2005 - Integrate gamma gate redo======= - Add Support for "not mask" and "and mask" gates - Added support for "gate -list [pattern]" so that users can filter the results of the gate -list command - Added support for "spectrum -list [pattern]" so that users can filter the results of the spectrum -list command May 27, 2005 - Added support for a glob like pattern in the switch of the clear, pararmeter bind, apply, and pseudo commands. When a pattern is given after -list, the command returns objects whose name matches the pattern. May 31, 2005 - Remove extra copy construction in TreeParameter ThrowIf's.. as that's an enormous performance hit. June 1, 2005 - Fix documentation errors in gate command wrt mask gates. 3.1 June 7, 2005 - Incorporate defect fix in guiintegrate.cc into this version. June 20, 2005 - Fix type on Spectrum.h getAxisMapCount() had been spelled GetAxisMapCout().June 21, 2005 - Forward port some fixes for tree parameter gui: o gui writing tree variables and parameters with "" units doesn't put {} for units but leaves it empty. o Allow treevariable -set units optional. June 22, 2005 - Support for projection spectra. June 29, 2005 - Remove need for working fortran compiler. July 7, 2005 - Add ia64 adjustments from 3.0 branch July 27, 2005 - Fix up some automake incorrectnesses that old versions of AM let slide. This is part of an effort to port to Cygwin. - Fix up issues with the definition of PAGESIZE in Xamine (Display subdir) That make it not build correctly on CYGWIN. August 16, 2005 - Add support to scripted readout for caenv1785 adc (primitive). September 2, 2005 - Added support for 2d long spectra. September 22, 2005 - Fix defect in Gamma 2d increment: If no valid parameters are left, the outer loop limits are very very bad. - Forward port the inclusion of bitmask gates - Support dynamic creation of treeparameters. - Document treeparameter -create command in online user guide. September 30, 2005 - Happy Birthday Ron: 48 - Add -listnew to treeparameter command so that new gui can figure out which parameters have been created since program started ... and save them. October 5, 2005 - Retry select in pipe data source in case of EINTR. - Add attach -list to support determination of event source. October 7, 2005 - Fix defects in eventsink pipeline add/delete code. Predicates not constructed correctly. October 17, 2005 - Add the new browser based GUI to the system. October 18, 2005 - Add fix for defect 188 - grobj files need to specify spectra by name. October 21, 2005 - Fix error in old tree gui handling of old list mode save files: treeparameter -set was invoked with the wrong number of parameters. October 24, 2005 - Fix error in old tree gui: Saving list mode files treeparameterList was missing a $ when being appended to the list of lists...so no modified treeparameters were saved. October 31, 2005 - Fix buffer overflow problem in griprint.cc found by D. Caussyn. November 29, 2005 - Put spectrum names in integrations (and hence in logfiles), rather than slot numbers - Defect 174 - Make +/- buttons kick out of autoscale. - Defect 162 - Document user's obligation to delete buffer translators. Decemberr 19, 2005 - Remove illegal default parameter from PointlistGate.h's InGate with parameters. February 1, 2006 - Factor adding a configuration parameter to a CModule in Scriptable SpecTcl into AddParameter member function so extenders can add new parameter types. 3.1-pre5 February 17, 2006 - Factor out multiple identical definitions of some typedefs into xamineDataTypes.h February 20, 2006 - Add longer descriptive titles to the Xamine names (parameter, gates etc). - Fix some quoting errors in gui with respect to spectrum names with spaces. February 21, 2006 - Protect evals from parameters that have spaces in them by quoting with [list]. - Add ability to list gates with spectra in SpectrumPackage.cpp's DescribeSpectrum and immediate callers. - Add -showgate switch to -list operation on spectrum command. - Fix PseudoScript.cpp - did not properly handle cases where pseudo names had spaces in them. February 23, 2006 - Fix typo in Gui/spectrum.tcl March 10, 2006 - Unit tested migration of TCL++ library to object interfaces (remove deprecated interfaces). - Added Docbook generating stuff to configure.in March 13, 2006 - Made operator=, operator== and operator!= of CTCLChannel private as there are no implementations. March 16, 2006 - Added extensive XML based manpages for the tclPlus CTCL class library. - Support pre/post command functions for CTCLProcessor. this is used in nscldaq to implement the CDAQTCLProcessor. - Need to implement CTCLProcssor::Bind to bind itself and the adaptor. March 20, 2006 - Added a bit more error checking/reporting to spectrum creation gui. March 22, 2006 - Fixed an error in 1-d spectrum creation.. syntax March 30, 2006 - Credit D. Bazin with concept of treeparameter in treeparam C++ sources. April 17, 2006 - Fix some 64 bit uncleanliness in Xamine so SpecTcl/Xamine can run reliably on 64bit systems in 64bit mode. April 18, 2006 - Old method of long titles did not work very well as it made old .win files worthless. April 20, 2006 - Fix error in sourcing file from GUI.. file should execute at global level. April 21, 2006 - Add buffersize selector to event source dialogs. April 23, 2006 - Fix typos in event source dialogs buffersize stuff. - Add many credits. April 26, 2006 - Added screen dump based printing for the A1900 group and the KSU folks who want a wysiwyg printing mechanism. May 23, 2006 - Fix defect 195,196: gri was emitting epsf which caused multiple pages to smoosh onto a single page, printer.cc: Print setup dialog had a widget that duplicated the name of another widget causing it to operate funny. SpecTcl-3.1-001 - Try to make the docbook builds more robust even in the presence of missing or broken(?) docbook installs. - configure for libgd. SpecTcl-3.1-002 - Fix defect 206 : Bit mask gates don't check parameter validity and therefore can crash. - Fix defect 197 : 2d averaging boxes too large in x. - Fix defect 200 : Gamma 1dL spectrum were not 64 bit clean - Fix defect 209 : More instances of non 64bit clean longword spectra: BitSpectrumL.cpp Gamma1DL.cpp Spectrum1DL.cpp Spectrum2DL.cpp SummarySpectrumL.cpp - Fix defect 210 : Some acceptance of integer input is not 64 bit clean e.g. sscaning to long but with %d conversion instead of %ld. - Find some more 64 bit uncleanliness.. this time in Xamine. - Re-do the GUI to deal with the case where there's an item named a and another named a.b - big rewrite!!!! - Fix Defect 211 - did not check parameter count on g1 spectrum creation. if no parameters, spectcl segfaults. - Fix Error in allocator.c - mask for longword alignent incorrectly calculated.. caused smaller allocations than should have been done. this caused corruption of the Xamine shared memory free list. - Improve performance of GUI parenting. - Mask gates were not checked in a 64 bit pure way.. sign extends could make the check incorrect. - Mask gate editor in gui - work around issue in early tcl 8.4 where [string is integer] is false for e.g. 0x80000000 - Address defect 213: When a 1-d spectrum has counts > 0x80000000, with autoscaling turned on, it updating it/displaying it causes Xamine to crash. o Modify refreshctl.cc - Xamine_Refresh.. return from Xamine_ComputeScaling should be unsigned, and further more checking for it to go negative is stupid and should be removed. o dispwind.h - getceiling and get floor modified to return uint. o plot1d.cc - Plot : base/max changed to be uint and propagated into PlotLog, PlotLin (range as well in PlotLin?). o plot2d.cc - DrawLogSegment, DrawSegment floor/ceil vars -> uint. o axes.cc - Ensure that counts axes are always + and that mapped axes will be right for very large +/- values. - Side piece of defect 213... channel command is not rejecting large unsigned channel values e.g. 0x87654321. - Really get mask gates to work correctly. - Fix error in newGUI.tcl - if used with Scaler processing, run number could be non decimal (e.g. UNKNOWN). - Fix error in wysiwyg prints of zoomed panes. - Fix Y height error in plotting linear 1-d channels.. an off by 1 error only visible for a relatively small number of counts. - Enh 194 - print more precision in integration results. - Enh 205 - max the gui status line for tha attach so that it can't make the gui window very very wide. - Deal with the fact that treeview find is >very< slow on 64 bit systems in browser.tcl Released September 21, 2006 3.1-003 - Added -rpath to --with-motif-libdir configuration so that we can be sure we get the right motif. - Added prntout of VERSION to tkcon at startup - Back ported fix for defect BZ 224 (integrations of 2dlong spectra give incorrect centroids on 64 bit systems) from 3.2 - Added CHANGELOG to the installation. - Figure out defect 228 - printer defaults can be written with illegal values in Xamine.Defaults file. - Defect 229 - setup.tcl is obsolete now. - CXdrInputStream.cpp - as per D. Caussyn's catch: delete [] m_pBuffer not delete m_pBuffer. Released Jan 15, 2007 3.1-004 - Defect 288 the eval apply $gate [list $spectra] did not work as believed. iterate over the list instead. 3.1-004 - Enh 232 : If treeparameter -set is invoked fire traces on that parameter so any GUI elements associated with it are updated. - BZ292 - Synchronize gpVersion with config.h's VERSION symbol. - BZ 293 - Uniquify tk appname and remove NSCL copyright notice from the top of tkcon.tcl as it's really Jeff Hobb's work under "bourbonware". - BZ 284 - Ensure SpecTcldoes not crash if the VERSION file is not readable. Released April 26, 2007 3.1-005 May 3, 2007 - backport the 3.2 mod to drawing text in Xamine so something is always drawn. - Fold in the jumbo buffer stuff for real. May 14, 2007 - BZ 297 - Deal with pathalogical case of a single channel on an axis. May 16, 2007 - Correct error in -state enabled -> -state normal in TreeParam/SpectrumGenerator.tcl May 16, 2007 - Correct error in TreeParam/SpectrumGenerator.tcl Duplicate Spectrum was not correctly retrieving the parameters of the spectrum being duplicated. May 18, 2007 - Fix CNSCLJumboBuffer::size32() member, was not correctly picking up the buffer revision level. May 28, 2007 - Fix conversion errors in channel -> screens whas moving the dispay of summing errors around. May 30, 2007 - Fix up gate locations to match the 3.2 branch. June 6, 2007 - Ensure that Xamine superposition prompt messages will display by making them children of the parent of the dialog rather than children of the dialog (which gets hidden when Xamine_error_msg is called). June 11,2007 Get a clean development build on ubuntu edgy eft (e.g. from cvs co). July 2, 2007 Fix error in 2d integration was returning stdevs not FWHMs. July 12,2007 - Fix jumbo buffer handling in scriptable. Aug. 16,2007 - BZ 318, The Old GUI spectrum listing was showing the wrong gate applications unless the filter string was * because the applied gate used was determined using the wrong index into the application list. Sep 10, 2007 - BZ 318 again.. use hashtables for the gates since indices are fragile wrt the insertion of new spectra. Sep 11, 2007 - Use spectrum definition in swrite to get the acutal axis limits rather than using the conversions in a hokey way. But remember the summary spectrum's special case. 3.1-005 released Oct 11, 2007 3.1-006 development begins. October 15, 2007 - BZ324 - Fixed a bunch of issues with the test data source. November 26, 2007 - BZ327 - Multicolored monster has problems when parameter definitions are changed and when such changes are asked to modify spectrum definitions. - Avoid std::string string pooling as in CTreeParameter::setUnits as that's not threadsafe.
Copyright © 2009 Geeknet, Inc. All rights reserved. Terms of Use