$Id: History,v 1.25 2001/05/30 08:16:18 gcosmo Exp $ ------------------------------------------------------------------- ========================================================= Geant4 - an Object-Oriented Toolkit for Simulation in HEP ========================================================= Sub-Category History file ------------------------- This file should be used by G4 developers and category coordinators to briefly summarize all major modifications introduced in the code and keep track of all category-tags. It DOES NOT substitute the CVS log-message one should put at every committal in the CVS repository ! ---------------------------------------------------------- * Reverse chronological order (last date on top), please * ---------------------------------------------------------- STL Interface ------------- May 30, 2001 G.Cosmo - Defined 'str_size' as G4std::string::size_type and replaced usage of 'size_t' in G4String and G4SubString. Fixes problem report #40. November 20, 2000 G.Cosmo - Fixes to remove warnings from "-Wall -ansi -pedantic" g++ compiler options: o fixed usage of unsigned-int (size_t) for indeces. July 21, 2000 G.Cosmo - STLInterface/cstring.icc: extended buffer for G4String::readLine from 256 to 1024 characters. June 26, 00 G.Cosmo (STLInterface-V01-01-01) - Fixes for problem report #104: o defs.h: defined G4RWTHROW(a) to abort() in case G4NO_STD_EXCEPTIONS is set. o tpsrtvec.icc, tvordvec.icc: corrected implementation of last() in case of call to G4RWTHROW(a). o cstring.icc: defined function G4String::strcasecompare(a,b) which will NOT invoke the non-ANSI function strcasecmp(a,b) when G4USE_STD_NAMESPACE is set. - defs.h: o fixed memory leaks in destruction of 'str' in destructors and copy-constructors of G4RWGeneralException and G4RWBoundsErr. March 21, 00 G.Cosmo (STLInterface-V01-01-00) - Forced initialization of vectors' members also for ordered/sorted collections. Even when using the access operator vector::operator[] as left-hand operand, it requires the vector to be not empty. Removed usage of vector::reserve(capacity). March 10, 00 G.Cosmo - Implemented correct behavior for vectors' default constructors, as expected by the RW interface. o for pointer/value ordered/sorted collections, an EMPTY STL vector is created and the vector capacity is set to a G4RWDEFAULT_CAPACITY using vector::reserve(capacity). No element initialisation is done. o for pointer/value simple collections, a default constructor creating and EMPTY vector is implemented; the constructor taking the capacity as argument, creates an STL vector of the given capacity and explicitly initialises its elements. Pointers are initialised to zero. February 8, 00 G.Cosmo - cstring.icc: fixed yet another bug in G4String::toUpper() and G4String::toLower(). Loop over the string characters was causing bounds overflow. - tpvector[.h.icc]: added resize(size_t) method which was missing! January 28, 00 G.Cosmo (STLInterface-V01-00-00) - Fixed bug in G4String::toUpper(). (bug was introduced inadvertently on 20-Oct-1999). - Added checks for bound-overflows in G4RWTPtrSortedVector::find(). - Fixed bound-check for operators () and [] in most collections: () access operators DO NOT perform bound-checking (except if G4DEBUG set); [] access operators DO perform bound-checking. - tpvector[.h.icc]: changed 'unsigned int' to 'size_t' in constructors. Added 'rwsize' and bound-checking for operator[]. - tvvector.icc: added call to std_vector() in default constructor. - tpordvec.icc: added std_pvector:: scope for calls to [] operator, where missing. - tvordvec.icc: added std_vector:: scope for calls to [] operator, where missing. November 29, 99 G.Cosmo - Removed references to g4std/string, now removed since not anymore needed. November 26, 99 G.Cosmo (STLInterface-V00-01-04) - Backed up inline keyword for simple methods in vectors' classes (test comparison with previous tag). - Reorganised cstring[.h.icc], no functional changes. November 25, 99 G.Cosmo (STLInterface-V00-01-03) - STLInterface: changes for ISO/ANSI C++ support: o Reorganised method definitions on wrapper classes; made templated vectors' methods all not inlined (test). Created .icc files accordingly. o Changed #define to typedef for std_string and protected in class scope. Introduced std_vector and std_pvector for collections, replaced G4std::vector and G4std::vector accordingly. - Added default comment header to files in STLInterface and class descriptions for Software Reference Manual. November 23, 99 G.Cosmo - Introduced changes to support ISO/ANSI code: o Modified STLInterface wrappers to invoke STL containers from G4std namespace. o Modified #include statements to invoke g4std wrappers. o Introduced G4endl and G4cin in G4ios.hh. Modified code accordingly. - Made destructors for vector wrappers collections in STLInterface virtual. 16th November 1999 Gabriele Cosmo (STLInterface-V00-01-02) - Includes global migration RWT->G4RWT: o Moved all wrapper files from STLInterface/rw to STLInterface/g4rw. o Changed RW to G4RW everywhere, except: RWBoolean to G4Bool, RWCString to G4String, RWTokenizer to G4Tokenizer. o Removed definition of RW_NPOS from defs.h. - Removed wrappers for Dictionaries: tvhdict.h, tphdict.h, rwstlhash.h. Removed also hash_map wrappers. 6th October 1999 Frank Behner (STLInterface-V00-01-01) - Changed tolower/toupper to old implementation in cstring.h. 4th August 1999 Frank Behner (STLInterface-V00-01-00) - Implementation of RWCString::hash(const RWCString&). 6th July 1999 Gunter Folger - name for hash_map for WIN32 is hashmap.h ONLY with Object space; other implementations on WIN32 should use hash_map.h 5th July 1999 Gunter Folger, John Allison (STLInterface-23) - Added operator= to tpsrtvec and tvvector. 28th June 1999 John Allison (STLInterface-21a) - Fixed rwsize=N in tvalvec::resize(N) (Gunter). 24th June 1999 John Allison (STLInterface-21) - Fixed clear problem (which wrongly made STL size 0). - Added bounds checking. 23rd June 1999 John Allison (STLInterface-20) - Tagged Frank's fixes to tpordvec re insertAt(0,...) and similar. 20th June 1999 John Allison (STLInterface-18) - Removed G4RWTPtrHashDictionary(size_t n):fhm(n){}. - Implemented G4RWTPtrHashDictionary::clearAndDestroy of values *and* keys, protecting against duplicate entries. - Reimplemented G4RWTPtrOrderedVector::clearAndDestroy with vector instead of set. - Prevented G4RWTPtrOrderedVector::resize and G4RWTValOrderedVector::resize from reducing the size below the number if items. 20th June 1999 John Allison - Started this file.