Geant4 Cross Reference (Editor's cut)

Cross-Referencing   Geant4
Geant4/analysis/History

Version: [ ReleaseNotes ] [ 10.2 ] [ 10.2.p1 ] [ 10.2.p2 ] [ 10.2.p3 ] [ 10.3 ] [ 10.3.p1 ] [ 10.3.p2 ] [ 10.3.p3 ] [ 10.4 ] [ 10.4.p1 ] [ 10.4.p2 ] [ 10.4.p3 ] [ 10.5 ] [ 10.5.p1 ] [ 10.6 ] [ 10.6.p1 ] [ 10.6.p2 ] [ 10.6.p3 ] [ 10.7 ] [ 10.7.p1 ] [ 10.7.p2 ] [ 10.7.p3 ] [ 10.7.p4 ] [ 11.0 ] [ 11.0.p1 ] [ 11.0.p2 ] [ 11.0.p3 ] [ 11.0.p4 ] [ 11.1 ] [ 11.1.1 ] [ 11.1.2 ] [ 11.1.3 ] [ 11.2 ] [ 11.2.1 ] [ 11.2.2 ]

  1 # Category analysis History
  2 
  3 See `CONTRIBUTING.rst` for details of **required** info/format for each entry,
  4 which **must** added in reverse chronological order (newest at the top).
  5 It must **not** be used as a substitute for writing good git commit messages!
  6 
  7 -------------------------------------------------------------------------------
  8 
  9 ## 2024-06-05 I. Hrivnacova (analysis-V11-01-11)
 10 - Do not delete G4Accumulable<T> default constructor,
 11   as it prevents from using it in an array without an explicit
 12   initialization in the header.
 13 
 14 ## 2024-05-02 Gabriele Cosmo
 15 - Fixed wrong conversion to G4String in G4THnToolsManager, leading to
 16   compilation error on gcc compiler with C++23 Standard enabled.
 17 
 18 ## 2023-11-03 Ben Morgan (analysis-V11-01-10)
 19 - Use "G4" prefixed version of EXPAT/ZLIB CMake variables
 20 
 21 ## 2023-09-20  I. Hrivnacova (analysis-V11-01-09)
 22 - Updated GetNofNtuples implementation to take into account
 23   new 'onlyIfExists' parameter:
 24   - Moved 'GetNofNtuples' and 'List' functions in G4NtupleBookingManager
 25     where the info about deleted ntuples (fFeeeIds) is available
 26 
 27 ## 2023-08-29  I. Hrivnacova (analysis-V11-01-08)
 28 - Adding new G4AnalysisManager functions for deleting selected
 29   ntuples:
 30     G4bool  DeleteNtuple(G4int id, G4bool clear = false);
 31   and UI commands:
 32     /analysis/ntuple/delete id [keepSetting]
 33 - Added GetNtuple() functions in G4GenericAnalysisManager:
 34     tools::ntuple_booking* GetNtuple(...) const
 35   that, in difference from output specific managers, return
 36   ntuple_booking, that is common to all output types
 37 - Added UI commands for creating ntuple:
 38   /analysis/ntuple/create name title
 39   /analysis/ntuple/create[I|F|D|S]Column name
 40   /analysis/ntuple/finish
 41 - Changed verbosity level for "merge" information from 1 to 2
 42 
 43 ## 2023-08-29  I. Hrivnacova (analysis-V11-01-07)
 44 - Fixed Coverity in G4RootHnFileManager 
 45 
 46 ## 2023-08-14  I. Hrivnacova (analysis-V11-01-06)
 47 - Updates & fixes in files handling:
 48   - Moved Set/GetDefaultFileType methods and UI command in
 49     G4VAnalysisManager and G4AnalysisMessenger
 50     (from G4GenericAnalysisManager/Messenger)
 51     - This allows to support omitting file extension also when
 52       setting file names to histograms/profiles
 53   - Removed G4GenericAnalysisMessenger
 54   - Added clearing of file data in 'DeleteEmptyFiles'
 55     - this prevent from deleting non-empty files created/filled in previous
 56       runs but not used in new runs
 57   - Supressed warning from 'CreateTFile' when file is already
 58     existing
 59 
 60 ## 2023-08-02  I. Hrivnacova (analysis-V11-01-05)
 61 - Adding new G4AnalysisManager functions for deleting selected
 62   histograms/profiles:
 63     G4bool  Delete[Hn|Pn](G4int id, G4bool clear = false);
 64   and UI commands:
 65     /analysis/[hn|pn]/delete id [keepSetting]
 66 
 67 ## 2023-07-21 I. Hrivnacova (analysis-V11-01-04)
 68 - Fixed implementation of set commands per dimension:
 69    /analysis/hn|pn/setX|Y|Z
 70   (Addressing a problem report in Geant4 forum.)
 71 
 72 ## 2023-07-20 I. Hrivnacova (analysis-V11-01-03)
 73 - Moved kDimN constants from G4VAnalysisManger in G4AnalysisUtilities
 74   and replaced all hard-wired literals '1', '2' and '3' with these
 75 
 76 ## 2023-07-19 I. Hrivnacova (analysis-V11-01-02)
 77 - Addressed "TO DO" comments left in the code, improvements & a fix:
 78   - Moved 'CompressionLevel' data/functions members from G4AnalysisManagerState
 79     to G4BaseFileManager to make it available in helper classes
 80     which do not have access to state
 81     - Compression level (default 1) is now used also when writing a Root histogram
 82       in an extra file and writing Hdf5 ntuples
 83   - Postpone creating G4HnMessenger after G4THnMessenger to get
 84     better command ordering in the 'help' tree
 85   - Moved setAxisLog command from G4THnMessenger to G4HnMessenger
 86     as it applies to function defined in its associated class
 87   - Moved 'kMaxDim' constant from G4THnMessenger in G4AnalysisUtilities
 88     as needed also at other places
 89   - Fix: Do not create 'setAxis*'' commands for idim = 4
 90   - Added warnings about failure in *HnFileManager::WriteExtra where 
 91     missing
 92   - Use forward declarations for templated classes where suitable
 93 
 94 ## 2023-06-09 I. Hrivnacova (analysis-V11-01-01)
 95 - Fixed creating histograms with user defined bins
 96   - bug report #2541
 97 - Improved 'FillH*'' debug message
 98 
 99 ## 2022-12-12 Ben Morgan (analysis-V11-01-00)
100 - Remove obsolete GNUmakefile scripts
101 
102 ## 2022-11-28  I. Hrivnacova (analysis-V11-00-27)
103 - Implemented analysis manager list command (missing in analysis-V11-00-10):
104   /analysis/ntuple/list  [onlyIfActive]
105 
106 ## 2022-11-25 Gabriele Cosmo (analysis-V11-00-26)
107 - Fixed compilation warnings for implicit type conversions on macOS/XCode 14.1.
108 
109 ## 2022-11-14 I. Hrivnacova (analysis-V11-00-25)
110 - Added a protection against nullptr in G4VAnalysisManager::GetNofNtuples()
111   - addressing the problem report #2518.
112 
113 ## 2022-11-09 I. Hrivnacova (analysis-V11-00-24)
114 - Restored G4RootNtupleFileManager::CloseNtupleFiles()
115   used in MPI overriding class
116 
117 ## 2022-11-03 I. Hrivnacova (analysis-V11-00-23)
118 - Removed debug printing from G4XmlFileManager
119 
120 ## 2022-11-02 I. Hrivnacova (analysis-V11-00-22)
121 - Coverity fixes:
122   - Dead code (G4THnMessenger, G4RootFileManager)
123   - Resource leak (G4NtupleMessenger)
124   - Recursion in included headers (G4THnToolsManager, G4THnMessenger)
125 
126 ## 2022-10-28 I. Hrivnacova (analysis-V11-00-21)
127 - Removed debug printing from G4AnalysisMessenger constructor
128 
129 ## 2022-10-21 I. Hrivnacova (analysis-V11-00-20)
130 - Added new UI commands for analysis file management:
131 
132   - New commands in G4AnalysisMessenger class:
133     /analysis/openFile, write, closeFile and reset
134     New command in new G4GenericAnalysisMessenger class:
135      /analysis/setDefaultFileType
136   - Support also multiple write with/without calling write and/or reset
137     in between two runs
138   - Demonstrated (and tested) in new analysis example AnaEx03
139 
140   - Implementation details:
141     - Do not broadcast commands for actions called at the end of run
142       (write, reset and closeFile) and let master to execute action on workers
143       and master in the right order
144     - Added alternative private methods for Write, Reset and CloseFile
145       with the name suffix FromUI, executed only on master
146       and taking care of processing on workers in the right order
147       - Make G4AnalyssMessenger friend class to give access to these functions
148     - Added G4AnalysisState::fThreadId and its getter needed for
149       accessing thread Id when triggering workers actions from master
150     - Added a protection from calling OpenFile twice
151     - Reset histograms on workers (G4THnManager.icc) after they were merged
152       in master (otherwise they contribute again in the accumulation of data
153       when successive write is called without previous reset)
154 
155 ## 2022-10-15 I. Hrivnacova (analysis-V11-00-19)
156 - Corrected multiple write for ntuples with set file and activated merging
157   (files n1.root and ntuples.root in test32)
158 
159 ## 2022-10-14 I. Hrivnacova (analysis-V11-00-18)
160 - Implemented support for writing ntuples in a file multiple times:
161   - The object cycle number is attributed in the same way as for histograms
162   - fCycle data and its functions moved from Hn information objects in G4AnalysisState
163   - Fixed development in analysis-V11-00-16: corrected updating Csv file names per histograms
164     with cycle number
165 
166 ## 2022-10-13 I. Hrivnacova (analysis-V11-00-17)
167 - Replaced G4TNtupleDescription, G4RootPNtupleDescription structures with classes
168   more suitable for adding members for handling ntuple cycles
169 
170 ## 2022-10-10 I. Hrivnacova (analysis-V11-00-16)
171 - Implemented support for writing histograms in a file multiple times:
172   - With the Root output type the object cycle number is attributed automatically
173   - With other output types ,that do not support object cycles, the object name
174     is appended with _vN, where N is the number of the write cycle, when the object
175     is written more than once.
176     No extension is added when the object is written for the first time (cycle 0).
177 
178 ## 2022-10-05 I. Hrivnacova (analysis-V11-00-15)
179 - Fix in applying units in "create" and "set" commands
180 
181 ## 2022-09-08 Ben Morgan (analysis-V11-00-14)
182 - Resolve inconsistent dependency in hntools
183 
184 ## 2022-08-31 I. Hrivnacova (analysis-V11-00-13)
185 
186 - Introduced a common implementation for histogram/profiles manager:
187   - New classes:
188     - G4VTBaseHnManager<DIM> - replaces G4VHn|PnManager
189     - G4THnToolsManager<DIM,HT> - replaces G4H*|P*Manager classes
190     - G4THnMessenger - replaces G4H*|P*Messenger class
191     - G4HnDimension - helper type to manipulate ndim, xmin, xmake parameters
192       together
193   - Updated classes:
194     - G4THnManager: added a vector of pairs of histogram and information
195       as a data member to simplify the access when both objects are used
196     - Updated HnInformation structures functions to use compacted
197       parameters
198     - Updated functions in G4AnalysisUtilities:
199       - Moved Check*, UpdateTitle functions in appropriate classes
200       - Added G4Analysis::IsProfile<T>()
201     - All messenger classes: replaced the usage of the analysis messenger helper
202       with private helper functions
203     - G4Plot* classes moved from managent in hntools
204   - Removed classes
205     - G4VH1Manager, etc. for H2, H3, P1, P2
206     - G4H1Manager, etc. for H2, H3, P1, P2
207     - G4H1Messenger, etc. for H2, H3, P1, P2
208     - G4ToolsAnalysisMassenger, G4FileMessenger
209     - G4BaseHistoUtilities
210 
211 ## 2022-08-25 G. Cosmo (analysis-V11-00-12)
212 - Attempt to fix compilation warning on gcc-12.1 in function ObjectType()
213   in G4AnalysisMessengerHelper.
214 
215 ## 2022-08-24 I. Hrivnacova (analysis-V11-00-11)
216 - Fix in deleting files (root):
217   do not delete the final (merged) file when only ntuples are present
218 
219 ## 2022-08-22 I. Hrivnacova (analysis-V11-00-10)
220 - Implemented new analysis manager List functions and associated commands:
221   /analysis/list [onlyIfActive]
222   /analysis/xy/list  [onlyIfActive]
223       where xy = h1, h2, h3, p1, p2, ntuple
224 
225 ## 2022-08-09 I. Hrivnacova (analysis-V11-00-09)
226 - Refactored the of the analysis manager methods for file handlling from 
227   the output specific managers in the common implementation in G4ToolsAnalysisManger. 
228   Besides code simplification, this guaranties identical behavior with generic analysis 
229   manager.
230 - Reviewed/fixed resetting data when postponed after CloseFile (for plotting)
231 - Fixes in deleting files: 
232   do not delete (not empty) main ntuple files with generic analysis manager,
233   delete empty ntuple csv and xml files created on the main thread
234 
235 ## 2022-08-01 I. Hrivnacova (analysis-V11-00-08)
236 - clang-tidy fixes - checks recommended in CODING_GUIDELINES.rst
237 
238 ## 2022-07-27 I. Hrivnacova (analysis-V11-00-07)
239 - Fix Coverity: use auto& to avoid copying of shared_ptr and pair objects
240 
241 ## 2022-07-13 I. Hrivnacova (analysis-V11-00-06)
242 - Added G4RootRFile type = a tuple for the Root read file including its directories,
243   analogic to G4RootRFile for Root output, used now in the G4RootRfileManager::fRFiles
244   map instead of tools::rroot::file.
245   This allows deleting file directories in the class dtor, and should fix
246   the Coverity defect (deleting local variable 'newDir' in G4RootRNtupleManager)
247 
248 ## 2022-05-18 Guy Barrand (analysis-V11-00-05)
249 - have "toolx" namespace for g4tools classes related to "externals", then:
250   - tools::[hdf5,zlib,xml::xml_style,raxml,sg::text_freetype] become toolx::[hdf5,zlib,xml::xml_style,raxml,sg::text_freetype].
251   - corresponding includes #include <tools/...> become #include <toolx/...>
252 
253 ## 2022-03-24 Ben Morgan (analysis-V11-00-04)
254 - Use geant4_category_modules to optionaly add G4hdf5 module to category
255 
256 ## 2022-03-02 I. Hrivnacova (analysis-V11-00-03)
257 - Fix notifying about closing file in G4GenericAnalysisManager;
258   this fixes savinng scorers in analysis file in B3 example
259   for the second and further runs.
260 
261 ## 2022-02-23 I. Hrivnacova (analysis-V11-00-02)
262 - Added "getVector" commands (for visualization): 
263     /analysis/hn|pn/getVector
264 
265 ## 2022-01-28 Ben Morgan (analysis-V11-00-01)
266 - Replace `geant4_global_library_target` with direct file inclusion and
267   call to `geant4_add_category` to define library build from source modules.
268 
269 ## 2021-12-10 Ben Morgan (analysis-V11-00-00)
270 - Change to new Markdown History format
271 
272 ---
273 
274 # History entries prior to 11.0
275 
276 November 15, 2021 I. Hrivnacova (analysis-V10-07-30)
277 - Fixed remaining Coverity issues
278 
279 November 15, 2021 I. Hrivnacova (analysis-V10-07-29)
280 - Fixed Coverity issues
281 
282 November 09, 2021 I. Hrivnacova (analysis-V10-07-28)
283 - Fix in G4MPIToolsManager: do not call Receive() twice
284 
285 November 05, 2021 I. Hrivnacova (analysis-V10-07-27)
286 - Added new public function G4VAnalysisManager::Clear()
287   that deletes all allocated analysis objects and clears
288   their collections.
289   This function should be used as a replacement for deleting
290   the analysis manager in the applications that allocate the
291   analysis data in begin of run and deleted the analysis
292   manager in end of run.
293 - Minor code clean-up
294 
295 November 04, 2021 I. Hrivnacova (analysis-V10-07-26)
296 - Renamed G4VAnalysisReader::ReadNtuple(const G4String&)
297   back in GetNtuple.  Cannot reproduce the ambiguity error
298   with GetNtuple(G4int).
299 
300 October 28, 2021 I. Hrivnacova (analysis-V10-07-25)
301 - Moved data members initialization in header files;
302   added deleted default constructor where appropriate,
303   added explicit keyword to one argument construtors where
304   missing
305 - Use brace data members initialization everywhere
306 - Implemented missing WriteOnAscii() - for h2,h3,p1,p2
307 - Use fonts from tools in G4PlotManager.cc
308 - Removed CMake -DTOOLS_USE_EXPAT definition (not needed)
309 - Added G4ToolsAnalysisMessenger that implements "get" commands
310     /analysis/hn|pn/get id
311 
312 October 27, 2021 B.Morgan (analysis-V10-07-24)
313 - Use G4StrUtil functions replacing deprecated G4String member functions
314 
315 October 26, 2021 I. Hrivnacova (analysis-V10-07-23)
316 - Fixed G4*RFileManager destructors;
317   thanks to B. Morgan for spotting this bug
318 
319 October 25, 2021 I. Hrivnacova (analysis-V10-07-22)
320 - Added public function G4VAnalysisManager::Reset()
321   - Needed when calling files are closed without reset
322     by calling analysisManager->CloseFile(false)
323     (see B5 example with interactive plotting)
324 - Minor fixes:
325   - Do not issue same log messages from generic analysis manager
326     and generic file manager
327   - Do not call SetIsEmpty() twice in Hdf5
328 
329 October 22, 2021 I. Hrivnacova (analysis-V10-07-21)
330 - Support for ntuple columns of string vector type
331   for Xml, Hdf5 output type:
332   - added helper code for Xml reader, no update needed for Hdf5
333 
334 October 19, 2021 I. Hrivnacova (analysis-V10-07-20)
335 - Implemented support for file system directories with Csv output
336   as proposed in [GitHub PR #32](https://github.com/Geant4/geant4/pull/32)
337 - Fixed reading objects from files with directories (Root, Hdf5)
338 - Implemented handling directories in Generic analysis manager
339 - Clean-up in G4ToolsAnalysisManager
340 - Reimplemented utility functions GetBaseName(), GetExtension() using
341   <filesystem> library
342 
343 October 6, 2021 I. Hrivnacova (analysis-V10-07-19)
344 - Added new G4AnalysisManager.hh header defining
345   using G4AnalysisManager = G4GenericAnalysisManager
346 - Removed g4csv.hh, g4hdf5.hh, g4root.hh, g4xml.hh
347 - Reduced output specific type definitions in
348   g4xyz_defs.hh to ntuple end rntuple types
349 - Removed g4analysis.hh with the
350   G4Analysis::MasterInstance() factory method
351 - Removed the default value ("root") for the default file type
352   in G4GenericAnalysisManager - the default must be set by
353   user if using fileNames without extensions
354 - Updated exception codes and messages in accummulables
355 
356 September 20, 2021 I. Hrivnacova (analysis-V10-07-18)
357 - clang-tidy performance fixes:
358   - use const auto&, std::move where appropriate
359   - revisited passing by std::shared_ptr
360 - clang-tidy modernize fixes:
361   - use make_unique, nullptr, auto, emplace_back, using
362   - use default for disabled constructors and destructors,
363     delete for private member functions not implemented
364 - Removed explicit for constructors with more than 1 parameters
365 
366 September 17, 2021 I. Hrivnacova (analysis-V10-07-17)
367 - Fixed evaluation of result of deleting empty file
368   in G4RootAnalysisManager causing wrong warnings
369 
370 September 3, 2021 I. Hrivnacova (analysis-V10-07-16)
371 - Added support for ntuple columns of string vectors via
372   new public functions in G4VAnalysisManager and G4VAnalysisReader:
373   G4bool SetNtupleSColumn(const G4String& columnName,
374                           std::vector<std::string>& vector) final;
375   G4bool SetNtupleSColumn(G4int ntupleId, const G4String& columnName,
376                           std::vector<std::string>& vector) = 0;
377 
378 August 31, 2021 I. Hrivnacova (analysis-V10-07-15)
379 - Code clean-up:
380   - Review of static data members:
381     - changed static const to static constexpr where possible
382       or inline static const otherwise (for G4String)
383     - declares static data members inline and moved their initialization
384       in header file
385   - Be consistent:
386     - "" for includes from g4tools
387     - "fk" prefix for class constexpr data names
388     - Template argument names:
389     HT, NT, FT for histogram/profile, ntuple, file types
390   - Removed redundant includes of "G4Threading.hh", <iostream>
391 
392 August 26, 2021 B. Morgan (analysis-V10-07-14)
393 - Remove default: in switch for GetMergeFunction
394   - Prevents accidental fall through of Windows
395 
396 August 25, 2021 I. Hrivnacova (analysis-V10-07-13)
397 - Separated Hn/Pn object file handling from output specific analysis readers
398   in Hn file manager classes for reading (G4XHnRFileManager)
399 - Replaced the explicit Read[Hn|Pn] functions in the analysis readers
400   by a common implementation in G4ToolsAnalysisReader
401   using the newly introduced Hn file manager classes for reading
402 - Separated ReadNtuple functions from the analysis readers in
403   the RNtuple manager classes
404 - Renamed G4VAnalysisReader::GetNtuple(const G4String&) in ReadNtuple
405   to avoid ambiguity with GetNtuple(G4int).
406   Note that this change brings backward incompatibility.
407 - Using more shared pointers
408 
409 August 18, 2021 I. Hrivnacova (analysis-V10-07-12)
410 - Simplified verbosity messages
411 - Plus more simplifications in Warn calls
412 - Separated inline functions from G4MPIToolsManager.hh
413   to new .icc
414 
415 August 16, 2021 I. Hrivnacova (analysis-V10-07-11)
416 - Simplified calls to G4Exceptions:
417   - Added G4Analysis::Warn() and changed the calls to G4Exception in
418     all analysis classes (except accummulables)
419   - Reduced exception classification to
420     Analysis_F001: Fatal exceptions - all fatal exception
421     Analysis_W001: Warnings - all warnings
422 - Replaced some constants with constexpr
423 
424 August 12, 2021 I. Hrivnacova (analysis-V10-07-10)
425 - Replaced the explicit Write[Hn|Pn] functions in the analysis managers
426   by a common implementation in G4ToolsAnalysisManager::WriteImpl() and Merge()
427   using the new Hn file manager classes introduced for the generic file manager
428   last year.
429   The same code is now used for writing histograms/profiles by specific analysis managers and the generic analysis manager.
430 - Added new G4ToolsAnalysisManager::IsEmpty() function
431 - Removed trailing whitespaces
432 
433 August 6, 2021 I. Hrivnacova (analysis-V10-07-09)
434 - Added new G4VAnalysisReader public function
435     G4bool CloseFiles(G4bool reset = true);
436   to be called by user before the end of program
437   and its implementation for all readers.
438   This prevents from errors in the Hdf5 read test
439   after migration of the readers to G4ThreadLocalSingleton.
440 
441 July 19, 2021 I. Hrivnacova (analysis-V10-07-08)
442 - Migration to G4ThreadLocalSingleton:
443   in all specific analysis manager and reader classes.
444   After this migration the singleton instances are deletes
445   by the Geant4 kernel, that's why their deleting has to be
446   removed from the client code.
447 - Removed isMaster argument from managers/reders constructors,
448   and retrieve this info from G4Threading where needed.
449 
450 July 15, 2021 I. Hrivnacova (analysis-V10-07-07)
451 - Replaced G4Analysis::make_unique with std::make_unique
452 - Using [[maybe_unused]] where appropriate
453 
454 June 29, 2021 G. Cosmo (analysis-V10-07-06)
455 - Fixed compilation errors in G4CsvAnalysisReader and G4XmlAnalysisReader
456   occurring with c++20 enabled.
457 
458 May 25, 2021 B. Morgan (analysis-V10-07-05)
459 - Move fonts/ directory and install logic to g4tools external, as prime interface
460   to Freetype.
461 
462 March 30, 2021 B. Morgan (analysis-V10-07-04)
463 - Migrate build to modular CMake API
464 
465 February 26, 2021 I. Hrivnacova (analysis-V10-07-03)
466 - Fixed ntuple indexing when FinishNtuple is called in different order
467   than CreateNtuple.
468   Addressing the problem report #2335.
469 
470 February 18, 2021 B. Morgan (analysis-V10-07-02)
471 - Move g4tools to externals category
472 
473 February 2, 2021 I. Hrivnacova (analysis-V10-07-01)
474 - Fixed the problem with merging ntuples with columns of vector type
475   reported by Riccardo Pilato in G4 Forum.
476 
477 January 5, 2021 I. Hrivnacova (analysis-V10-07-00)
478 - Updated to g4tools 5.2.3 (Guy Barrand):
479   Bug fix in tools/histo/h2,h3 : get_bin_content(): have '&' in "get" arguments.
480   Addressing the problem report #2306.
481   See History_tools for the complete list of modifications.
482 
483 November 16, 2020 G. Cosmo (analysis-V10-06-11)
484 - Fixed typos in printed-out text. Addressing problem report #2285.
485 
486 November 12, 2020 B. Morgan (analysis-V10-06-10)
487 - Apply typo fixes from Gurkan Myczko (https://github.com/Geant4/geant4/pull/15)
488 
489 November 10, 2020  I. Hrivnacova (analysis-V10-06-09)
490 - Fixed the memory leak reported by valgrind in deleting files
491 
492 November 06, 2020  I. Hrivnacova (analysis-V10-06-08)
493 - Make GenericAnalysisManager working with file names without extension
494   (needed for backward compatibility):
495   - Added fDefaultType data member and its setter, getter (with "root" default)
496 - Fixed deleting empty files
497 - Fixed minor memory leaks
498 
499 November 04, 2020  I. Hrivnacova (analysis-V10-06-07)
500 - Changes to allow overriding Root classes in g4mpi/analysis
501 - Removed redundant variable in G4RootNtupleFileManager::Reset()
502 
503 October 30, 2020  I. Hrivnacova (analysis-V10-06-06)
504 - Implemented writing ntuples in multiple files of the same output type:
505   - New G4VAnalysisManager function:
506       void SetNtupleFileName(G4int objectId, const G4String& name);
507     and UI commands:
508       /analysis/ntuple/setFileName id fileName
509       /analysis/ntuple/setFileNameToAll fileName
510 - Finalizes implementation of extra write of histograms
511   - Polished G4GenericAnalysisManager::WriteH1 and added
512     functions for other Hn types
513 - This also fixes issues in the ntuple output introduced with previous tag
514   (observed in B4, TestEm1, microbeam)
515 
516 October 21, 2020  I. Hrivnacova (analysis-V10-06-05)
517 - Major upgrade including the support for multiple files
518   and multiple output types:
519   - New G4GenericAnalysisManager,G4GenericFileManager classes
520     if factory category
521   - New G4VAnalysisManager functions:
522      void SetH1FileName(G4int objectId, const G4String& name);
523         ... etc. for H2, H3, P1, P2
524     and corresponding UI commands:
525      /analysis/h1/setFileName id name
526      /analysis/h1/setFileName id name
527         ... etc. for h2, h3, p1, p2
528   - Redesign of management classes to separate object file handling
529     from output specifuc analysis managers
530   - The multiple file output is tested in new test32
531 
532 October 14, 2020  I. Hrivnacova (analysis-V10-06-04)
533 - Updated G4PlotManager.cc - using new wrap_viewplot_fonts_google_style
534   header
535 - Updated to g4tools 5.2.1 (Guy Barrand):
536   - Change the usage of arialbd.ttf, helvetica.ttf with roboto_bold.ttf
537     and lato_regular.ttf (google fonts).
538   - Modifications in tools/hdf5 to use H5free_memory() instead free() at
539     some places (needed for HDF5/1.12.0).
540   - Modifations in graphics to be be in sync with the code in inlib/exlib
541     around Apple/Metal, but they should not have an impact on offscreen plotting.
542   See History_tools for the complete list of modifications.
543 
544 June 10, 2020  J. Madsen (analysis-V10-06-03)
545 - (bug-fix) Added a null-pointer check to ntupleDescription->fNtuple in
546   G4RootPNtupleManager::Merge. This happened during testing of new
547   G4TaskRunManager in basic/B5, which defaults to a higher
548   number of threads than G4MTRunManager.
549 
550 May 22, 2020   I. Hrivnacova (analysis-V10-06-02)
551 - Updated to g4tools 5.1.0 (Guy Barrand):
552   Corrections to handle automatic min/max axes values in case of log scale.
553   See History_tools for the complete list of modifications.
554 
555 April 29, 2020   G. Folger (analysis-V10-06-01)
556 - (trivial) fix for clang10, affects header g4tools/include/tools/gl2ps
557 
558 December 9, 2019 B. Morgan (analysis-V10-06-00)
559 - Cleanup CMake build, removing obsolete granular library options and
560   explicit include_directories.
561 - Update granular dependencies in preparation for modularization
562 - Remove uneeded links to externals in factory
563 
564 December 3, 2019 I. Hrivnacova (analysis-V10-05-13)
565 - Use consistently the same default value of rowMode
566   in G4RootAnalysisManager::SetNtupleRowWise() as defined in the
567   G4VAnalysisManager base class.
568 
569 November 19, 2019 G. Cosmo (analysis-V10-05-12)
570 - Fixed more cases of implicit type conversions.
571 
572 November 17, 2019 I. Hrivnacova (analysis-V10-05-11)
573 - Updated to g4tools 5.0.5 (Guy Barrand):
574   Fixed compilation warning from gl2ps showing up on gcc-9.2.
575   See History_tools for the complete list of modifications.
576 
577 November 15, 2019 G. Cosmo (analysis-V10-05-10)
578 - Fixed cases of implicit type conversions from size_t to G4int.
579 
580 November 11, 2019 B. Morgan (analysis-V10-05-09)
581 - Link directly to FreeType and HDF5 impormted targets
582 
583 November 8, 2019 I. Hrivnacova (analysis-V10-05-08)
584 - In G4PlotManager: Disabled PAW encoding
585   (this fixes a problem with unwanted axis labels in Greek)
586 - Updated to g4tools 5.0.4 (Guy Barrand):
587   - sg/plotter: added function set_encoding(), set_encoding_none() which allow
588     to disable (unwanted) paw specific encoding
589   - Fixed Coverity warnings
590 
591 October 21, 2019 I. Hrivnacova (analysis-V10-05-07)
592 - Added fRowWise data member in G4RootNtupleManager to make the parameter
593   available in MPI
594 
595 October 17, 2019 I. Hrivnacova (analysis-V10-05-06)
596 - Updated to g4tools 5.0.2 (Guy Barrand):
597   Handle axis label of format "10^%d?" in case of freetype font.
598 
599 October 14, 2019 I. Hrivnacova (analysis-V10-05-05)
600 - Enhanced the G4VAnalysisManager interface:
601   - Added new option for ntuple merging and updated/added functions for merging:
602     - SetNtupleMerging(): removed rowWise and basketSize optional paremeters
603     - SetNtupleRowWise(): added parameter 'rowMode' with a default value
604     - SetBasketSize(), SetBasketEntries(): new methods
605   - Added functions and UI commands for setting axis log scale for plotting:
606     - Set[H,P][1,2,3][X,Y.Z]AxisIsLog()
607       and analoguos getters
608     - New UI commands
609       /analysis/[h,p][1,2,3]/set[X,Y,Z]axisLog true|false
610 - Fix in g4tools for axis labels with log scale
611 
612 October 9, 2019 I. Hrivnacova (analysis-V10-05-04)
613 - Updated to g4tools 5.0.1 (Guy Barrand):
614   - ROOT format : restore a "per event/row view" for the ntuple column-wise in MT and MPI.
615   - batch plotting : fixes to avoid labels overlap when having a grid of plotters.
616   - MPI : fix a memory leak.
617   - scene graph : have material for interactive plotting.
618   - include modifications coming from other usage of inlib/exlib, for example, in rroot, to be able to read TClonesArray.
619   See History_tools for the complete list of modifications.
620 
621 September 24, 2019 I. Hrivnacova (analysis-V10-05-03)
622 - Fix in g4tools:
623   - mpi_create_basket: fixed memory leak (Guy Barrand)
624 
625 September 10, 2019 I. Hrivnacova (analysis-V10-05-02)
626 - Added new factory function G4Analysis::ManagerInstance():
627   which allows to create the analysis manager of the type selected via a string argument; example of the user code:
628   #include "g4analysis.hh"
629   G4AnalysisManager* analysisManager = G4Analysis::ManagerInstance("root");
630 
631   Note that G4AnalysisManager is in this case G4ToolsAnalysisManager, and not
632   the output type specific manager (eg. G4RootAnalysisManager), as it is
633   in case of using a type specific include, eg. "g4root.hh"
634 
635   Details:
636   - Added new analysis sub-category "factory"
637   - Clean-up analysis type definitions:
638     G4Hn*, G4Pn* types moved out of type specific namespace
639   - Added methods for setting ntuple merge mode in G4VAnalysisManager
640     with a default implementatation (issuing a warning if merging is not available)
641 
642 June 12, 2019 I. Hrivnacova (analysis-V10-05-01)
643 - Fixed CSV, XML ntuple file names
644 
645 March 11, 2019 G. Cosmo (analysis-V10-05-00)
646 - Fixed typos in printouts in G4P1Messenger, G4PlotMessenger, G4PlotParameters.
647 
648 November 28, 2018 I. Hrivnacova (analysis-V10-04-10)
649 - Use the same mutex in Root pntuple add_row and end_fill.
650   This should fix occassional failures of tests in MT mode.
651 
652 November 21, 2018 I. Hrivnacova (analysis-V10-04-09)
653 - Added G4RootAnalysisManager::SetNtupleRowWise(G4bool rowWise):
654   this allows to choose rowWise/columnWise mode also in sequential mode
655 - Added "boolean reset" argument in G4AnalysisManager::CloseFile() function:
656   this allows to close a file without resetting data
657   (used in MPI example)
658 - Allow overriding selected functions in G4RootAnalysisManager, G4RootNtupleManager
659   and G4TNtupleManager: needed for an external implementation of MPI ntuple merging
660   in MPI examples
661 
662 November 9, 2018 G. Cosmo (analysis-V10-04-08)
663 - tools/hatcher.icc: fixed printout typos.
664 
665 November 7, 2018 I. Hrivnacova (analysis-V10-04-07)
666 - Fixed creating ntuples after OpenFile for other then Root formats
667 
668 October 11, 2018 I. Hrivnacova (analysis-V10-04-06)
669 - Switched the default Root ntuple merge mode to rowWise
670 - Added friend class declarations to allow an implementation
671   of MPI ntuple merging in the MPI example
672 
673 October 11, 2018 I. Hrivnacova (analysis-V10-04-05)
674 - Modified management of plotting:
675   G4PlotManager is now instantiated with G4AnalysisManager what makes
676   possible to remove static G4PlotParameters.
677   (This fixes the problem report ##2083.)
678 
679 September 12, 2018 I. Hrivnacova (analysis-V10-04-04)
680 - Fixed the default value of rowWise argument (false)
681   in G4RootAnalysisManager::SetNtupleMerging().
682 - Updated G4TNtupleManager::FinishTNtuple to support creating ntuples
683   both before and after OpenFile.
684 
685 May 25, 2018 I. Hrivnacova (analysis-V10-04-03)
686 - Updated to g4tools 4.2.3 (Guy Barrand):
687   Fixed remaining gcc-8.1.0 warnings.
688   See History_tools for the complete list of modifications.
689 
690 May 23, 2018 I. Hrivnacova (analysis-V10-04-02)
691 - Updated to g4tools 4.2.2 (Guy Barrand):
692   Fixed gcc-8.1.0 warnings.
693   See History_tools for the complete list of modifications.
694 
695 February 15, 2018 J. Madsen (analysis-V10-04-01)
696 - Fixed a deadlock issue with G4RootPNtupleManager where the mutex
697   was locked before being passed to ROOT
698 
699 December 21, 2017 G. Cosmo (analysis-V10-04-00)
700 - Fixed self-consistency in headers (missing #include) in G4BaseAnalysisManager,
701   and G4PlotManager.
702 
703 November 16, 2017 I. Hrivnacova (analysis-V10-03-17)
704 - Updated to g4tools 4.2.1 (Guy Barrand):
705   Coverity fixes.
706   See History_tools for the complete list of modifications.
707 
708 November 2, 2017 I. Hrivnacova (analysis-V10-03-16)
709 - Fixed compilation warning
710 
711 October 25, 2017 I. Hrivnacova (analysis-V10-03-15)
712 - Updated to g4tools 4.2.0 (Guy Barrand):
713   Changes in wroot, rroot in order to handle row wise ntuple in case of MT or MPI.
714   See History_tools for the complete list of modifications.
715 - Added rowWise option to G4RootAnalysisManager::SetNtupleMerging()
716 
717 October 19, 2017 I. Hrivnacova (analysis-V10-03-14)
718 - Fixed compiler warning in G4Hdf5FileManager.cc
719 
720 September 26, 2017 I. Hrivnacova (analysis-V10-03-13)
721 - Updated to g4tools 3.7.0 (Guy Barrand):
722   - Update in colorf, colors to make possible to use the tools/colors color
723     table in G4Colour class.
724   - Coverity fixes graphics/plotting code.
725   See History_tools for the complete list of modifications.
726 
727 September 11, 2017 I. Hrivnacova (analysis-V10-03-12)
728 - Fixed generating file name on workers (adding _tN extension).
729   (The problem was reported in analysis category in hypernews as item #537.)
730 
731 August 3, 2017 I. Hrivnacova (analysis-V10-03-11)
732 - Updated to g4tools 3.6.0 (Guy Barrand):
733   Fixing problems introduced in previous version.
734   See History_tools for the complete list of modifications.
735 
736 August 1, 2017 I. Hrivnacova (analysis-V10-03-09, 10)
737 - Several fixes in hdf5
738 - Updated to g4tools 3.5.0 (Guy Barrand):
739   Coverity fixes and test/cpp/hdf5_threads.cpp program.
740   See History_tools for the complete list of modifications.
741 
742 July 27, 2017 I. Hrivnacova (analysis-V10-03-08)
743 - Adding support for Hdf5
744 - Updated to g4tools 3.4.0 (Guy Barrand):
745   See History_tools for the complete list of modifications.
746 
747 July 21, 2017 I. Hrivnacova (analysis-V10-03-07)
748 - Updated to g4tools 3.3.0 (Guy Barrand):
749   Adding support for HDF5, improved tests.
750   See History_tools for the complete list of modifications.
751 
752 July 21, 2017 I. Hrivnacova (analysis-V10-03-06)
753 - Fixing remaining compilation warnings (gcc)
754 
755 July 21, 2017 I. Hrivnacova (analysis-V10-03-05)
756 - Fixing compilation warnings (gcc53)
757 
758 July 20, 2017 I. Hrivnacova (analysis-V10-03-04)
759 - Code improvements:
760   - Moved common implementation from G4V[R]NtupleManager in
761     new G4Base[R]NtupleManager classes
762   - Introduced G4TRNtupleDescription, G4TRNtupleManager template classes
763   - Always create an ntuple from ntuple booking (removed usage of
764     ntupel::create_column)
765   - Added an optional directoryName argument in Read[Hn][Pn][Ntuple]
766     functions in G4VAnalysisReader (needed for HDF5)
767 
768 April 12, 2017 I. Hrivnacova (analysis-V10-03-03)
769 - Corrected handling of open file failure
770   (This fixes problem report #1957.)
771 
772 March 14, 2017 I. Hrivnacova (analysis-V10-03-02)
773 - Added GetP[1,2]Id(const G4String&) functions to
774   the G4AnaysisManager public interface.
775   (This fixes problem report #1949.)
776 
777 March 03, 2017 I. Hrivnacova (analysis-V10-03-01)
778 - Fixed problem of removing non-empty ntuple files
779   in user application where ntuples are created after
780   open file.
781   (This mode is used in dna examples, eg. dnaphysics.)
782 
783 February 24, 2017 I. Hrivnacova (analysis-V10-03-00)
784 - Restored clean-up of Root empty files in MT mode
785   (which was lost with previous updates)
786 
787 November 17, 2016 I. Hrivnacova (analysis-V10-02-25)
788 - Fixed compiler warning issued when G4VERBOSE is not set.
789 - Updated to g4tools 2.3.0 (Guy Barrand):
790   Adding methods to tools/impi for passing ntuple data.
791   See History_tools for the complete list of modifications.
792 
793 November 03, 2016 I. Hrivnacova (analysis-V10-02-24)
794 - Updated to g4tools 2.2.0 (Guy Barrand):
795   Coverity fixes,
796   See History_tools for the complete list of modifications.
797 - Added prefix, postfix increment operators to G4Accumulable
798 
799 October 30, 2016 I. Hrivnacova (analysis-V10-02-23)
800 - Simplified G4RootAnalysisManager::GetNtupleFileNumber() to avoid using
801   G4Threading::GetNumberOfRunningWorkerThreads() which seems to be failing
802   on gcc and icc plaftorms
803 - Added temporary debug printing from this method
804 
805 October 28, 2016 I. Hrivnacova (analysis-V10-02-22)
806 - Merging ntuples in a selected number of output files
807 
808 October 24, 2016 I. Hrivnacova (analysis-V10-02-21)
809 - Set back not merging ntuples by default.
810 - Fixed resetting ntuples (which was failing in case when
811   a new file is written per event and ntuples are created
812   after file is open (examples/advanced/gammaray_telescope
813   use case).
814 
815 October 14, 2016 I. Hrivnacova (analysis-V10-02-20)
816 - Merging ntuples improvements:
817   - now working also when ntuples are booked after OpenFile (use case in AnaEx01)
818   - use directory if directory name is set
819   - added basketSize parameter in the SetNtupleMerging() public function
820 
821 October 10, 2016 I. Hrivnacova (analysis-V10-02-19)
822 - Do not merge ntuples by default.
823   Merging ntuples requires the application to call CreateNtuple both on master
824   and workers, what is not done in all examples.
825 
826 October 08, 2016 I. Hrivnacova (analysis-V10-02-18)
827 - Disabled code using the number of threads in G4RootAnalysisManager
828   untill this function is available in G4Threading;
829   user setting of numbert of reduced ntuple files is ignored.
830 
831 October 08, 2016 I. Hrivnacova (analysis-V10-02-17)
832 - Fixed case in included file name
833 
834 October 08, 2016 I. Hrivnacova (analysis-V10-02-16)
835 - Implemented merging of ntuples in MT mode:
836   - Added G4RootAnalysisManager::SetMerging(G4bool mergeNtuples, G4int nofReducedNtupleFile)
837   - Added G4RootPNtupleManager, G4RootMainNtupleManager classes
838 - Updated to g4tools 2.1.0 (Guy Barrand)
839   For parallel ntuple : handle properly the user std::vector for column of vector.
840   See History_tools for the complete list of modifications.
841 
842 October 3, 2016 I. Hrivnacova (analysis-V10-02-15)
843 - Removing dependencies of accumulables on other analysis categories
844 
845 October 3, 2016 G. Cosmo (analysis-V10-02-14)
846 - Fixed again GNUmakefile in "accumulables" module...
847 
848 September 30, 2016 I. Hrivnacova (analysis-V10-02-13)
849 - Updated to g4tools 2.0.0 (Guy Barrand)
850   Added parallel ntuple : on a same booked nutple, pass baskets from threads
851   or mpi ranks to a "main ntuple" tied to a file.
852   See History_tools for the complete list of modifications.
853 
854 September 27, 2016 G. Cosmo (analysis-V10-02-12)
855 - Fixed GNUmakefile in new "accumulables" module.
856 
857 September 26, 2016 I. Hrivnacova (analysis-V10-02-11)
858 - Renamed G4Parameter in G4Accumulable (as suggested in CM in Ferrara)
859   including all related classes and the subdirectory parameters
860   in accumulables
861 
862 September 8, 2016 I. Hrivnacova (analysis-V10-02-10)
863 - Enable creating/configurion profiles without cut values (vmin, vmax).
864   This feature was disabled by a check for the values in G4VAnalysisManager;
865   these values are now treated in a special way.
866 - Fixed duplicating Csv ntuple header
867 
868 September 6, 2016 I. Hrivnacova (analysis-V10-02-09)
869 - Fixed writing CSV profiles
870   (to be propagated in the patch to 10.2)
871 
872 July 4, 2016 I. Hrivnacova (analysis-V10-02-08)
873 - Adding missing inline keyword to functions defined in
874   G4ParameterManager.icc
875 
876 June 24, 2016 I. Hrivnacova (analysis-V10-02-07)
877 - Fixing compilation with gcc: added missing include <functional>
878 
879 June 23, 2016 I. Hrivnacova (analysis-V10-02-06)
880 - Extended and improved current implementation of parameters:
881   - The parameters names are optional
882   - Extended merge mode with kMaximum, kMinimum
883     and removed kUser (not needed anymore)
884   - Added access to paremeters via iterators and ids
885     (defined by the order of registering)
886   - Introduced G4MergeFunction<T> type and apply merging via a function
887     defined accorting to the merge mode
888     (thanks to Jonathan Madsen for providing an example of the code)
889 - Return 0. instead of 0 when the return type is double
890 - Return nullptr instead of 0
891 
892 June 7, 2016 I. Hrivnacova (analysis-V10-02-05)
893 - Updated to g4tools 1.27.4 (Guy Barrand):
894   Fixed remaining Windows-64 compiler warnings.
895   See History_tools for the complete list of modifications.
896 
897 June 3, 2016 I. Hrivnacova (analysis-V10-02-04)
898 - Updated to g4tools 1.27.3 (Guy Barrand):
899   Fixed Windows-64 compiler warnings.
900   See History_tools for the complete list of modifications.
901 
902 May 25, 2016 I. Hrivnacova (analysis-V10-02-03)
903 - Updated to g4tools 1.27.2 (Guy Barrand):
904   Fixed Mac OSX compiler warnings.
905 
906 May 4, 2016 I. Hrivnacova (analysis-V10-02-02)
907 - Updated to g4tools 1.27.1 (Guy Barrand):
908   Fixed gcc 6.1 compiler warnings.
909 
910 April 18, 2016 I. Hrivnacova (analysis-V10-02-01)
911 - Updated to g4tools 1.27.0 (Guy Barrand):
912   Fixed incompatibility with ROOT 5.x and 6.x formats reported in ROOT forum:
913   https://root.cern.ch/phpBB3/viewtopic.php?t=21315
914 
915 December 8, 2015 I. Hrivnacova (analysis-V10-02-00)
916 - Fixed definition of /analysis/ntuple command directory
917   which was created implicitly with the commands and so
918   defined without a guideline and not deleted
919 
920 November 25, 2015 I. Hrivnacova (analysis-V10-01-47)
921 - Adding GNUmakefile in parameters sub-category
922 
923 November 25, 2015 I. Hrivnacova (analysis-V10-01-46)
924 - Updated GNUmakefile for added parameters sub-category
925 
926 November 20, 2015 I. Hrivnacova (analysis-V10-01-45)
927 - Fix compiler warning about unused parameter 'size' observed on MacOS/clang
928   (Guy Barrand)
929 
930 November 6, 2015 I. Hrivnacova (analysis-V10-01-44)
931 - Fixed default viewer settings and finalized supported plotting
932   configurations:
933   - Updated to  g4tools 1.26.2 (G. Barrand):
934     - See History_tools for the complete list of modifications.
935   - Extended viewplot.cpp with a test which mimics usage in analysis category
936   - Set limits for layout parameters which can be changed via UI commands
937 
938 November 3, 2015 I. Hrivnacova (analysis-V10-00-46)
939 - Fixed handling ntuples created in MT mode on master thread
940   This fixes the problem reported in hypernews (#495) and the problem
941   of deleting non-empty Root file containing only ntuples.
942 
943 November 2, 2015 I. Hrivnacova (analysis-V10-01-43)
944 - Fixed G4Parameter constructor
945 
946 Oct 30, 2015 I. Hrivnacova (analysis-V10-01-42)
947 - Fixed handling ntuples created in MT mode on master thread
948   This fixes the problem reported in hypernews (#495) and the problem
949   of deleting non-empty Root file containing only ntuples.
950 
951 Oct 22, 2015 I. Hrivnacova (analysis-V10-01-41)
952 - Updated to g4tools 1.26.0 (Guy Barrand):
953   with added support for using freetype rendering in plotting
954   See History_tools for the complete list of modifications.
955 - Implemented support for freetype in G4PlotManager
956 - Added G4PlotParameters and G4PlotMessenger classes which
957   define the plot configuration parameters that can be set via UI
958   commands
959 - Removed unused include of G4PlotManager in hntools/src/G4ToolsAnalysisReader.cc
960 
961 Sep 23, 2015 I. Hrivnacova (analysis-V10-01-40)
962 - Fixed compiler warning
963 
964 Sep 23, 2015 I. Hrivnacova (analysis-V10-01-39)
965 - Added  G4AnalysisOutput type (as class enum) and
966   G4AnalysisManager functions needed to connect analysis to Geant4 scorers:
967     static G4bool IsInstance();
968     G4bool IsOpenFile() const;
969 - Two more minor fixes
970 
971 Sep 21, 2015 I. Hrivnacova (analysis-V10-01-38)
972 - Implemented setPlotting commands and added G4HnManager::SetPlotting() function
973   to set plotting to all objects
974 - Fixed false warning issued from G4TNtupleManager
975 - Fixed plotting in more pages
976 
977 Sep 18, 2015 I. Hrivnacova (analysis-V10-01-37)
978 - Fixed return value also in FillNtupleTColumn() in G4TNtupleManager.icc
979 
980 Sep 18, 2015 I. Hrivnacova (analysis-V10-01-36)
981 - Fixed return value in FillNtupleTColumn() in G4RootNtupleManager.hh
982 
983 Sep 18, 2015 I. Hrivnacova (analysis-V10-01-35)
984 - Updated to g4tools 1.24.2 (Guy Barrand):
985   - tools/wcsv_ntuple, tools/wroot/ntuple : have class icol public.
986   - tools/mpi/wrmpi : fixed use of TOOLS_USE_MPI_PACK_NOT_CONST
987   - See History_tools for the complete list of modifications.
988 - Use tools ntuple column base type (icol, iobj), which access is now enabled in tools,
989   to avoid casting to/from void* and type check in FillNtupleXColumn (where both column type and
990   column Id must be consistent with ntuple definition)
991 - Simplified definitions of G4TNtupleManager pure virtual functions
992 
993 Sep 16, 2015 I. Hrivnacova (analysis-V10-01-34)
994 - In G4TNtupleManager::FillNtupleTColumn:
995   changed Tvalue in const T& value to match exactlly with fill()
996   functions in tools
997 
998 Sep 15, 2015 I. Hrivnacova (analysis-V10-01-33)
999 - Do not delete ntuple with Root output type
1000 
1001 Sep 14, 2015 I. Hrivnacova (analysis-V10-01-32)
1002 - One more fix in G4RootNtupleManager - exact match of arguments in
1003   template specialization
1004 
1005 Sep 14, 2015 I. Hrivnacova (analysis-V10-01-31)
1006 - Added declaration for template specializations in G4RootNtupleManager.hh;
1007   Trying to fix vc12 compiler error:
1008   'none of the 5 overloads could convert all the argument types'
1009 
1010 Sep 14, 2015 I. Hrivnacova (analysis-V10-01-30)
1011 - Added scope G4Analysis:: to all calls to make_unique
1012   (to avoid ambiguity error on vc12 with std::make_unique )
1013 
1014 Sep 14, 2015 I. Hrivnacova (analysis-V10-01-29)
1015 - Replaced constexpr (not supported on vc12) with const definitions
1016 
1017 Sep 12, 2015 I. Hrivnacova (analysis-V10-01-28)
1018 - Removed G4CsvNtupleManager.icc file, not used
1019 
1020 Sep 11, 2015 I. Hrivnacova (analysis-V10-01-27)
1021 - Fixed compilation warnings about unused variables
1022 
1023 Sep 11, 2015 I. Hrivnacova (analysis-V10-01-26)
1024 - Fixed compilation with gcc 5.1:
1025   Added #include <memory> where missing
1026 
1027 Sep 11, 2015 I. Hrivnacova (analysis-V10-01-25)
1028 Merged developments from analysis_c++11 branch:
1029 - Introduced C++11 features
1030 - Added classes for common handling of tools objects
1031   to avoid code duplication:
1032   - G4ToolsAnalysisManager, ToolsAnalysisReader; G4THnAnalysisManager (templated)
1033   - Improved G4XNtupleManager classes:
1034     - Introduced template functions to avoid code duplication and added
1035       G4TNtupleManager class template with a common implementation
1036       for all output types
1037 - G4BaseToolsManager class replaced with G4Analysis namespace utility functions,
1038   defined in G4BaseHistoUtilies
1039 - Added new sub-category parameters
1040   with first implementation of G4ParameterManager (still to be finalized)
1041 
1042 Sep 03, 2015 I. Hrivnacova (analysis-V10-01-24)
1043 - Updated to g4tools 1.24.1 (Guy Barrand):
1044   Added ability to handle old MPI_[Pack,UnPack] signature;
1045   make whbook.cpp test compiling with tools in Geant4;
1046   Coverity fixes.
1047   See History_tools for the complete list of modifications.
1048 
1049 Aug 27, 2015 I. Hrivnacova (analysis-V10-01-23)
1050 - Removed profile directory; the profiles are put in the histograms directory,
1051   if its name is set by the user.
1052 
1053 Aug 17, 2015 I. Hrivnacova (analysis-V10-01-22)
1054 - Updated exception_classification:
1055   Added Analysis_W041: Requested feature is not available with selected output.
1056 
1057 Aug 12, 2015 I. Hrivnacova (analysis-V10-01-21)
1058 - Fixed parameter range in setAscii command
1059   (thanks to Mihaly Novak for reporting this problem)
1060 
1061 Jul 01, 2015 I. Hrivnacova (analysis-V10-01-20)
1062 - Updated to g4tools 1.23.1 (Guy Barrand):
1063   Finalize interfaces to MPI;
1064   prepare the ground for plot style files.
1065   See History_tools for the complete list of modifications.
1066 - Added G4VAnalysisManager::Merge(tools::histo::hmpi*)
1067   and G4MMPIToolsManager class which implements histogram & profiles
1068   MPI merging using tools/histo/hmpi interface
1069 
1070 Jun 23, 2015 I. Hrivnacova (analysis-V10-00-45)
1071 - Fixed G4Analysis::Tokenize() which was failing when processsing a string
1072   containing opening double quota without a closing one.
1073 
1074 Jun 23, 2015 I. Hrivnacova (analysis-V10-01-19)
1075 - Revised while loops and fixed G4Analysis::Tokenize()
1076 
1077 Jun 10, 2015 I. Hrivnacova (analysis-V10-01-18)
1078 - Make new functions SetNtupleSColumn() in G4VRNtupleManager
1079   pure virtual.
1080 
1081 Jun 03, 2015 I. Hrivnacova (analysis-V10-01-17)
1082 - Updated to g4tools 1.22.1 (Guy Barrand):
1083      Revisit structure for plotting related code.
1084      Added methods for writing multiple pages in a file.
1085 - Integrated changes in g4tools:
1086   generating a single plot file with multiple pages.
1087 
1088 Jun 03, 2015 I. Hrivnacova (analysis-V10-01-16)
1089 - Added functions for batch plotting:
1090   o to activate batch plotting of a selected hitsogram/profile:
1091     analysisManger->SetH1Plotting(id, true);
1092   o the output .ps file is then create on Write() call
1093     in addition to standard output files
1094   o Plotting available for  1D, 2D histograms
1095 - Updated to g4tools 1.21.0 (Guy Barrand):
1096      Revisit #include paths to avoid too much -I when compiling.
1097 
1098 May 19, 2015 I. Hrivnacova (analysis-V10-01-15)
1099  - Updated to g4tools 1.20.0 (Guy Barrand):
1100    Added "batch plotting" facility.
1101 
1102 May 6, 2015 I. Hrivnacova (analysis-V10-01-14)
1103  - Fixed command directory names and code clean-up.
1104 
1105 May 6, 2015 I. Hrivnacova (analysis-V10-01-13)
1106  - Attempt to fix a compilation error on Windows:
1107    replaced use of string operator [] with substr()
1108 
1109 May 6, 2015 I. Hrivnacova (analysis-V10-01-12)
1110  - Attempt to fix a compilation error on Windows.
1111 
1112 May 5, 2015 I. Hrivnacova (analysis-V10-01-11)
1113  - Implemented activation of ntuples
1114  - Implemented setX,Y,Z commands for setting histograms/profiles
1115    parameters per dimensiion. They can be used as an alternative to the
1116    complex set commands.
1117    Note: The parameters per dimensions have to be set sucessively; eg.
1118    /analysis/h2/setX ...
1119    /analysis/h2/setY ...
1120    Incomplete or ordre-reverted setting will result in issuing a warning
1121    and will be ignored.
1122  - Restructured messenger classes to avoid code duplications.
1123 
1124 May 3, 2015 I. Hrivnacova (analysis-V10-01-10)
1125  - Implemented support for ntuple vector columns with Csv output
1126  - Added Set/GetCompressionLevel() functions to G4AnalysisManager
1127    (used only with Root output) and changed its default value to 1 (was 9))
1128 
1129 April 14, 2015 I. Hrivnacova (analysis-V10-01-09)
1130  - Updated to g4tools 1.19.2 (Guy Barrand):
1131    Fixed compilation on Mac, clang 3.4.
1132    See History_tools for the complete list of modifications.
1133 
1134 April 13, 2015 I. Hrivnacova (analysis-V10-01-08)
1135  - Updated to g4tools 1.19.1 (Guy Barrand):
1136    csv: handle vector column if using the ntuple_booking way
1137    See History_tools for the complete list of modifications.
1138 
1139 April 9, 2015 I. Hrivnacova (analysis-V10-00-44)
1140   tag to be included in the patch release:
1141 - Updated to g4tools 1.17.2 (Guy Barrand):
1142   Changes for Windows (MinGW) - fixing problem #1721 (mainly to change
1143   #ifdef WIN32 to #ifdef _MSC_VER, which more clean)
1144 
1145 April 02, 2015 I. Hrivnacova (analysis-V10-01-07)
1146  - Updated to g4tools 1.19.0 (Guy Barrand):
1147    - Csv handles vector columns
1148    - Changes for Windows (MinGW) - fixing problem #1721 (mainly to change
1149      #ifdef WIN32 to #ifdef _MSC_VER, which more clean)
1150    - Various optimisations to be faster in converting numbers to strings
1151      (huge improvements with that around csv and xml tuples)
1152    - See History_tools for the complete list of modifications.
1153 
1154 March 18, 2015 I. Hrivnacova (analysis-V10-00-43)
1155   tag to be included in the patch release:
1156 - Fixed reading XML ntuples with a column of a vector type
1157   tools do not support direct use of ntuple_bindings with a vector,
1158   use of a temorary sub-ntuple is needed
1159 
1160 March 17, 2015 I. Hrivnacova (analysis-V10-01-06)
1161 - Fixed reading XML ntuples with a column of a vector type
1162   tools do not support direct use of ntuple_bindings with a vector,
1163   use of a temorary sub-ntuple is needed
1164 
1165 March 13, 2015 I. Hrivnacova (analysis-V10-01-05)
1166 - Fixed false warnings about unknown column type when an ntuple contains
1167   a column of a vector type and is created via ntuple booking
1168 
1169 March 13, 2015 I. Hrivnacova (analysis-V10-01-04)
1170 - Fixed G4AnalysisManager::IsActive() - now taken into all Hn & Pn
1171   managers
1172 
1173 March 13, 2015 I. Hrivnacova (analysis-V10-00-42)
1174   tag to be included in the patch release:
1175 - Fixed G4AnalysisManager::IsActive() - now taken into all Hn & Pn
1176   managers
1177 
1178 February 20, 2015 I. Hrivnacova (analysis-V10-01-03)
1179 - Updated to g4tools 1.18.2 (Guy Barrand):
1180   Added code to send/recv histos through MPI;
1181   see History_tools for the complete list of modifications.
1182 
1183 February 04, 2015 I. Hrivnacova (analysis-V10-01-02)
1184 - Updated to g4tools 1.17.1 (Guy Barrand):
1185   Fixed resetting histograms;
1186   see History_tools for the complete list of modifications.
1187 
1188 January 21, 2015 I. Hrivnacova (analysis-V10-01-01)
1189 - Updated to g4tools 1.17.0 (Guy Barrand):
1190   Fixes in the Root files output to be compatible with ROOT 6.02/x;
1191   see History_tools for the complete list of modifications.
1192 
1193 December 5, 2014 G. Cosmo (analysis-V10-01-00)
1194 - Corrected csv/sources.cmake to include missing file:
1195     G4CsvAnalysisReader.icc
1196 
1197 November 24, 2014 I. Hrivnacova (analysis-V10-00-41)
1198 - Fixed update to g4tools 1.16.3:
1199   the update of g4tools/src/csz_inflate.cc with Coverity fix
1200   was missing
1201 
1202 November 07, 2014 I. Hrivnacova (analysis-V09-06-33)
1203 - Fixed createH2/setH2 commands implementation
1204   (was missing in the previous tag V09-06-32)
1205 
1206 November 06, 2014 I. Hrivnacova (analysis-V10-00-40)
1207 - Fixed Coverity defect also in Csv, Root ntuple and Xml rntuple managers
1208 
1209 November 05, 2014 I. Hrivnacova (analysis-V10-00-39)
1210 - Fixed Coverity defect in G4XmlNtupleManager
1211 
1212 October 27, 2014 I. Hrivnacova (analysis-V10-00-38)
1213 - Revised (and simplified) numbering of warnings in exception messages
1214 
1215 October 25, 2014 I. Hrivnacova (analysis-V10-00-37)
1216 - Updated to g4tools 1.16.3 (by G. Barrand):
1217   Fixed problem with csv reading on windows;
1218   see History_tools for complete list of modifications.
1219 
1220 October 22, 2014 I. Hrivnacova (analysis-V10-00-36)
1221 - Updated to g4tools 1.16.2 (by G. Barrand):
1222   modifs for example code to read csv ntuple by using ntuple_binding
1223   see History_tools for complete list of modifications.
1224 - Added writing commented header (default) for csv ntuple
1225 - Implemented reading csv ntuples
1226 - Removed H1, H2, P1 dummy manager classes and H3, P3 moved in
1227   hbook implementation in examples
1228 - Use kInvalidId instead of -1
1229 - Added checks for ntupleId in RNtupleManager classes
1230 
1231 October 22, 2014 I. Hrivnacova (analysis-V10-00-35)
1232 - Fixed compiler warning in tools/wroot/leaf:
1233   base class tools::wroot::ibo should be explicitly initialized in the copy constructor
1234 
1235 October 21, 2014 I. Hrivnacova (analysis-V10-00-34)
1236 - Updated to g4tools 1.16.1 (by G. Barrand):
1237   Fixed reading root ntuple with column of std::string type
1238   by using ntuple_binding.
1239   see History_tools for complete list of modifications.
1240 
1241 October 20, 2014 I. Hrivnacova (analysis-V10-00-33)
1242 - Updated to g4tools 1.16.0 (by G. Barrand)
1243   Write/read ntuple with std::string columns,
1244   see History_tools for complete list of modifications.
1245 - Implemented reading H3 for Root (now supported in tools)
1246 - Added functions for handling ntuple columns of std::string type
1247 - Added an option to write the Hippo header in csv ntuple output
1248   (default true)
1249 
1250 October 13, 2014 I. Hrivnacova (analysis-V10-00-32)
1251 - Fixed variable initialization in G4CsvAnalysisReader
1252 
1253 October 13, 2014 I. Hrivnacova (analysis-V10-00-31)
1254 - Do not include G4CsvRNtupleManager, which is not yet commited.
1255 
1256 October 07, 2014 I. Hrivnacova (analysis-V10-00-30)
1257 - Implemented G4CsvAnalysisReader: reading all histograms and profiles;
1258   ntuples noy yet done
1259 - Updated to g4tools 1.15.2 (by G. Barrand)
1260   Fixed reading csv histograms and profiles (rcsv_histo)
1261 
1262 September 30, 2014 I. Hrivnacova (analysis-V10-00-29)
1263 - Updated to g4tools 1.15.1 (by G. Barrand)
1264   Fixed reading histograms with titles of more words;
1265   see History_tools for complete list of modifications.
1266 
1267 September 30, 2014 I. Hrivnacova (analysis-V10-00-28)
1268 - Updated to g4tools 1.15.0 (by G. Barrand)
1269   See History_tools for complete list of modifications.
1270 
1271 September 18, 2014 I. Hrivnacova (analysis-V10-00-27)
1272 - Fixed units in /analysis/[h|p]n/create and /analysis/[h|p]n/set
1273   commands
1274 
1275 September 12, 2014 G. Cosmo (analysis-V10-00-26)
1276 - Fixed xml/GNUmakefile to add missing dependency on expat, to
1277   cover cases when internal expat is used or for WIN32 builds.
1278 
1279 September 12, 2014 I. Hrivnacova (analysis-V10-00-25)
1280 - Fixes in XML reader:
1281   - Added expat includes and libraries in xml sources.cmake
1282   - Removed unused function from G4XmlAnalysisReader
1283 
1284 September 11, 2014 I. Hrivnacova (analysis-V10-00-24)
1285 - Adding histograms and profiles support in Csv
1286 - Finalized G4VAnalysisReader interface:
1287   - Added reading P1, P2, H3
1288   - Modifications to fit to all outputs
1289   - Support for both user defined file names and "generic" file names
1290     (generated automatically by G4AnalysisManager from the base name)
1291 - Introduced G4BaseFileManager and separated implementation for
1292   output/input file managers
1293 - Implemented reading P1, P2 in G4RootAnalysisReader;
1294   prepared code for H3 which reading is not yet available in tools
1295 - Implemented G4XmlAnalysisReader (complete)
1296 - Fixed writing ntuples when more than one ntuple is defined (Xml)
1297 - Do not overwrite user defined file extension
1298 
1299 September 08, 2014 I. Hrivnacova (analysis-V10-00-23)
1300 - Updated to g4tools 1.14.0 (by G. Barrand):
1301   Fixed compiler warning (converting to unsigned int from double)
1302 
1303 September 04, 2014 I. Hrivnacova (analysis-V10-00-22)
1304 - Updated to g4tools 1.14.0 (by G. Barrand):
1305   See History_tools for complete list of modifications.
1306 
1307 September 02, 2014 I. Hrivnacova (analysis-V10-00-21)
1308 - Fixed Coverity defects:
1309   - Initialization of data members in G4VAnalysisManager
1310   - Provided assignment operator for G4HnDimensionInformation
1311 - Removed unused data member in G4HnDimensionInformation
1312 
1313 July 28, 2014 I. Hrivnacova (analysis-V10-00-20)
1314 - Removed unsused data member in G4P1DummyManager
1315 
1316 July 24, 2014 I. Hrivnacova (analysis-V10-00-19)
1317 - Added H3, P1 and P2
1318 - Added G4BaseToolsManager - common implementation for
1319   setters/getters related to axes annotations
1320 - Fixed applying unit to min, max values in H1, H2 managers
1321 - Issue the warning about not supported histograms/profiles only once per run
1322 
1323 July 23, 2014 I. Hrivnacova (analysis-V10-00-18)
1324 - Updated to g4tools 1.11.1 (by G. Barrand):
1325   Fixed problem on Windows with including windows.h.
1326 
1327 July 23, 2014 I. Hrivnacova (analysis-V09-06-32)
1328 - Fixed applying unit to min, max values in H1, H2 managers
1329 - Fixed createH2/setH2 commands implementation
1330 
1331 July 18, 2014 I. Hrivnacova (analysis-V10-00-17)
1332 - Updated to g4tools 1.11.0 (by G. Barrand):
1333   See History_tools for complete list of modifications.
1334 
1335 July 02, 2014 I. Hrivnacova (analysis-V10-00-16)
1336 - Replaced use of std::cout with G4cout in Root managers
1337   (to fix data race reported by A. Dotti)
1338 
1339 June 27, 2014 G. Cosmo (analysis-V10-00-15)
1340 - Get rid of obsolete 'register' keyword in csz_inflate.cc..
1341 
1342 June 12, 2014 I. Hrivnacova (analysis-V10-00-14)
1343 - Added typedefs and functions for accessing iterators
1344   over H1, H2, Ntuples;
1345   Usage:
1346    G4AnalysisManager* analysisManager = G4AnalysisManager::Instance();
1347    for (G4H1Iterator it = analysisManager->BeginH1();
1348                      it != analysisManager->EndH1(); it++ ) {
1349       G4H1* h1 = *it;
1350       // call any h1 function define in tools
1351     }
1352 - Added G4AnalysisManager functions to access FirstIds
1353   G4int GetFirst[H1|H2|Ntuple|NtupleColumn]Id() const;
1354 
1355 June 11, 2014 I. Hrivnacova (analysis-V10-00-13)
1356 - Restored hbook files lost with moving to g4tools 1.9.4
1357 
1358 June 04, 2014 I. Hrivnacova (analysis-V10-00-12)
1359 - Udated History with the descriptions of the tags analysis-V09-06-*
1360   applied from the analysis_10-00-patches branch.
1361 
1362 June 03, 2014 I. Hrivnacova (analysis-V09-06-31)
1363 - Do not remove Root base file if ntuples are in use
1364   (this addresses problem report #1633)
1365 
1366 May 16, 2014 I. Hrivnacova (analysis-V10-00-11)
1367 - Fixed Coverity defects.
1368 - Updated to g4tools 1.10.0 (by G. Barrand):
1369   See History_tools for complete list of modifications.
1370 
1371 April 25, 2014 I. Hrivnacova (analysis-V10-00-10)
1372 April 25, 2014 I. Hrivnacova (analysis-V09-06-30)
1373 - Fixed implementation of compound commands in G4H[1,2,n]Messenger classes
1374   using new G4AnalysisUtilities::Tokenize() function.
1375   This allows to pass multi-word strings within "" and fixes problem report
1376   #1616.
1377 - Fixed G4H2ToolsManager::SetH2YAxisTitle: set title to y-axis and not x-axis.
1378   This addresses problem report #1620.
1379 
1380 April 16, 2014 I. Hrivnacova (analysis-V09-06-29)
1381 - Do not allow creating objects with empty names
1382   (this addresses problem report #1579)
1383 
1384 April 14, 2014 I. Hrivnacova (analysis-V10-00-09)
1385 - Use G4Threading::IsMultithreadedApplication() instead of
1386   G4AnalysisManagerState::IsMT() (now removed);
1387   this function fixes files clean-up at the end of sequential
1388   application built against multi-threaded Geant4 libraries.
1389 
1390 April 14, 2014 I. Hrivnacova (analysis-V10-00-08)
1391 - Do not allow creating objects with empty names
1392   (this addresses problem report #1579)
1393 - Introduced independent numbering of warnings from reader
1394 - Renamed g4tools/src/inflate.cc in csz_inflate.cc to avoid confusion with
1395   zlib inflate.cc
1396 
1397 April 10, 2014 G. Cosmo (analysis-V10-00-07)
1398 - Corrected organisation of source files in g4tools sub-module to
1399   allow for building with GNUmake system:
1400   o Moved g4tools/src/csz/inflate.c to g4tools/src and renamed to inflate.cc.
1401   o Corrected main GNUmakefile for build order.
1402 
1403 April 10, 2014 I. Hrivnacova (analysis-V10-00-06)
1404 - Fixed GNUmakefile (Gabriele)
1405 
1406 April 10, 2014 I. Hrivnacova (analysis-V10-00-05)
1407 - Updated to g4tools 1.9.4 (by G. Barrand):
1408   See History_tools for complete list of modifications.
1409 - Added interface classes for reading:
1410     G4VAnalysisReader, G4VRNtupleManager
1411   and their implementation for Root:
1412     G4RootAnalysisReader, G4RootRNtupleManager
1413 
1414 March 12, 2014 I. Hrivnacova (analysis-V09-06-28)
1415 March 11, 2014 I. Hrivnacova (analysis-V10-00-04)
1416 - Fixed H1, H2 functions to access xmin, xmax and width
1417   (do not apply function and unit to return values)
1418 
1419 March 10, 2014 I. Hrivnacova (analysis-V09-06-27)
1420 - Fixed bug in /analysis/h1/setAscii command
1421   (introduced with refactoring messenger classes in analysis-V09-06-19)
1422 
1423 March 05, 2014 I. Hrivnacova (analysis-V10-00-03)
1424 - Fixed bug in /analysis/h1/setAscii command
1425   (introduced with refactoring messenger classes in analysis-V09-06-19)
1426 
1427 February 05, 2014 I. Hrivnacova (analysis-V10-00-02)
1428 - Updated tools ntuple_booking and ntuple classes from
1429   g4tools 1.9.0 (by G. Barrand) what should hopefully fix warnings issued
1430   on x86_64-slc5-gcc41.
1431 
1432 February 04, 2014 I. Hrivnacova (analysis-V10-00-01)
1433 - Adding new functions for ntuple columns of vectors
1434   in G4AnalysisManer:
1435     // Create columns of vector in the last created ntuple
1436     G4int CreateNtupleTColumn(
1437                 const G4String& name, std::vector<int>& vector);
1438     G4int CreateNtupleTColumn(G4int ntupleId,
1439                 const G4String& name, std::vector<int>& vector);
1440           where T can be I, F, T
1441 - Updated to g4tools 1.8.0 (by G. Barrand)
1442   See History_tools for complete list of modifications.
1443 
1444 January 21, 2014 I. Hrivnacova (analysis-V10-00-00)
1445 January 21, 2014 I. Hrivnacova (analysis-V09-06-26)
1446 - Updated to g4tools 1.7.1 (by G. Barrand):
1447   Fixed performance issue observed for an ntuple with large numbers of columns
1448   reported in item #455 in Geant4 hypernews, Analysis category.
1449   See History_tools for complete list of modifications.
1450 
1451 October 02, 2013 I. Hrivnacova (analysis-V09-06-25)
1452 - Do not call WriteH1[2]() when no histograms are defined.
1453   This allows to run application which uses only ntuples without
1454   a master instance of analysis manager.
1455 
1456 September 30, 2013 I. Hrivnacova (analysis-V09-06-24)
1457 - Removed static G4AnalysisManager::Create(G4bool isMaster) function
1458   (the master/worker is now identified automatically)
1459 - Removed instances counter and its mutex
1460 - Reimplemented  G4AnalysisManagerState::IsMT() with use of
1461   G4Threading functions
1462 - Removed virtual declaration for GetH1, GetH2, GetNtuple functions
1463   in manager classes (to follow NVI pattern)
1464 - Fixed installing of g4analysis_defs.hh  header
1465 - Fixed g4csv.hh (it was overwritten by mistake with g4csv_defs.hh)
1466 - Fixed g4csv_defs.hh (G4Ntuple is the ntuple type, and not a pointer)
1467 
1468 September 17, 2013 I. Hrivnacova (analysis-V09-06-23)
1469 - Use thread Id (now available) in generating file names instead
1470   of thread Pid.
1471 
1472 September 02, 2013 I. Hrivnacova (analysis-V09-06-22)
1473 - Updated to g4tools 1.7.0 (by G. Barrand):
1474   Fixed problem report #1523 (incorrect setting the list of free blocks
1475   in the ROOT file).
1476   See History_tools for complete list of modifications.
1477 
1478 September 02, 2013 I. Hrivnacova (analysis-V09-06-21)
1479 - Fixed saving binScheme in H2 information
1480 
1481 August 26, 2013 I. Hrivnacova (analysis-V09-06-20)
1482 - Fixed Coverity defects
1483   (missing copy constructor and assignment operator in G4VH1Manager
1484    and G4VH2Manager)
1485 
1486 August 26, 2013 A.Dotti (analysis-V09-06-19)
1487 - New interface for functions in G4Threading.hh,
1488   now in G4Threading namespace
1489   And also (I. Hrivnacova):
1490 - Added a possibility to define logarithmic binning for H1 and H2
1491 - Reorganized messenger classes per objects: they are now associated
1492   with the public interface (G4VAnalysisManager)
1493 - Fixed path to g4tools in test/build
1494 
1495 August 1, 2013 I.Hrivnacova (analysis-V09-06-18)
1496 - Fixed CMake build (added missing *.icc files in HEADERS);
1497   thanks to Mike Kelsey for pointing at this.
1498 
1499 July 15, 2013 I.Hrivnacova (analysis-V09-06-17)
1500 - Added set_property(...GEANT4_BUILDTREE_INCLUDE_DIRS) in
1501   g4tools/CMakeLists.txt
1502 
1503 July 15, 2013 I.Hrivnacova (analysis-V09-06-16)
1504 - Added GLOBAL_DEPENDENCIES lists in sources.cmake files
1505 
1506 July 15, 2013 I.Hrivnacova (analysis-V09-06-15)
1507 - Fixed dependencies on zlib
1508   (previous tag failed on linking error on Mac)
1509 
1510 July 15, 2013 I.Hrivnacova (analysis-V09-06-14)
1511 - Introduced subdirectories:
1512   csv, g4tools, hntools, management, root, xml
1513   and updated CMake & GNUmake files accordingly
1514 
1515 July 12, 2013 I.Hrivnacova (analysis-V09-06-13)
1516 - Fixed warnings on clang:
1517   Use struct keyword instead of class for forward declaration of structs.
1518 
1519 July 11, 2013 I.Hrivnacova (analysis-V09-06-12)
1520 - Refactoring manager classes:
1521   - Introduced managers per object types (H1, H2, Ntuple, File)
1522     and re-implemented G4VAnalysisManager as a composite of the objects
1523     managers
1524   - Removed enum G4VAnalysisManager::ObjectType and replaced related methods
1525     with methods per object type; eg.
1526       void  SetActivation(ObjectType type,  G4int id, G4bool activation);
1527     with
1528       void  SetH1Activation(G4int id, G4bool activation);
1529       void  SetH2Activation(G4int id, G4bool activation);
1530 
1531 June 20, 2013 I.Hrivnacova (analysis-V09-06-11)
1532 - Fixed the problem in Root files clean-up (manifested in
1533   examples/advanced/microbeam):
1534   non-empty Root file was deleted when only ntuples and no histograms
1535   were booked and the application was built against MT Geant4 but run
1536   in sequential mode.
1537 
1538 June 11, 2013 I.Hrivnacova (analysis-V09-06-10)
1539 - Fixed deleting fNtuple in G4RootNtupleDescription
1540   (the ntuple is deleted with root file)
1541 
1542 June 03, 2013 I.Hrivnacova (analysis-V09-06-09)
1543 - Improved handling files: empty files are now removed in CloseFile()
1544 - Moved generation of file name in G4VAnalysisManager
1545 - Forced setting fIsMaster=true in sequential mode
1546 
1547 May 31, 2013 I.Hrivnacova (analysis-V09-06-08)
1548 - Fix in G4RootAnalysisManager::WriteOnAscii() - bug report #1473
1549 
1550 April 18, 2013 I.Hrivnacova (analysis-V09-06-07)
1551 - Manager classes updated for MT:
1552   Added fgMasterInstance, fIsMaster data members and functions for
1553   mergings histograms (Root, Xml) from worker tom master:
1554     void AddH1Vector(std::vector<tools::histo::h1d*>& h1Vector);
1555     void AddH2Vector(std::vector<tools::histo::h2d*>& h2Vector);
1556   These functions are automatically called on Worker::Write().
1557   Added ThreadId to ntuple file names when processing on workers.
1558 
1559 April 10, 2013 I.Hrivnacova (analysis-V09-06-06)
1560 - Updated to g4tools 1.6.0 (by G. Barrand) - see History_tools
1561 
1562 March 29, 2013 I.Hrivnacova (analysis-V09-06-05)
1563 - Extended analysis managers for handling more than one ntuple
1564 
1565 March 26, 2013 B.Morgan (analysis-V09-06-04)
1566 - source.cmake : Corrected zlib setup for transparent use of
1567   internal or external variants.
1568 
1569 March 22, 2013 G.Cosmo (analysis-V09-06-03)
1570 - Corrected GNUmakefile and CMakeLists.txt for zlib dependency.
1571 
1572 March 21, 2013 I.Hrivnacova (analysis-V09-06-02)
1573 - Updated CMakeList.txt for zlib dependencies
1574 
1575 March 21, 2013 I.Hrivnacova (analysis-V09-06-01)
1576 - Updated to g4tools 1.5.0 (by G. Barrand) - see History_tools
1577 - Adding file compression in Root manager (now available)
1578 - Adding use of zlib in GNUmakefile (needed for compression)
1579 
1580 December 17, 2012 I.Hrivnacova (analysis-V09-06-00)
1581 - Added 'svn:keywords' property to all files (except for tools)
1582 
1583 October 26, 2012 I.Hrivnacova (analysis-V09-05-15)
1584 - Updated to g4tools 1.4.3 (by G. Barrand) - see History_tools;
1585   includes bug correction for histo/h3::fill
1586 
1587 October 14, 2012 I.Hrivnacova (analysis-V09-05-14)
1588 - Adding function  G4VAnalysisManager::SetActivation(..)
1589   for setting activation to all histograms of one type
1590 - Adding commands to activate/inactivate 1D, 2D histograms
1591 - Fixed GetH1[2]Width: return the correct value also when histogram is
1592   inactive.
1593 
1594 October 10, 2012 I.Hrivnacova (analysis-V09-05-13)
1595 - Adding commands for handling h2d histograms.
1596 - Adding functions for accessing h1d, h2d by name
1597 - Splitting verbose level 1 in 2 levels and shifting the upper levels
1598 
1599 September 28, 2012 I.Hrivnacova (analysis-V09-05-12)
1600 - Fixed loops in G4Root/XmlAnalysisManager::WriteOnAscii;
1601   (causing compilation warning for shadowing)
1602 
1603 September 4, 2012 I.Hrivnacova (analysis-V09-05-11)
1604 - Adding missing header file in CMakeLists.txt
1605 
1606 August 28, 2012 I.Hrivnacova (analysis-V09-05-10)
1607 - Adding SetH2Title() in all managers
1608 - Minor fixes
1609 
1610 August 22, 2012 I.Hrivnacova (analysis-V09-05-09)
1611 - Updated to g4tools 1.4.1 (by G. Barrand) - see History_tools
1612 - Adding setters/getters for histogram axis titles
1613   and commands for setting histogram title and axis titles
1614 
1615 August 20, 2012 I.Hrivnacova (analysis-V09-05-08)
1616 - Updated to g4tools 1.3.2 (by G. Barrand) - see History_tools
1617 - Adding a possibility to fill h1, h2 with values with automatically
1618   applied function (eg. log10, exp)
1619 - Pass units via a name instead of value
1620 - Adding getters for many h1, h2 attributes
1621 - Adding ScaleH1(), ScaleH2()
1622 - Fixed warning in G4RootAnalysisManager when trying to fill inactivated
1623   histogram
1624 - Adding W013, W014 in exception classification
1625 
1626 July 27, 2012 I.Hrivnacova (analysis-V09-05-07)
1627 - Updated to g4tools 1.3.1 (by G. Barrand) - see History_tools
1628 - Messages from Fill functions only in verbose level 3
1629 - Fixes in memory management:
1630   delete file before opening a new one (all);
1631   delete ntuple before closing a file (csv, xml)
1632 
1633 July 25, 2012 I.Hrivnacova (analysis-V09-05-06)
1634 - Fix returned values in newly added functions for accessing additional
1635  information. (This fixes compiler warnings.)
1636 
1637 July 24, 2012 I.Hrivnacova (analysis-V09-05-05)
1638 - Fix CMake build once more - adding new source files in
1639   and dependence on G4intercoms library
1640 
1641 July 24, 2012 I.Hrivnacova (analysis-V09-05-04)
1642 - Fix CMake build - adding intercoms to include path
1643   (now needed for the messenger class)
1644 
1645 July 24, 2012 I.Hrivnacova (analysis-V09-05-03)
1646 - Updated to g4tools-1.3.0 (G. Barrand) - see History_tools
1647 - Adding an additional information to the analysis objects
1648   (defined in G4HnInformation.hh):
1649   units, activation, ascii output
1650 - Implemented a possibility to book histograms/ntuples
1651   before opening a file
1652 - Adding a messenger class allowing to configure file and directories
1653   names, verbosity level and histogram parameters interactively.
1654 
1655 June 5, 2012 I.Hrivnacova (analysis-V09-05-02)
1656 - Updated to g4tools-1.2.0 (G. Barrand) - see History_tools
1657 
1658 February 23, 2012 I.Hrivnacova (analysis-V09-05-01)
1659 - Adding locks for functions which define directory names,
1660   setting Ids etc. so that these parameters cannot be changed once
1661   they were used
1662 - Changed return type for the functions with locks to G4bool
1663 - Renamed FirstNtupleId data member and its setter to FirstNtupleColumnId
1664   to better reflect its meaning
1665 - Adding W009-W012 warning in exception_classification.txt
1666 
1667 February 14, 2012 I.Hrivnacova (analysis-V09-05-00)
1668 - Updated to g4tools-1.1.0 (G. Barrand) - see History_tools
1669 - Adding defs include files per manager type
1670 - Adding GetNtuple() function to specific managers
1671 - Adding GetType() function  to G4VAnalysisManager
1672 - Increased granularity of verbose levels (now 3 levels are available)
1673 - Adding test for result of openning file in Root manager
1674   (which was not provided in previous versions of g4tools)
1675 - Making creating directories optional
1676 
1677 November 30th 2011 B.Morgan (analysis-V09-04-15)
1678 - CMakeLists.txt : Updated to build G4analysis in granular as well as global
1679   mode.
1680 
1681 November 24 2001 I.Hrivnacova (analysis-V09-04-14)
1682 - Updated to g4tools-1.0.5 (G. Barrand):
1683   - wroot : streamers, buffer, wbuf, named :
1684             arrange to avoid the usage of the std::vector<>::data() method
1685             which is quite not portable for the moment.
1686  - remove the no more needed (and problematic) tools/vdata file.
1687 
1688 November 24 2001 I.Hrivnacova (analysis-V09-04-13)
1689 - tools/vdata: restored protection __GXX_EXPERIMENTAL_CXX0X__
1690   which got lost with update to  g4tools-1.0.4
1691 
1692 November 24 2001 I.Hrivnacova (analysis-V09-04-12)
1693 - Updated to g4tools-1.0.4 (G. Barrand):
1694   - Fix in tools/vdata:
1695     Adding a protection against an empty vector
1696 
1697 November 19 2001 I.Hrivnacova (analysis-V09-04-11)
1698 - Updated to g4tools-1.0.3 (G. Barrand):
1699   - Removed warning in CHBOOK/CHPWDF
1700   - Remove #ifdef WIN32 in wroot/date.
1701 
1702 November 8 2011 G.Cosmo (analysis-V09-04-10)
1703 - tools/vdata: restored protection __GXX_EXPERIMENTAL_CXX0X__ to use of
1704   std::vector<>::data() feature, to allow compilation on Leopard systems.
1705 
1706 October 27 2011 G.Cosmo (analysis-V09-04-09)
1707 - Added workaround to use 'this' pointer for internal calls in histo/b1,
1708   to allow for compilation on Xcode on MacOX Lion.
1709 
1710 October 18 2011 I.Hrivnacova (analysis-V09-04-08)
1711 - Fix in CMakeLists.txt - adding new G4AnalysisVerbose.* files
1712 
1713 October 17 2011 I.Hrivnacova (analysis-V09-04-07)
1714 - Added support for H2 histograms
1715 - Added verbose printing (for levels: 0,1,2)
1716 - Updated to g4tools-1.0.2 (G. Barrand):
1717   - Removed "inline" keyword for the methods having code implementation
1718     within classes. Dixit C++ docs, this kind of method is treated defacto
1719     as "inline". The keyword "inline" remains or for functions or for the
1720     few methods having their implementation outside the class.
1721   - Fixed some warnings (coming from Coverity or some specific version of g++)
1722     about the lacking of calling the copy constructor of an inherited interface
1723     in some copy constructors.
1724   - wroot/tree : have the streaming of the list of leaves. This permits to have
1725     the ROOT/TTree::Scan() method working when looking for a ntuple
1726     stored in a .root file as a TTree.
1727 
1728 September 15 2011 I.Hrivnacova (analysis-V09-04-06)
1729 - Added static access to specific manager classes.
1730 - Migration to G4Exception for all warning/error messages.
1731 
1732 August 4 2011 G.Cosmo (analysis-V09-04-05)
1733 - Extended fix in tools/vdata for compilation error on olders GCC compiler
1734   versions (MacOSX 10.5, SLC4, ...). Addressing problem report #1238.
1735 
1736 July 29 2011 G.Cosmo (analysis-V09-04-04)
1737 - Fix in tools/vdata for compilation error in Intel ICC compiler.
1738 
1739 July 28 2011 B.Morgan (analysis-V09-04-02)
1740 - Creating new tag because previous ones were not documented here!!
1741 
1742 July 28 2011 B.Morgan (analysis-V09-04-01.5)
1743 - CMakeLists.txt : Added to provide CMake build for G4Analysis. Implemented
1744   without using a sources.cmake because we only have one library, and tools
1745   headers need a specialized install to retain their nested structure.
1746 
1747 July 28 2011 G. Cosmo
1748 - Fix in tools/wroot/file to avoid gcc dependency error on WIN32 with CygWin.
1749 
1750 
1751 July 28, 2011 B.Morgan
1752 - Created History file for analysis module.