Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members  

CdbRooNTupleR< E > Class Template Reference

An abstract base class for persistent n-tuples. More...

Inheritance diagram for CdbRooNTupleR< E >:

CdbRooNTupleBaseR CdbRooObjectR CdbRooNTupleSimpleImplR< E > List of all members.

Public Types

typedef E ElementType

Public Member Functions

virtual UInt_t rows () const=0
 Get the number of rows in the tuple.

virtual CdbStatus get_row (std::vector< E > &theRow, const UInt_t theNumber) const=0
 Get a row at a specified position.

virtual CdbStatus append_row (const std::vector< E > &theRow)=0
 Append a row by the end of an existing list.

 ClassDefT (CdbRooNTupleR< E >, 1)

Protected Member Functions

 CdbRooNTupleR ()
 Default constructor.

 CdbRooNTupleR (UInt_t theNumberOfColumns, const std::string &theName, const std::string &theDescription, const std::vector< std::string > &theColumnNames)
 Normal constructor.


Detailed Description

template<class E>
class CdbRooNTupleR< E >

An abstract base class for persistent n-tuples.

This class adds a type safe interface of the n-tuple model by prividing a set of virtual methods to access or modify the contents of a tuple.

RESTRICTIONS:

(1) Rows are numbered beginning from 0.

(2) In all operations with rows, a row is defined through a STD vector of element type. The number of elements in the vector must be exactly the number of columns passed to the constructor.

Definition at line 23 of file CdbRooNTupleR.rdl.


Member Typedef Documentation

template<class E>
typedef E CdbRooNTupleR< E >::ElementType
 

Definition at line 27 of file CdbRooNTupleR.rdl.


Constructor & Destructor Documentation

template<class E>
CdbRooNTupleR< E >::CdbRooNTupleR   [inline, protected]
 

Default constructor.

Is useless, but it's required by the ROOT I/O streamers. Any attempts to use an object constructed in this way would result in the corresponding errors reported.

Definition at line 36 of file CdbRooNTupleR.rdl.

template<class E>
CdbRooNTupleR< E >::CdbRooNTupleR UInt_t    theNumberOfColumns,
const std::string &    theName,
const std::string &    theDescription,
const std::vector< std::string > &    theColumnNames
[inline, protected]
 

Normal constructor.

See also:
CdbRooNTupleBaseR::CdbRooNTupleBaseR()

Definition at line 44 of file CdbRooNTupleR.rdl.


Member Function Documentation

template<class E>
virtual CdbStatus CdbRooNTupleR< E >::append_row const std::vector< E > &    theRow [pure virtual]
 

Append a row by the end of an existing list.

This method has to be implemented by a subclass.

Returns:
the completion status of the operation
Returned status values:

CdbStatus::Success - successfull completion. The vector passed as a parameter will be filled exactly the same number of elements as the number of columns in the tuple.

CdbStatus::IllegalParameters - an incomplete row with wrong number of elements passed to the method. The number of elements must match the number of columns.

CdbStatus::* - any other problem occured preventing the successfull completion of the operation. The vector passed as a parameter won't be modified.

Also see the RESTRICTIONS section at the defintion of the class for more detailed information on values of parameters.

Implemented in CdbRooNTupleSimpleImplR< E >.

template<class E>
CdbRooNTupleR< E >::ClassDefT CdbRooNTupleR< E >   ,
 
 

template<class E>
virtual CdbStatus CdbRooNTupleR< E >::get_row std::vector< E > &    theRow,
const UInt_t    theNumber
const [pure virtual]
 

Get a row at a specified position.

This method has to be implemented by a subclass.

Returns:
the completion status of the operation
Returned status values:

CdbStatus::Success - successfull completion. The vector passed as a parameter will be filled exactly the same number of elements as the number of columns in the tuple.

CdbStatus::NotFound - a row with specified number is not found. The vector passed as a parameter won't be modified.

CdbStatus::* - any other problem occured preventing the successfull completion of the operation. The vector passed as a parameter won't be modified.

Also see the RESTRICTIONS section at the defintion of the class for more detailed information on values of parameters.

Implemented in CdbRooNTupleSimpleImplR< E >.

template<class E>
virtual UInt_t CdbRooNTupleR< E >::rows   const [pure virtual]
 

Get the number of rows in the tuple.

Implemented in CdbRooNTupleSimpleImplR< E >.


The documentation for this class was generated from the following file:
Generated on Mon Dec 5 18:22:23 2005 for CDB by doxygen1.3-rc3