| # Gaudi Framework, version v25r0 |

Home |  | Generated: Mon Feb 17 2014

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Public Member Functions | Protected Attributes | Private Member Functions | List of all members
NTuple::TupleImp Class Reference

`#include <NTupleImplementation.h>`

Inheritance diagram for NTuple::TupleImp:
[legend]
Collaboration diagram for NTuple::TupleImp:
[legend]

## Public Member Functions
virtual INTupleItem * | i_find (const std::string &name) const
| Internally used by abstract classes.
| TupleImp (const std::string &title)
| Standard Constructor.
virtual | ~TupleImp ()
| Standard Destructor.
ItemContainer & | items ()
| Access item container.
const ItemContainer & | items () const
| Access item container (CONST)
virtual const std::string & | title () const
| Object title.
virtual const INTupleItem * | find (const std::string &name) const
| Find an item row of the Ntuple (CONST)
virtual INTupleItem * | find (const std::string &name)
| Find an item row of the Ntuple.
char * | buffer ()
| Access N tuple data buffer.
const char * | buffer () const
| Access N tuple data buffer (CONST)
IConversionSvc * | conversionService () const
| Access conversion service.
void | setConversionService (IConversionSvc *svc)
| Access conversion service.
INTupleSvc * | tupleService () const
| Access conversion service.
void | setTupleService (INTupleSvc *svc)
| Access conversion service.
virtual StatusCode | attachSelector (ISelectStatement *sel)
| Attach selector.
virtual ISelectStatement * | selector ()
| Access selector.
virtual void | setBuffer (char *buff)
| Set N tuple data buffer.
virtual void | reset ()
| Reset all entries to their default values.
virtual StatusCode | add (INTupleItem *item)
| Add an item row to the N tuple.
virtual StatusCode | remove (INTupleItem *item)
| Remove an item row (identified by pointer) from the N tuple.
virtual StatusCode | remove (const std::string &name)
| Remove an item row (identified by name) from the N tuple.
virtual StatusCode | write ()
| Write record of the NTuple (Shortcut of writeRecord)
virtual StatusCode | writeRecord ()
| Write record of the NTuple.
virtual StatusCode | read ()
| Read record of the NTuple (Shortcut of readRecord)
virtual StatusCode | readRecord ()
| Read record of the NTuple.
virtual StatusCode | save ()
| Save the NTuple.
Public Member Functions inherited from NTuple::Tuple
virtual | ~Tuple ()
| Standard destructor.
template<class TYPE >
StatusCode | item (const std::string &name, Item< TYPE > &result)
| Locate a scalar Item of data to the N tuple type safe.
template<class TYPE >
StatusCode | item (const std::string &name, const Item< TYPE > &result) const
| Locate a scalar Item of data to the N tuple type safe (CONST)
template<class TYPE >
StatusCode | item (const std::string &name, Array< TYPE > &result)
| Locate a Array of data to the N tuple type safe.
template<class TYPE >
StatusCode | item (const std::string &name, const Array< TYPE > &result) const
| Locate a Array of data to the N tuple type safe (CONST)
template<class TYPE >
StatusCode | item (const std::string &name, Matrix< TYPE > &result)
| Locate a Matrix of data to the N tuple type safe.
template<class TYPE >
StatusCode | item (const std::string &name, const Matrix< TYPE > &result) const
| Locate a Matrix of data to the N tuple type safe (CONST)
template<class TYPE >
StatusCode | addItem (const std::string &name, Item< TYPE > &itm)
| Add a scalar data item a N tuple.
template<class TYPE >
StatusCode | addItem (const std::string &name, Item< TYPE * > &itm)
| Add an simple object item to an N tuple.
StatusCode | addItem (const std::string &name, Item< IOpaqueAddress * > &itm)
| Add an address object item to an N tuple: specialized call.
template<class TYPE , class RANGE >
StatusCode | addItem (const std::string &name, Item< TYPE > &itm, const RANGE low, const RANGE high)
| Add a scalar data item a N tuple with a range.
template<class TYPE >
StatusCode | addItem (const std::string &name, long dim, Array< TYPE > &array)
| Add an fixed-size Array of data to a column wise N tuple.
template<class TYPE , class RANGE >
StatusCode | addItem (const std::string &name, long dim, Array< TYPE > &array, const RANGE low, const RANGE high)
| Add an fixed-size Array of data to a column wise N tuple with a range.
template<class TYPE , class INDEX , class RANGE >
StatusCode | addItem (const std::string &name, Item< INDEX > &index, Array< TYPE > &array, const RANGE low, const RANGE high)
| Add an indexed Array of data to a column wise N tuple with a range.
template<class TYPE , class INDEX , class RANGE >
StatusCode | addIndexedItem (const std::string &name, Item< INDEX > &index, Array< TYPE > &array, const RANGE low, const RANGE high)
| Add an indexed Array of data to a column wise N tuple with a range.
template<class TYPE , class INDEX >
StatusCode | addItem (const std::string &name, Item< INDEX > &index, Array< TYPE > &array)
| Add an indexed Array of data to a column wise N tuple.
template<class TYPE , class INDEX >
StatusCode | addIndexedItem (const std::string &name, Item< INDEX > &index, Array< TYPE > &array)
| Add an indexed Array of data to a column wise N tuple.
template<class TYPE >
StatusCode | addItem (const std::string &name, long cols, long rows, Matrix< TYPE > &matrix)
| Add an fixed size Matrix of data to a column wise N tuple.
template<class TYPE , class RANGE >
StatusCode | addItem (const std::string &name, long cols, long rows, Matrix< TYPE > &result, const RANGE low, const RANGE high)
| Add an fixed size Matrix of data to a column wise N tuple.
template<class TYPE , class INDEX >
StatusCode | addItem (const std::string &name, Item< INDEX > &index, Matrix< TYPE > &matrix, long rows)
| Add an variable size Matrix of data to a column wise N tuple.
template<class TYPE , class INDEX >
StatusCode | addIndexedItem (const std::string &name, Item< INDEX > &col_index, long rows, Matrix< TYPE > &matrix)
| Add an variable size Matrix of data to a column wise N tuple.
template<class TYPE , class INDEX , class RANGE >
StatusCode | addItem (const std::string &name, Item< INDEX > &index, Matrix< TYPE > &matrix, long rows, const RANGE low, const RANGE high)
| Add an variable size Matrix of data to a column wise N tuple.
template<class TYPE , class INDEX , class RANGE >
StatusCode | addIndexedItem (const std::string &name, Item< INDEX > &index, long rows, Matrix< TYPE > &matrix, const RANGE low, const RANGE high)
| Add an variable size Matrix of data to a column wise N tuple.
Public Member Functions inherited from DataObject
| DataObject ()
| Standard Constructor.
| DataObject (const DataObject &)
| Copy Constructor.
virtual | ~DataObject ()
| Standard Destructor.
virtual unsigned long | addRef ()
| Add reference to object.
virtual unsigned long | release ()
| release reference to object
virtual const CLID & | clID () const
| Retrieve reference to class definition structure.
const std::string & | name () const
| Retreive DataObject name. It is the name when registered in the store.
virtual StatusCode | update ()
| Provide empty placeholder for internal object reconfiguration callback.
void | setRegistry (IRegistry *pRegistry)
| Set pointer to Registry.
IRegistry * | registry () const
| Get pointer to Registry.
LinkManager * | linkMgr () const
| Retrieve Link manager.
unsigned char | version () const
| Retrieve version number of this object representation.
void | setVersion (unsigned char vsn)
| Set version number of this object representation.
unsigned long | refCount () const
| Return the refcount.
virtual std::ostream & | fillStream (std::ostream &s) const
| Fill the output stream (ASCII)
Public Member Functions inherited from INTuple
virtual | ~INTuple ()

