Commit 7a4dbb29 authored by Marco Clemencic's avatar Marco Clemencic
Browse files

Merge branch 'master' into dev/split-services

* master:
  Fixed bug #89682: Missing const methods in CommonMessaging
  Enforce the use of Boost Filesystem Version 3 also with Boost 1.44
  Temporarily disabled GaudiPoolDb (to be removed).
  Fixed bug #89653: Gaudi is not ready for Boost 1.48
  Fixed bug #89653: Gaudi is not ready for Boost 1.48 (filesystem V3)
  removed leftover from test
  Updated reference files after fix to bug #85377
  Fixed bug #85377: GaudiTuple tuple does not understand ulonglong

Conflicts:
	GaudiSvc/doc/release.notes

From: Marco Clemencic <marco.clemencic@cern.ch>


git-svn-id: svn+ssh://svn.cern.ch/reps/gaudi/Gaudi/branches/GAUDI/GAUDI_newpack@6721 53ecefc3-a64d-0410-9bdf-b8581fa3287e
parents d3e80d87 24778327
// $Id: Tuple.h,v 1.9 2008/10/27 19:22:20 marcocle Exp $
#ifndef GAUDIALG_TUPLE_H
#define GAUDIALG_TUPLE_H 1
// ============================================================================
......@@ -268,10 +267,8 @@ namespace Tuples
* const MCParticle* mcp = ... ;
* tuple << Tuples::Column( "MCP" , mcp ) ;
*
*
* @endcode
*
*
* @author Vanya BELYAEV Ivan.Belyaev@itep.ru
*/
template<class ITEM>
......
......@@ -102,12 +102,12 @@ namespace Tuples
virtual StatusCode Error
( const std::string& msg ,
const StatusCode sc = StatusCode::FAILURE ) const
{ m_handler1 ( name() + msg , sc ) ; return sc ; }
{ m_handler1 ( name() + " " + msg , sc ) ; return sc ; }
virtual StatusCode Warning
( const std::string& msg ,
const StatusCode sc = StatusCode::FAILURE ) const
{ m_handler2 ( name() + msg , sc ) ; return sc ; }
{ m_handler2 ( name() + " " + msg , sc ) ; return sc ; }
protected:
/// empty protected destructor
......
This diff is collapsed.
Package: GaudiAlg
Package manager : Marco Clemencic
! 2011-12-01 - Chris Jones
- Fixed bug #85377: GaudiTuple tuple does not undestand ulonglong
Update TupleObj to properly support different data types.
=============================== GaudiAlg v13r8 ===============================
! 2011-08-08 - Marco Clemencic
- Fixing bug #83775: unprotected MSG::DEBUG/VERBOSE
......
This diff is collapsed.
......@@ -68,10 +68,10 @@ void SequentialOutputStream::makeFilename()
if ( m_events % m_eventsPerFile != 0 ) return;
bf::path outputPath( m_outputName );
string filename = outputPath.filename();
string filename = outputPath.filename().string();
bf::path dir = outputPath.parent_path();
string stem = outputPath.stem();
string extension = outputPath.extension();
string stem = outputPath.stem().string();
string extension = outputPath.extension().string();
if ( !dir.empty() ) {
if ( !bf::exists( dir ) ) {
......@@ -80,14 +80,14 @@ void SequentialOutputStream::makeFilename()
throw GaudiException( stream.str(), "error", StatusCode::FAILURE );
}
}
if ( m_numericFilename ) {
if ( m_events == 0 ) {
try {
m_iFile = lexical_cast< unsigned int >( stem );
} catch( const bad_lexical_cast& /* cast */ ) {
stringstream stream;
stream << "Filename " << filename
stream << "Filename " << filename
<< " is not a number, which was needed.";
throw GaudiException( stream.str(), "error", StatusCode::FAILURE );
}
......
Package GaudiExamples
Package manager : Marco Clemencic
! 2011-12-01 - Chris Jones
- Fixed bug #85377: GaudiTuple tuple does not undestand ulonglong
Add some addition Tuple checks, for various data types.
! 2011-11-22 - Marco Clemencic
- Fixed gcc 4.6 warning (-Wunused-but-set-variable).
It was already present with ICC, but disabled.
......
......@@ -9,7 +9,7 @@
ApplicationMgr SUCCESS
====================================================================================================================================
Welcome to ApplicationMgr $Revision: 1.77 $
running on pclhcb55 on Wed Jan 6 17:20:11 2010
running on lxplus405.cern.ch on Fri Dec 2 09:33:17 2011
====================================================================================================================================
ApplicationMgr INFO Application Manager Configured successfully
ApplicationMgr INFO Successfully loaded modules : GaudiAlg, RootHistCnv
......@@ -27,13 +27,13 @@ ApplicationMgr INFO Application Manager Initialized successfully
ApplicationMgr INFO Application Manager Started successfully
EventPersistenc... INFO Added successfully Conversion service:PoolRootEvtCnvSvc
EventSelector INFO Stream:EventSelector.DataStreamTool_1 Def:DATAFILE='EvtColsEx.dst' TYP='POOL_ROOT' OPT='READ'
RootDBase.open SUCCESS EvtColsEx.dst File version:52600
RootDBase.open SUCCESS EvtColsEx.dst File version:52600
PoolRootEvtCnvSvc INFO No Records /FileRecords present in:3A00DD55-DFFA-DE11-B9B8-001320A397BC
RootDBase.open SUCCESS EvtColsEx.dst File version:53004
RootDBase.open SUCCESS EvtColsEx.dst File version:53004
PoolRootEvtCnvSvc INFO No Records /FileRecords present in:A04B4546-C01C-E111-9BE8-003048F0E7D6
EventSelector SUCCESS Reading Event record 1. Record number within stream 1: 1
EventPersistenc... INFO Added successfully Conversion service:PoolRootTreeEvtCnvSvc
IODataManager INFO Referring to dataset EvtTags1.root by its file ID:F0595F5F-DFFA-DE11-8D5C-001320A397BC
RootDBase.open SUCCESS EvtTags1.root File version:52600
IODataManager INFO Referring to dataset EvtTags1.root by its file ID:9820A749-C01C-E111-A94A-003048F0E7D6
RootDBase.open SUCCESS EvtTags1.root File version:53004
PoolDbDatabaseCnv INFO Recreate Database file:PFN:EvtTags1.root as /EVTTAGS
EventSelector SUCCESS Reading Event record 1001. Record number within stream 1: 1001
EventSelector SUCCESS Reading Event record 2001. Record number within stream 1: 2001
......@@ -47,14 +47,13 @@ EventSelector SUCCESS Reading Event record 9001. Record number within stream
ApplicationMgr INFO Application Manager Stopped successfully
Fill SUCCESS Booked 0 N-Tuples and 1 Event Tag Collections
Fill SUCCESS List of booked Event Tag Collections in directory "EVTTAGS/Fill"
Fill SUCCESS ID=COL1 Title="My trivial N-tuple" #items=9 {Address,evtNum,runNum,gauss,flat,expo,poisson,binom,flag} Items:{ 'Address' : 'IOpaqueAddress*' , 'binom' : 'L' , 'evtNum' : 'L' , 'expo' : 'F' , 'flag' : 'L' , 'flat' : 'F' , 'gauss' : 'F' , 'poisson' : 'L' , 'runNum' : 'L' }
Fill SUCCESS ID=COL1 Title="My trivial N-tuple" #items=9 {Address,evtNum,runNum,gauss,flat,expo,poisson,binom,flag} Items:{ 'Address' : 'IOpaqueAddress*' , 'binom' : 'I' , 'evtNum' : 'I' , 'expo' : 'D' , 'flag' : 'I' , 'flat' : 'D' , 'gauss' : 'D' , 'poisson' : 'I' , 'runNum' : 'I' }
RootHistSvc WARNING no ROOT output file name, Histograms cannot be persistified
EventLoopMgr INFO Histograms converted successfully according to request.
ToolSvc INFO Removing all tools created by ToolSvc
EvtTupleSvc INFO NTuples saved successfully
EvtTupleSvc.EVT... INFO Disconnected data IO:F0595F5F-DFFA-DE11-8D5C-001320A397BC[EvtTags1.root]
EvtTupleSvc.EVT... INFO Disconnected data IO:9820A749-C01C-E111-A94A-003048F0E7D6[EvtTags1.root]
FileRecordCnvSvc INFO File sharing enabled. Do not retire files.
PoolRootEvtCnvSvc INFO Disconnected data IO:3A00DD55-DFFA-DE11-B9B8-001320A397BC[EvtColsEx.dst]
XMLCatalog INFO File 'test_catalog.xml' does not exist. New file created.
PoolRootEvtCnvSvc INFO Disconnected data IO:A04B4546-C01C-E111-9BE8-003048F0E7D6[EvtColsEx.dst]
ApplicationMgr INFO Application Manager Finalized successfully
ApplicationMgr INFO Application Manager Terminated successfully
......@@ -33,7 +33,7 @@ JobOptionsSvc INFO Job options successfully read in from /afs/cern.ch/use
ApplicationMgr SUCCESS
====================================================================================================================================
Welcome to ApplicationMgr $Revision: 1.77 $
running on lxplus435.cern.ch on Fri Aug 26 11:31:17 2011
running on lxplus405.cern.ch on Fri Dec 2 09:33:24 2011
====================================================================================================================================
ApplicationMgr INFO Application Manager Configured successfully
RndmGenSvc.Engine INFO Generator engine type:CLHEP::RanluxEngine
......@@ -106,12 +106,12 @@ EventPersistenc... INFO Added successfully Conversion service:PoolRootEvtCnvSv
EventSelector INFO Stream:EventSelector.DataStreamTool_1 Def:DATAFILE='PFN:EvtColsEx.dst' TYP='POOL_ROOT' OPT='READ'
ApplicationMgr INFO Application Manager Initialized successfully
ApplicationMgr INFO Application Manager Started successfully
RootDBase.open SUCCESS EvtColsEx.dst File version:53000
PoolRootEvtCnvSvc INFO No Records /FileRecords present in:CC54021E-C6CF-E011-A609-003048F0E7C4
RootDBase.open SUCCESS EvtColsEx.dst File version:53004
PoolRootEvtCnvSvc INFO No Records /FileRecords present in:A04B4546-C01C-E111-9BE8-003048F0E7D6
EventSelector SUCCESS Reading Event record 1. Record number within stream 1: 1
EventPersistenc... INFO Added successfully Conversion service:PoolRootTreeEvtCnvSvc
IODataManager INFO Referring to dataset EvtColsEx.tags by its file ID:7A0E1E27-C6CF-E011-BD9F-003048F0E7C4
RootDBase.open SUCCESS EvtColsEx.tags File version:53000
IODataManager INFO Referring to dataset EvtColsEx.tags by its file ID:024A834D-C01C-E111-B6C7-003048F0E7D6
RootDBase.open SUCCESS EvtColsEx.tags File version:53004
PoolDbDatabaseCnv INFO Recreate Database file:PFN:EvtColsEx.tags as /EVTCOLS
EventSelector SUCCESS Reading Event record 1001. Record number within stream 1: 1001
EventSelector SUCCESS Reading Event record 2001. Record number within stream 1: 2001
......@@ -166,12 +166,12 @@ EventLoopMgr INFO No more events in event selection
ApplicationMgr INFO Application Manager Stopped successfully
Fill SUCCESS Booked 0 N-Tuples and 1 Event Tag Collections
Fill SUCCESS List of booked Event Tag Collections in directory "EVTCOLS/Fill"
Fill SUCCESS ID=COL1 Title="The most trivial Event Tag Collection" #items=10 {Address,evtNum,runNum,gauss,flat,expo,breit,poisson,binom,flag} Items:{ 'Address' : 'IOpaqueAddress*' , 'binom' : 'L' , 'breit' : 'F' , 'evtNum' : 'L' , 'expo' : 'F' , 'flag' : 'L' , 'flat' : 'F' , 'gauss' : 'F' , 'poisson' : 'L' , 'runNum' : 'L' }
Fill SUCCESS ID=COL1 Title="The most trivial Event Tag Collection" #items=10 {Address,evtNum,runNum,gauss,flat,expo,breit,poisson,binom,flag} Items:{ 'Address' : 'IOpaqueAddress*' , 'binom' : 'I' , 'breit' : 'D' , 'evtNum' : 'I' , 'expo' : 'D' , 'flag' : 'I' , 'flat' : 'D' , 'gauss' : 'D' , 'poisson' : 'I' , 'runNum' : 'I' }
EventLoopMgr INFO Histograms converted successfully according to request.
ToolSvc INFO Removing all tools created by ToolSvc
EvtTupleSvc INFO NTuples saved successfully
EvtTupleSvc.EVT... INFO Disconnected data IO:7A0E1E27-C6CF-E011-BD9F-003048F0E7C4[EvtColsEx.tags]
EvtTupleSvc.EVT... INFO Disconnected data IO:024A834D-C01C-E111-B6C7-003048F0E7D6[EvtColsEx.tags]
FileRecordCnvSvc INFO File sharing enabled. Do not retire files.
PoolRootEvtCnvSvc INFO Disconnected data IO:CC54021E-C6CF-E011-A609-003048F0E7C4[EvtColsEx.dst]
PoolRootEvtCnvSvc INFO Disconnected data IO:A04B4546-C01C-E111-9BE8-003048F0E7D6[EvtColsEx.dst]
ApplicationMgr INFO Application Manager Finalized successfully
ApplicationMgr INFO Application Manager Terminated successfully
......@@ -37,7 +37,7 @@ JobOptionsSvc INFO Job options successfully read in from /afs/cern.ch/use
ApplicationMgr SUCCESS
====================================================================================================================================
Welcome to ApplicationMgr $Revision: 1.77 $
running on lxplus435.cern.ch on Fri Aug 26 11:32:07 2011
running on lxplus405.cern.ch on Fri Dec 2 09:34:16 2011
====================================================================================================================================
ApplicationMgr INFO Application Manager Configured successfully
EvtTupleSvc INFO Added stream file:PFN:POOLIO.etags as EXTEVT
......@@ -112,12 +112,12 @@ EventPersistenc... INFO Added successfully Conversion service:PoolRootEvtCnvSv
EventSelector INFO Stream:EventSelector.DataStreamTool_1 Def:DATAFILE='PFN:POOLIO.dst' TYP='POOL_ROOT' OPT='READ'
ApplicationMgr INFO Application Manager Initialized successfully
ApplicationMgr INFO Application Manager Started successfully
RootDBase.open SUCCESS POOLIO.dst File version:53000
PoolRootEvtCnvSvc INFO Records token:[DB=E6B20340-C6CF-E011-81AD-003048F0E7C4][CNT=/FileRecords][CLID=00000001-0000-0000-0000-000000000000][TECH=00000202][OID=0000000A-00000000]
RootDBase.open SUCCESS POOLIO.dst File version:53004
PoolRootEvtCnvSvc INFO Records token:[DB=D0388A66-C01C-E111-BBB8-003048F0E7D6][CNT=/FileRecords][CLID=00000001-0000-0000-0000-000000000000][TECH=00000202][OID=0000000A-00000000]
EventSelector SUCCESS Reading Event record 1. Record number within stream 1: 1
EventPersistenc... INFO Added successfully Conversion service:PoolRootTreeEvtCnvSvc
IODataManager INFO Referring to dataset POOLIO.etags by its file ID:DA654345-C6CF-E011-83ED-003048F0E7C4
RootDBase.open SUCCESS POOLIO.etags File version:53000
IODataManager INFO Referring to dataset POOLIO.etags by its file ID:64A7D66C-C01C-E111-B908-003048F0E7D6
RootDBase.open SUCCESS POOLIO.etags File version:53004
PoolDbDatabaseCnv INFO Recreate Database file:PFN:POOLIO.etags as /EXTEVT
EventSelector SUCCESS Reading Event record 101. Record number within stream 1: 101
EventSelector SUCCESS Reading Event record 201. Record number within stream 1: 201
......@@ -129,8 +129,8 @@ EventSelector SUCCESS Reading Event record 701. Record number within stream
EventSelector SUCCESS Reading Event record 801. Record number within stream 1: 801
EventSelector SUCCESS Reading Event record 901. Record number within stream 1: 901
EventSelector INFO Stream:EventSelector.DataStreamTool_2 Def:DATAFILE='PFN:POOLIO.mdst' TYP='POOL_ROOT' OPT='READ'
RootDBase.open SUCCESS POOLIO.mdst File version:53000
PoolRootEvtCnvSvc INFO No Records /FileRecords present in:18A41C40-C6CF-E011-81AD-003048F0E7C4
RootDBase.open SUCCESS POOLIO.mdst File version:53004
PoolRootEvtCnvSvc INFO No Records /FileRecords present in:B0DBCF66-C01C-E111-BBB8-003048F0E7D6
EventSelector SUCCESS Reading Event record 1001. Record number within stream 2: 1
EventSelector SUCCESS Reading Event record 1101. Record number within stream 2: 101
EventSelector SUCCESS Reading Event record 1201. Record number within stream 2: 201
......@@ -145,14 +145,14 @@ EventLoopMgr INFO No more events in event selection
ApplicationMgr INFO Application Manager Stopped successfully
Fill SUCCESS Booked 0 N-Tuples and 1 Event Tag Collections
Fill SUCCESS List of booked Event Tag Collections in directory "EXTEVT/Fill"
Fill SUCCESS ID=MyCOL1 Title="Trivial Event Tag Collection" #items=8 {Address,Ntrack,TrkMom[1]/V,px[1]/V,py[1]/V,pz[1]/V,Energy,Track} Items:{ 'Address' : 'IOpaqueAddress*' , 'Energy' : 'F' , 'Ntrack' : 'L' , 'Track' : 'Gaudi::Examples::MyTrack*' , 'TrkMom' : 'FArray' , 'px' : 'FArray' , 'py' : 'FArray' , 'pz' : 'FArray' }
Fill SUCCESS ID=MyCOL1 Title="Trivial Event Tag Collection" #items=8 {Address,Ntrack,TrkMom[1]/V,px[1]/V,py[1]/V,pz[1]/V,Energy,Track} Items:{ 'Address' : 'IOpaqueAddress*' , 'Energy' : 'D' , 'Ntrack' : 'I' , 'Track' : 'Gaudi::Examples::MyTrack*' , 'TrkMom' : 'FArray' , 'px' : 'FArray' , 'py' : 'FArray' , 'pz' : 'FArray' }
EventLoopMgr INFO Histograms converted successfully according to request.
ToolSvc INFO Removing all tools created by ToolSvc
EvtTupleSvc INFO NTuples saved successfully
EvtTupleSvc.EXTEVT INFO Disconnected data IO:DA654345-C6CF-E011-83ED-003048F0E7C4[POOLIO.etags]
EvtTupleSvc.EXTEVT INFO Disconnected data IO:64A7D66C-C01C-E111-B908-003048F0E7D6[POOLIO.etags]
FileRecordCnvSvc INFO File sharing enabled. Do not retire files.
PoolRootEvtCnvSvc INFO Disconnected data IO:18A41C40-C6CF-E011-81AD-003048F0E7C4[POOLIO.mdst]
PoolRootEvtCnvSvc INFO Disconnected data IO:E6B20340-C6CF-E011-81AD-003048F0E7C4[POOLIO.dst]
PoolRootEvtCnvSvc INFO Disconnected data IO:B0DBCF66-C01C-E111-BBB8-003048F0E7D6[POOLIO.mdst]
PoolRootEvtCnvSvc INFO Disconnected data IO:D0388A66-C01C-E111-BBB8-003048F0E7D6[POOLIO.dst]
ApplicationMgr INFO Application Manager Finalized successfully
ApplicationMgr INFO Application Manager Terminated successfully
Number of MyTrack instances:18
......@@ -8,8 +8,8 @@
ApplicationMgr SUCCESS
====================================================================================================================================
Welcome to ApplicationMgr $Revision: 1.27 $
running on pclhcb55.cern.ch on Fri May 30 20:40:29 2008
Welcome to ApplicationMgr $Revision: 1.77 $
running on lxplus405.cern.ch on Fri Dec 2 09:35:13 2011
====================================================================================================================================
ApplicationMgr INFO Application Manager Configured successfully
ApplicationMgr INFO Successfully loaded modules : GaudiAlg, RootHistCnv
......@@ -36,24 +36,24 @@ RFileCnv INFO dumping contents of /NTUPLES/MYLUN
TFile: name=TupleEx.root, title=Gaudi Trees, option=CREATE
******************************************************************************
*Tree :My trivial N-tuple: My trivial N-tuple *
*Entries : 2000 : Total = 34867 bytes File Size = 9473 *
* : : Tree compression factor = 1.00 *
*Entries : 2000 : Total = 66621 bytes File Size = 13586 *
* : : Tree compression factor = 4.93 *
******************************************************************************
*Br 0 :a : a/F *
*Entries : 2000 : Total Size= 8630 bytes One basket in memory *
*Baskets : 0 : Basket Size= 32000 bytes Compression= 1.00 *
*Br 0 :a : a/D *
*Entries : 2000 : Total Size= 16556 bytes File Size = 1077 *
*Baskets : 1 : Basket Size= 32000 bytes Compression= 14.93 *
*............................................................................*
*Br 1 :b : b/F *
*Entries : 2000 : Total Size= 8630 bytes One basket in memory *
*Baskets : 0 : Basket Size= 32000 bytes Compression= 1.00 *
*Br 1 :b : b/D *
*Entries : 2000 : Total Size= 16556 bytes File Size = 1066 *
*Baskets : 1 : Basket Size= 32000 bytes Compression= 15.09 *
*............................................................................*
*Br 2 :c : c/F *
*Entries : 2000 : Total Size= 8630 bytes One basket in memory *
*Baskets : 0 : Basket Size= 32000 bytes Compression= 1.00 *
*Br 2 :c : c/D *
*Entries : 2000 : Total Size= 16556 bytes File Size = 1087 *
*Baskets : 1 : Basket Size= 32000 bytes Compression= 14.79 *
*............................................................................*
*Br 3 :g : g/F *
*Entries : 2000 : Total Size= 8630 bytes One basket in memory *
*Baskets : 0 : Basket Size= 32000 bytes Compression= 1.00 *
*Br 3 :g : g/D *
*Entries : 2000 : Total Size= 16556 bytes File Size = 9817 *
*Baskets : 1 : Basket Size= 32000 bytes Compression= 1.64 *
*............................................................................*
NTupleSvc INFO NTuples saved successfully
ApplicationMgr INFO Application Manager Finalized successfully
......
This diff is collapsed.
......@@ -8,8 +8,8 @@
ApplicationMgr SUCCESS
====================================================================================================================================
Welcome to ApplicationMgr $Revision: 1.26 $
running on pclhcb55.cern.ch on Fri May 30 20:40:07 2008
Welcome to ApplicationMgr $Revision: 1.77 $
running on lxplus405.cern.ch on Fri Dec 2 09:34:57 2011
====================================================================================================================================
ApplicationMgr INFO Application Manager Configured successfully
ApplicationMgr INFO Successfully loaded modules : GaudiAlg, RootHistCnv
......@@ -25,10 +25,10 @@ RndmGenSvc.Engine INFO Generator engine type:CLHEP::RanluxEngine
RndmGenSvc.Engine INFO Current Seed:1234567 Luxury:3
RndmGenSvc INFO Using Random engine:HepRndm::Engine<CLHEP::RanluxEngine>
RFileCnv INFO opening Root file "TupleEx1.root" for writing
RRWNTupleCnv INFO ID 1: added branch: gauss / gauss/F
RRWNTupleCnv INFO ID 1: added branch: flat / flat/F
RRWNTupleCnv INFO ID 1: added branch: expo / expo/F
RRWNTupleCnv INFO ID 1: added branch: breit / breit/F
RRWNTupleCnv INFO ID 1: added branch: gauss / gauss/D
RRWNTupleCnv INFO ID 1: added branch: flat / flat/D
RRWNTupleCnv INFO ID 1: added branch: expo / expo/D
RRWNTupleCnv INFO ID 1: added branch: breit / breit/D
RRWNTupleCnv INFO ID 1: added branch: poiss / poiss/I
RRWNTupleCnv INFO ID 1: added branch: binom / binom/I
RRWNTupleCnv INFO ID 1: added branch: poisb / poisb/I
......@@ -47,90 +47,90 @@ RFileCnv INFO dumping contents of /NTUPLES/MYLUN
TFile: name=TupleEx1.root, title=Gaudi Trees, option=CREATE
******************************************************************************
*Tree :1 : Trivial Row-Wise Tuple *
*Entries : 20 : Total = 5207 bytes File Size = 1234 *
* : : Tree compression factor = 1.00 *
*Entries : 20 : Total = 5152 bytes File Size = 1999 *
* : : Tree compression factor = 1.11 *
******************************************************************************
*Br 0 :gauss : gauss/F *
*Entries : 20 : Total Size= 700 bytes One basket in memory *
*Baskets : 0 : Basket Size= 32000 bytes Compression= 1.00 *
*Br 0 :gauss : gauss/D *
*Entries : 20 : Total Size= 719 bytes File Size = 212 *
*Baskets : 1 : Basket Size= 32000 bytes Compression= 1.08 *
*............................................................................*
*Br 1 :flat : flat/F *
*Entries : 20 : Total Size= 694 bytes One basket in memory *
*Baskets : 0 : Basket Size= 32000 bytes Compression= 1.00 *
*Br 1 :flat : flat/D *
*Entries : 20 : Total Size= 714 bytes File Size = 207 *
*Baskets : 1 : Basket Size= 32000 bytes Compression= 1.10 *
*............................................................................*
*Br 2 :expo : expo/F *
*Entries : 20 : Total Size= 694 bytes One basket in memory *
*Baskets : 0 : Basket Size= 32000 bytes Compression= 1.00 *
*Br 2 :expo : expo/D *
*Entries : 20 : Total Size= 714 bytes File Size = 228 *
*Baskets : 1 : Basket Size= 32000 bytes Compression= 1.00 *
*............................................................................*
*Br 3 :breit : breit/F *
*Entries : 20 : Total Size= 700 bytes One basket in memory *
*Baskets : 0 : Basket Size= 32000 bytes Compression= 1.00 *
*Br 3 :breit : breit/D *
*Entries : 20 : Total Size= 719 bytes File Size = 229 *
*Baskets : 1 : Basket Size= 32000 bytes Compression= 1.00 *
*............................................................................*
*Br 4 :poiss : poiss/I *
*Entries : 20 : Total Size= 700 bytes One basket in memory *
*Baskets : 0 : Basket Size= 32000 bytes Compression= 1.00 *
*Entries : 20 : Total Size= 631 bytes File Size = 121 *
*Baskets : 1 : Basket Size= 32000 bytes Compression= 1.23 *
*............................................................................*
*Br 5 :binom : binom/I *
*Entries : 20 : Total Size= 700 bytes One basket in memory *
*Baskets : 0 : Basket Size= 32000 bytes Compression= 1.00 *
*Entries : 20 : Total Size= 631 bytes File Size = 118 *
*Baskets : 1 : Basket Size= 32000 bytes Compression= 1.26 *
*............................................................................*
*Br 6 :poisb : poisb/I *
*Entries : 20 : Total Size= 700 bytes One basket in memory *
*Baskets : 0 : Basket Size= 32000 bytes Compression= 1.00 *
*Entries : 20 : Total Size= 631 bytes File Size = 112 *
*Baskets : 1 : Basket Size= 32000 bytes Compression= 1.33 *
*............................................................................*
******************************************************************************
*Tree :2 : Trivial Column-Wise Tuple *
*Entries : 20 : Total = 5213 bytes File Size = 1242 *
* : : Tree compression factor = 1.00 *
*Entries : 20 : Total = 5158 bytes File Size = 1995 *
* : : Tree compression factor = 1.12 *
******************************************************************************
*Br 0 :gauss : gauss/F *
*Entries : 20 : Total Size= 700 bytes One basket in memory *
*Baskets : 0 : Basket Size= 32000 bytes Compression= 1.00 *
*Br 0 :gauss : gauss/D *
*Entries : 20 : Total Size= 719 bytes File Size = 213 *
*Baskets : 1 : Basket Size= 32000 bytes Compression= 1.08 *
*............................................................................*
*Br 1 :flat : flat/F *
*Entries : 20 : Total Size= 694 bytes One basket in memory *
*Baskets : 0 : Basket Size= 32000 bytes Compression= 1.00 *
*Br 1 :flat : flat/D *
*Entries : 20 : Total Size= 714 bytes File Size = 204 *
*Baskets : 1 : Basket Size= 32000 bytes Compression= 1.12 *
*............................................................................*
*Br 2 :expo : expo/F *
*Entries : 20 : Total Size= 694 bytes One basket in memory *
*Baskets : 0 : Basket Size= 32000 bytes Compression= 1.00 *
*Br 2 :expo : expo/D *
*Entries : 20 : Total Size= 714 bytes File Size = 228 *
*Baskets : 1 : Basket Size= 32000 bytes Compression= 1.00 *
*............................................................................*
*Br 3 :breit : breit/F *
*Entries : 20 : Total Size= 700 bytes One basket in memory *
*Baskets : 0 : Basket Size= 32000 bytes Compression= 1.00 *
*Br 3 :breit : breit/D *
*Entries : 20 : Total Size= 719 bytes File Size = 229 *
*Baskets : 1 : Basket Size= 32000 bytes Compression= 1.00 *
*............................................................................*
*Br 4 :poiss : poiss/I *
*Entries : 20 : Total Size= 700 bytes One basket in memory *
*Baskets : 0 : Basket Size= 32000 bytes Compression= 1.00 *
*Entries : 20 : Total Size= 631 bytes File Size = 119 *
*Baskets : 1 : Basket Size= 32000 bytes Compression= 1.25 *
*............................................................................*
*Br 5 :binom : binom/I *
*Entries : 20 : Total Size= 700 bytes One basket in memory *
*Baskets : 0 : Basket Size= 32000 bytes Compression= 1.00 *
*Entries : 20 : Total Size= 631 bytes File Size = 122 *
*Baskets : 1 : Basket Size= 32000 bytes Compression= 1.22 *
*............................................................................*
*Br 6 :poisb : poisb/I *
*Entries : 20 : Total Size= 700 bytes One basket in memory *
*Baskets : 0 : Basket Size= 32000 bytes Compression= 1.00 *
*Entries : 20 : Total Size= 631 bytes File Size = 103 *
*Baskets : 1 : Basket Size= 32000 bytes Compression= 1.45 *
*............................................................................*
******************************************************************************
*Tree :3 : Fixed-size arrays/vectors *
*Entries : 20 : Total = 18537 bytes File Size = 15520 *
* : : Tree compression factor = 1.00 *
*Entries : 20 : Total = 18308 bytes File Size = 15492 *
* : : Tree compression factor = 1.07 *
******************************************************************************
*Br 0 :arflat : arflat[50]/F *
*Entries : 20 : Total Size= 4634 bytes One basket in memory *
*Baskets : 0 : Basket Size= 32000 bytes Compression= 1.00 *
*Entries : 20 : Total Size= 4564 bytes File Size = 3806 *
*Baskets : 1 : Basket Size= 32000 bytes Compression= 1.07 *
*............................................................................*
*Br 1 :arexpo : arexpo[62]/F *
*Entries : 20 : Total Size= 5594 bytes One basket in memory *
*Baskets : 0 : Basket Size= 32000 bytes Compression= 1.00 *
*Entries : 20 : Total Size= 5524 bytes File Size = 4596 *
*Baskets : 1 : Basket Size= 32000 bytes Compression= 1.09 *
*............................................................................*
*Br 2 :argau : argau[42]/F *
*Entries : 20 : Total Size= 3988 bytes One basket in memory *
*Baskets : 0 : Basket Size= 32000 bytes Compression= 1.00 *
*Entries : 20 : Total Size= 3919 bytes File Size = 3228 *
*Baskets : 1 : Basket Size= 32000 bytes Compression= 1.06 *
*............................................................................*
*Br 3 :argau2 : argau2[42]/F *
*Entries : 20 : Total Size= 3994 bytes One basket in memory *
*Baskets : 0 : Basket Size= 32000 bytes Compression= 1.00 *
*Entries : 20 : Total Size= 3924 bytes File Size = 3234 *
*Baskets : 1 : Basket Size= 32000 bytes Compression= 1.06 *
*............................................................................*
NTupleSvc INFO NTuples saved successfully
ApplicationMgr INFO Application Manager Finalized successfully
......
This diff is collapsed.
This diff is collapsed.
......@@ -8,6 +8,7 @@
// ============================================================================
#include <algorithm>
#include <numeric>
#include <limits>
// ============================================================================
// CLHEP
// ============================================================================
......@@ -55,7 +56,7 @@ public:
Assert ( randSvc() != 0, "Random Service is not available!");
//
return StatusCode::SUCCESS ;
};
}
/** the only one essential method
* @see IAlgoruthm
*/
......@@ -68,7 +69,7 @@ public:
TupleAlg
( const std::string& name ,
ISvcLocator* pSvc )
: GaudiTupleAlg ( name , pSvc ) {};
: GaudiTupleAlg ( name , pSvc ) { }
// destructor
virtual ~TupleAlg() {} ;
private:
......@@ -78,6 +79,16 @@ private:
TupleAlg( const TupleAlg& ) ;
// assignement op[erator is disabled
TupleAlg& operator=( const TupleAlg& ) ;
// Make a random generator for a type
template< class T >
T randomRange()
{
const T min = std::numeric_limits<T>::min();
const T max = std::numeric_limits<T>::max();
return min + (T)( (max-min) *
(double)(Rndm::Numbers( randSvc(), Rndm::Flat(0,1) )()) );
}
};
......@@ -426,9 +437,53 @@ StatusCode TupleAlg::execute()
};
tuple6 -> write() ;
// ============================================================================
static unsigned long long evtID ( 1e14 );
++evtID;
// Test for unsupported data types
Tuple tuple7 = nTuple ( "typesCW" , "Types Test Column Wise" ) ;
{
tuple7 -> column ( "bool" , (bool) 0<flat() ) ;
tuple7 -> column ( "float" , (float) gauss() ) ;
tuple7 -> column ( "double" , (double) gauss() ) ;
tuple7 -> column ( "short" , (short) randomRange<char>() ) ;
tuple7 -> column ( "ushort" , (unsigned short) randomRange<unsigned char>() ) ;
tuple7 -> column ( "int" , (int) randomRange<char>() ) ;
tuple7 -> column ( "uint" , (unsigned int) randomRange<unsigned char>() ) ;
tuple7 -> column ( "long" , (long) randomRange<char>() ) ;
tuple7 -> column ( "ulong" , (unsigned long) randomRange<unsigned char>() ) ;
tuple7 -> column ( "longlong" , (long long) randomRange<char>() ) ;
tuple7 -> column ( "ulonglong" , (unsigned long long) randomRange<unsigned char>() ) ;
tuple7 -> column ( "char" , (char) randomRange<char>() ) ;
tuple7 -> column ( "uchar" , (unsigned char) randomRange<unsigned char>() ) ;
tuple7 -> column ( "EventID" , evtID );
}
tuple7 -> write() ;
// Test for unsupported data types
Tuple tuple8 = nTuple ( "typesRW" , "Types Test Row Wise", CLID_RowWiseTuple ) ;
{
tuple8 -> column ( "bool" , (bool) 0<flat() ) ;
tuple8 -> column ( "float" , (float) gauss() ) ;
tuple8 -> column ( "double" , (double) gauss() ) ;
tuple8 -> column ( "short" , (short) randomRange<char>() ) ;
tuple8 -> column ( "ushort" , (unsigned short) randomRange<unsigned char>() ) ;
tuple8 -> column ( "int" , (int) randomRange<char>() ) ;
tuple8 -> column ( "uint" , (unsigned int) randomRange<unsigned char>() ) ;
tuple8 -> column ( "long" , (long) randomRange<char>() ) ;
tuple8 -> column ( "ulong" , (unsigned long) randomRange<unsigned char>() ) ;
tuple8 -> column ( "longlong" , (long long) randomRange<char>() ) ;
tuple8 -> column ( "ulonglong" , (unsigned long long) randomRange<unsigned char>() ) ;
tuple8 -> column ( "char" , (char) randomRange<char>() ) ;
tuple8 -> column ( "uchar" , (unsigned char) randomRange<unsigned char>() ) ;
tuple8 -> column ( "EventID" , evtID );
}
tuple8 -> write() ;
return StatusCode::SUCCESS ;
}
......
......@@ -119,12 +119,12 @@ public:
inline MsgStream& msg() const { return msgStream(MSG::INFO); }
/// get the output level from the embedded MsgStream
inline MSG::Level msgLevel() {
inline MSG::Level msgLevel() const {
return msgStream().level();
}
/// get the output level from the embedded MsgStream
inline bool msgLevel(MSG::Level lvl) {
inline bool msgLevel(MSG::Level lvl) const {
return UNLIKELY(msgLevel() <= lvl);
}
......
......@@ -27,7 +27,7 @@ public:
BOOL, FLOAT, DOUBLE,
STRING, NTCHAR,
OBJECT_REF, CONTAINED_REF, POINTER, OBJECT_ADDR,
LONG_STRING, LONG_NTCHAR
LONG_STRING, LONG_NTCHAR, LONGLONG, ULONGLONG
};
/// Access to type information: bool
static Type ID( const bool) { return BOOL; }
......@@ -39,6 +39,8 @@ public:
static Type ID( const int) { return INT; }
/// Access to type information: long
static Type ID( const long) { return LONG; }
/// Access to type information: long long
static Type ID( const long long) { return LONGLONG; }
/// Access to type information: unsigned char
static Type ID( const unsigned char) { return UCHAR; }
/// Access to type information: unsigned short
......@@ -47,6 +49,8 @@ public:
static Type ID( const unsigned int) { return UINT; }
/// Access to type information: unsigned long
static Type ID( const unsigned long) { return ULONG; }
/// Access to type information: unsigned long long
static Type ID( const unsigned long long) { return ULONGLONG; }
/// Access to type information: float
static Type ID( const float) { return FLOAT; }
/// Access to type information: float
......@@ -74,6 +78,8 @@ public:
return UINT;
else if ( typ == typeid(unsigned long) )
return ULONG;
else if ( typ == typeid(unsigned long long) )
return ULONGLONG;