Geant4 Cross Reference (Editor's cut) |
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.