## Protected Attributes
ItemContainer | m_items
| Container with N tuple _Columns.
bool | m_isBooked
| Flag wether N tuple is booked.
std::string | m_title
| N tuple title.
ISelectStatement * | m_pSelector
| Possibly hanging selector.
char * | m_buffer
| Buffer size.
INTupleSvc * | m_ntupleSvc
| Reference to N-tuple service used.
IConversionSvc * | m_cnvSvc
| Reference to the conversion service used.

## Private Member Functions
| TupleImp (const TupleImp &)
| Standard Copy Constructor.

## Additional Inherited Members
Public Types inherited from INTuple
typedef std::vector < INTupleItem * > | ItemContainer
Static Public Member Functions inherited from DataObject
static const CLID & | classID ()
| Retrieve reference to class definition structure (static access)
Protected Member Functions inherited from NTuple::Tuple
template<class TYPE >
StatusCode | i_item (const std::string &name, _Item< TYPE > *&result) const
| Locate a _Column of data to the N tuple type safe.
template<class TYPE >
StatusCode | i_item (const std::string &name, _Item< TYPE * > *&result) const
| Locate a _Column of data to the N tuple type unsafe for objects.
StatusCode | i_item (const std::string &name, _Item< IOpaqueAddress * > *&result) const
| Locate a _Column of data to the N tuple type safe.
template<class TYPE >
StatusCode | i_item (const std::string &name, _Array< TYPE > *&result) const
| Locate a _Array of data to the N tuple type safe.
template<class TYPE >
StatusCode | i_item (const std::string &name, _Matrix< TYPE > *&result) const
| Locate a _Matrix of data to the N tuple type safe.
template<class TYPE >
StatusCode | i_addItem (const std::string &name, long, const std::string &, TYPE low, TYPE high, _Item< TYPE > *&result)
| Add a _Item of data to the N tuple.
template<class TYPE >
StatusCode | i_addItem (const std::string &name, long dim, const std::string &index, TYPE low, TYPE high, _Array< TYPE > *&result)
| Add a _Item of data to the N tuple.
template<class TYPE >
StatusCode | i_addItem (const std::string &name, long dim1, long dim2, const std::string &index, TYPE low, TYPE high, _Matrix< TYPE > *&result)
| Add a _Item of data to the N tuple.
template<class TYPE >
StatusCode | i_addObject (const std::string &name, _Item< TYPE * > *&result, const std::type_info &)
Friends inherited from DataObject

## Detailed Description

Definition at line 15 of file NTupleImplementation.h.

## Constructor & Destructor Documentation

NTuple::TupleImp::TupleImp | ( | const TupleImp & |  | ) |
| private

Standard Copy Constructor.

NTuple::TupleImp::TupleImp | ( | const std::string & | title | ) |

Standard Constructor.

Definition at line 27 of file NTupleImplementation.cpp.

: m_isBooked(false),
m_title(title),
m_pSelector(0),
m_buffer(0),
m_ntupleSvc(0),
m_cnvSvc(0)
{
}

NTuple::TupleImp::~TupleImp | ( |  | ) |
| virtual

Standard Destructor.

Definition at line 38 of file NTupleImplementation.cpp.

{
for (ItemContainer::iterator i = m_items.begin(); i != m_items.end(); i++) {
(*i)->release();
}
m_items.erase(m_items.begin(), m_items.end());
delete [] m_buffer;
m_buffer = 0;
}

## Member Function Documentation

StatusCode NTuple::TupleImp::add | ( | INTupleItem * | item | ) |
| virtual

Add an item row to the N tuple.

Implements INTuple.

Definition at line 81 of file NTupleImplementation.cpp.

{
if ( 0 != item ) {
INTupleItem* i = i_find(item->name());
if ( 0 == i ) {
m_items.push_back( item );
return StatusCode::SUCCESS;
}
}
return StatusCode::FAILURE;
}

StatusCode NTuple::TupleImp::attachSelector | ( | ISelectStatement * | sel | ) |
| virtual

Attach selector.

Implements INTuple.

Definition at line 48 of file NTupleImplementation.cpp.

{
if ( 0 != sel ) sel->addRef();
if ( 0 != m_pSelector ) m_pSelector->release();
m_pSelector = sel;
return StatusCode::SUCCESS;
}

char* NTuple::TupleImp::buffer | ( |  | ) |
| inline virtual

Access N tuple data buffer.

Implements INTuple.

Definition at line 64 of file NTupleImplementation.h.

{
return m_buffer;
}

const char* NTuple::TupleImp::buffer | ( |  | ) | const
| inline virtual

Access N tuple data buffer (CONST)

Implements INTuple.

Definition at line 68 of file NTupleImplementation.h.

{
return m_buffer;
}

IConversionSvc* NTuple::TupleImp::conversionService | ( |  | ) | const
| inline

Access conversion service.

Definition at line 72 of file NTupleImplementation.h.

{
return m_cnvSvc;
}

virtual const INTupleItem* NTuple::TupleImp::find | ( | const std::string & | name | ) | const
| inline virtual

Find an item row of the Ntuple (CONST)

Implements INTuple.

Definition at line 56 of file NTupleImplementation.h.

{
return i_find(name);
}

virtual INTupleItem* NTuple::TupleImp::find | ( | const std::string & | name | ) |
| inline virtual

Find an item row of the Ntuple.

Implements INTuple.

Definition at line 60 of file NTupleImplementation.h.

{
return i_find(name);
}

INTupleItem * NTuple::TupleImp::i_find | ( | const std::string & | name | ) | const
| virtual

Internally used by abstract classes.

Locate a column of data to the N tuple (not type safe)

Implements INTuple.

Definition at line 68 of file NTupleImplementation.cpp.

{
for (ItemContainer::const_iterator i = m_items.begin();
i != m_items.end();
i++) {
if ( name == (*i)->name() ) {
INTupleItem* it = const_cast<INTupleItem*>(*i);
return it;
}
}
return 0;
}

ItemContainer& NTuple::TupleImp::items | ( |  | ) |
| inline virtual

Access item container.

Implements INTuple.

Definition at line 44 of file NTupleImplementation.h.

{
return m_items;
}

const ItemContainer& NTuple::TupleImp::items | ( |  | ) | const
| inline virtual

Access item container (CONST)

Implements INTuple.

Definition at line 48 of file NTupleImplementation.h.

{
return m_items;
}

StatusCode NTuple::TupleImp::read | ( |  | ) |
| virtual

Read record of the NTuple (Shortcut of readRecord)

Read record of the NTuple.

Implements INTuple.

Definition at line 123 of file NTupleImplementation.cpp.

{
return m_ntupleSvc->readRecord(this);
}

StatusCode NTuple::TupleImp::readRecord | ( |  | ) |
| virtual

Read record of the NTuple.

Implements INTuple.

Definition at line 127 of file NTupleImplementation.cpp.

{
return m_ntupleSvc->readRecord(this);
}

StatusCode NTuple::TupleImp::remove | ( | INTupleItem * | item | ) |
| virtual

Remove an item row (identified by pointer) from the N tuple.

Remove a column from the N-tuple.

Implements INTuple.

Definition at line 99 of file NTupleImplementation.cpp.

{
for (ItemContainer::iterator i = m_items.begin(); i != m_items.end(); i++) {
if ( (*i) == item ) {
m_items.erase(i);
item->release();
return StatusCode::SUCCESS;
}
}
return StatusCode::FAILURE;
}

StatusCode NTuple::TupleImp::remove | ( | const std::string & | name | ) |
| virtual

Remove an item row (identified by name) from the N tuple.

Remove a column from the N-tuple.

Implements INTuple.

Definition at line 93 of file NTupleImplementation.cpp.

{
INTupleItem* i = i_find(name);
return (i == 0) ? StatusCode(StatusCode::FAILURE) : remove(i);
}

void NTuple::TupleImp::reset | ( |  | ) |
| virtual

Reset all entries to their default values.

Reset N tuple to default values.

Implements INTuple.

Definition at line 61 of file NTupleImplementation.cpp.

{
for (ItemContainer::iterator i = m_items.begin(); i != m_items.end(); i++) {
(*i)->reset();
}
}

StatusCode NTuple::TupleImp::save | ( |  | ) |
| virtual

Save the NTuple.

Implements INTuple.

Definition at line 131 of file NTupleImplementation.cpp.

{
return m_ntupleSvc->save(this);
}

ISelectStatement * NTuple::TupleImp::selector | ( |  | ) |
| virtual

Access selector.

Implements INTuple.

Definition at line 56 of file NTupleImplementation.cpp.

{
return m_pSelector;
}

void NTuple::TupleImp::setBuffer | ( | char * | buff | ) |
| virtual

Set N tuple data buffer.

Implements INTuple.

Definition at line 110 of file NTupleImplementation.cpp.

{
if ( 0 != m_buffer ) delete m_buffer;
m_buffer = buff;
}

void NTuple::TupleImp::setConversionService | ( | IConversionSvc * | svc | ) |
| inline

Access conversion service.

Definition at line 76 of file NTupleImplementation.h.

{
m_cnvSvc = svc;
}

void NTuple::TupleImp::setTupleService | ( | INTupleSvc * | svc | ) |
| inline

Access conversion service.

Definition at line 84 of file NTupleImplementation.h.

{
m_ntupleSvc = svc;
}

virtual const std::string& NTuple::TupleImp::title | ( |  | ) | const
| inline virtual

Object title.

Implements INTuple.

Definition at line 52 of file NTupleImplementation.h.

{
return m_title;
}

INTupleSvc* NTuple::TupleImp::tupleService | ( |  | ) | const
| inline

Access conversion service.

Definition at line 80 of file NTupleImplementation.h.

{
return m_ntupleSvc;
}

StatusCode NTuple::TupleImp::write | ( |  | ) |
| virtual

Write record of the NTuple (Shortcut of writeRecord)

Write record of the NTuple.

Implements INTuple.

Definition at line 115 of file NTupleImplementation.cpp.

{
return m_ntupleSvc->writeRecord(this);
}

StatusCode NTuple::TupleImp::writeRecord | ( |  | ) |
| virtual

Write record of the NTuple.

Implements INTuple.

Definition at line 119 of file NTupleImplementation.cpp.

{
return m_ntupleSvc->writeRecord(this);
}

## Member Data Documentation

char* NTuple::TupleImp::m_buffer
| protected

Buffer size.

Definition at line 26 of file NTupleImplementation.h.

IConversionSvc* NTuple::TupleImp::m_cnvSvc
| protected

Reference to the conversion service used.

Definition at line 30 of file NTupleImplementation.h.

bool NTuple::TupleImp::m_isBooked
| protected

Flag wether N tuple is booked.

Definition at line 20 of file NTupleImplementation.h.

ItemContainer NTuple::TupleImp::m_items
| protected

Container with N tuple _Columns.

Definition at line 18 of file NTupleImplementation.h.

INTupleSvc* NTuple::TupleImp::m_ntupleSvc
| protected

Reference to N-tuple service used.

Definition at line 28 of file NTupleImplementation.h.

ISelectStatement* NTuple::TupleImp::m_pSelector
| protected

Possibly hanging selector.

Definition at line 24 of file NTupleImplementation.h.

std::string NTuple::TupleImp::m_title
| protected

N tuple title.

Definition at line 22 of file NTupleImplementation.h.

The documentation for this class was generated from the following files:

- /afs/cern.ch/sw/Gaudi/releases/GAUDI/GAUDI_v25r0/GaudiKernel/GaudiKernel/NTupleImplementation.h
- /afs/cern.ch/sw/Gaudi/releases/GAUDI/GAUDI_v25r0/GaudiKernel/src/Lib/NTupleImplementation.cpp