Jpp
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Protected Attributes | List of all members
JROOT::JTreeReader< T > Class Template Reference

Auxiliary class for template TTree reading. More...

#include <JTreeReader.hh>

Inheritance diagram for JROOT::JTreeReader< T >:
JROOT::JAbstractTreeReader JROOT::JTreeParameters JROOT::JRootAddress< T > JLANG::JPointer< JClass_t > JLANG::JAbstractPointer< JClass_t > JLANG::JEquals< JAbstractPointer< JClass_t > > JROOT::JTreeReaderObjectIterator< T > JROOT::JTreeReaderAccessibleObjectIterator< T > JROOT::JRootFileReader< T, true >

Public Member Functions

 JTreeReader (const JTreeParameters &parameters=JROOT::getTreeParameters< T >())
 Constructor. More...
 
virtual bool load (TFile *file)
 Load TTree from given file. More...
 
virtual const TDictionary * getDictionary ()
 Get ROOT dictionary. More...
 
virtual JClass_t * get () const
 Get pointer. More...
 
virtual void set (JClass_t *p)
 Set pointer. More...
 
template<class T >
void set (const JPointer< T > &pointer)
 Set pointer. More...
 
virtual void reset ()
 Reset pointer. More...
 
template<class T >
void reset (const JPointer< T > &pointer)
 Reset pointer. More...
 
void reset (JClass_t *p)
 Reset pointer. More...
 
JClass_t *const & getReference () const
 Get rereference to internal pointer. More...
 
JClass_t *& getReference ()
 Get rereference to internal pointer. More...
 
virtual bool equals (const JAbstractPointer &object) const
 Equals. More...
 
bool is_valid () const
 Check validity of pointer. More...
 
JClass_t * operator-> () const
 Smart pointer operator. More...
 
 operator JClass_t * () const
 Type conversion operator. More...
 
const JTreeParametersgetTreeParameters () const
 Get TTree parameters. More...
 
const TString & getTreeName () const
 Get TTree name. More...
 
const TString & getTreeTitle () const
 Get TTree title. More...
 
const TString & getBranchName () const
 Get TBranch name. More...
 
int getCompressionLevel () const
 Get compression level. More...
 
int getBasketSize () const
 Get basket size. More...
 
int getSplitLevel () const
 Get split level. More...
 
void release ()
 Release memory. More...
 
T * getAddress () const
 Get address. More...
 

Protected Attributes

JClass_t * __p
 pointer to object More...
 
TString treeName
 TTree name. More...
 
TString treeTitle
 TTree title. More...
 
TString branchName
 TBranch name. More...
 
int compressionLevel
 TBranch compression level. More...
 
int basketSize
 TBranch basket size. More...
 
int splitLevel
 TBranch split level. More...
 
T * address
 

Detailed Description

template<class T>
class JROOT::JTreeReader< T >

Auxiliary class for template TTree reading.

Definition at line 54 of file JTreeReader.hh.

Constructor & Destructor Documentation

template<class T >
JROOT::JTreeReader< T >::JTreeReader ( const JTreeParameters parameters = JROOT::getTreeParameters<T>())
inline

Constructor.

Note that the default TTree parameters are obtained using method JROOT::getTreeParameters.

Parameters
parametersparameters of TTree

Definition at line 67 of file JTreeReader.hh.

67  :
68  JTreeParameters(parameters)
69  {}
JTreeParameters(const TString &treeName, const TString &treeTitle, const TString &branchName="", const int compressionLevel=1, const int basketSize=65536, const int splitLevel=1)
Constructor.

Member Function Documentation

template<class T >
virtual bool JROOT::JTreeReader< T >::load ( TFile *  file)
inlinevirtual

Load TTree from given file.

This methods releases the pending memory allocated from previous data reading.

Parameters
filepointer to file
Returns
true when TTree correctly loaded; else false

Implements JROOT::JAbstractTreeReader.

Definition at line 80 of file JTreeReader.hh.

81  {
82  this->release();
83 
84  if (file != NULL) {
85 
86  this->set(dynamic_cast<TTree*>(file->Get(this->getTreeName())));
87 
88  if (this->is_valid()) {
89 
90  this->get()->SetBranchAddress(this->getBranchName(), &this->address);
91 
92  return true;
93  }
94  }
95 
96  return false;
97  }
void release()
Release memory.
Definition: JRootAddress.hh:42
const TString & getBranchName() const
Get TBranch name.
bool is_valid() const
Check validity of pointer.
virtual void set(JClass_t *p)
Set pointer.
Definition: JPointer.hh:75
template<class T >
virtual const TDictionary* JROOT::JTreeReader< T >::getDictionary ( )
inlinevirtual

Get ROOT dictionary.

Returns
dictionary.

Implements JROOT::JAbstractTreeReader.

Definition at line 105 of file JTreeReader.hh.

106  {
107  return TDictionary::GetDictionary(T::Class_Name());
108  }
template<class JClass_t>
virtual JClass_t* JLANG::JPointer< JClass_t >::get ( ) const
inlinevirtualinherited
template<class JClass_t>
virtual void JLANG::JPointer< JClass_t >::set ( JClass_t *  p)
inlinevirtualinherited

Set pointer.

Parameters
ppointer to object

Implements JLANG::JAbstractPointer< JClass_t >.

Reimplemented in JLANG::JSharedPointer< JClass_t, JMemory_t >, JLANG::JSharedPointer< JPHYSICS::JRadiation >, JLANG::JSharedPointer< JAccessibleObjectIterator< KM3NETDAQ::KM3NETDAQ::JDAQEvent > >, JLANG::JSharedPointer< JObjectIterator< T > >, JLANG::JSharedPointer< JFIT::JMEstimator >, JLANG::JSharedPointer< JAbstractAutoPointer< JBase_t > >, JLANG::JSharedPointer< JAccessibleObjectIterator< JNullType > >, JLANG::JSharedPointer< match_type >, JLANG::JSharedPointer< JAccessibleObjectIterator< JDAQSummaryslice > >, JLANG::JSharedPointer< JAccessibleObjectIterator< JTypeList< JDAQEvent, JTypelist_t > > >, JLANG::JSharedPointer< JAccessibleObjectIterator< JTail_t > >, JLANG::JSharedPointer< JLOGGER::JLogger >, JLANG::JSharedPointer< JAccessibleObjectIterator< T > >, JLANG::JSharedPointer< JParserElementInterface >, JLANG::JSharedPointer< const JDETECTOR::JModuleRouter >, JLANG::JSharedPointer< JExceptionHandler >, JLANG::JSharedPointer< JObjectOutput< JHead_t > >, JLANG::JSharedPointer< JAccessibleObjectIterator< JHead_t > >, JLANG::JSharedPointer< JRewindableObjectIterator< JTail_t > >, JLANG::JSharedPointer< JRewindableObjectIterator< JHead_t > >, JLANG::JSharedPointer< JObjectOutput< T > >, JLANG::JSharedPointer< JBase_t >, JLANG::JSharedPointer< JObjectOutput< JTail_t > >, JLANG::JSharedPointer< JPropertiesElementInterface >, JLANG::JSharedPointer< JRewindableObjectIterator< const T > >, JLANG::JSharedPointer< JRewindableObjectIterator< T > >, JLANG::JSharedPointer< JAccessibleObjectOutput< T > >, JLANG::JSharedPointer< JNET::JControlHost >, and JLANG::JSharedPointer< JTOOLS::JMultiMapTransformer >.

Definition at line 75 of file JPointer.hh.

76  {
77  this->__p = p;
78  }
JClass_t * __p
pointer to object
Definition: JPointer.hh:136
template<class JClass_t>
template<class T >
void JLANG::JPointer< JClass_t >::set ( const JPointer< T > &  pointer)
inlineinherited

Set pointer.

Parameters
pointerpointer to object

Definition at line 96 of file JPointer.hh.

97  {
98  this->set(pointer.get());
99  }
virtual JClass_t * get() const
Get pointer.
Definition: JPointer.hh:64
virtual void set(JClass_t *p)
Set pointer.
Definition: JPointer.hh:75
template<class JClass_t>
virtual void JLANG::JPointer< JClass_t >::reset ( )
inlinevirtualinherited

Reset pointer.

Implements JLANG::JAbstractPointer< JClass_t >.

Reimplemented in JLANG::JSharedPointer< JClass_t, JMemory_t >, JLANG::JSharedPointer< JPHYSICS::JRadiation >, JLANG::JSharedPointer< JAccessibleObjectIterator< KM3NETDAQ::KM3NETDAQ::JDAQEvent > >, JLANG::JSharedPointer< JObjectIterator< T > >, JLANG::JSharedPointer< JFIT::JMEstimator >, JLANG::JSharedPointer< JAbstractAutoPointer< JBase_t > >, JLANG::JSharedPointer< JAccessibleObjectIterator< JNullType > >, JLANG::JSharedPointer< match_type >, JLANG::JSharedPointer< JAccessibleObjectIterator< JDAQSummaryslice > >, JLANG::JSharedPointer< JAccessibleObjectIterator< JTypeList< JDAQEvent, JTypelist_t > > >, JLANG::JSharedPointer< JAccessibleObjectIterator< JTail_t > >, JLANG::JSharedPointer< JLOGGER::JLogger >, JLANG::JSharedPointer< JAccessibleObjectIterator< T > >, JLANG::JSharedPointer< JParserElementInterface >, JLANG::JSharedPointer< const JDETECTOR::JModuleRouter >, JLANG::JSharedPointer< JExceptionHandler >, JLANG::JSharedPointer< JObjectOutput< JHead_t > >, JLANG::JSharedPointer< JAccessibleObjectIterator< JHead_t > >, JLANG::JSharedPointer< JRewindableObjectIterator< JTail_t > >, JLANG::JSharedPointer< JRewindableObjectIterator< JHead_t > >, JLANG::JSharedPointer< JObjectOutput< T > >, JLANG::JSharedPointer< JBase_t >, JLANG::JSharedPointer< JObjectOutput< JTail_t > >, JLANG::JSharedPointer< JPropertiesElementInterface >, JLANG::JSharedPointer< JRewindableObjectIterator< const T > >, JLANG::JSharedPointer< JRewindableObjectIterator< T > >, JLANG::JSharedPointer< JAccessibleObjectOutput< T > >, JLANG::JSharedPointer< JNET::JControlHost >, JLANG::JSharedPointer< JTOOLS::JMultiMapTransformer >, JLANG::JStorage< JClass_t, JMemory_t >, JLANG::JStorage< JDETECTOR::JK40Simulator, JNew >, JLANG::JStorage< JAccessibleObjectIterator< JTail_t >, JNew >, JLANG::JStorage< match_type, JNew >, JLANG::JStorage< JObjectOutput< JTail_t >, JNew >, JLANG::JStorage< JAccessibleObjectIterator< JNullType >, JNew >, JLANG::JStorage< JAccessibleObjectIterator< KM3NETDAQ::KM3NETDAQ::JDAQEvent >, JNew >, JLANG::JStorage< JDETECTOR::JCLBDefaultSimulatorInterface::JStateMachine, JNew >, JLANG::JStorage< JDETECTOR::JPMTSimulator, JNew >, JLANG::JStorage< JObjectIterator< T >, JNew >, JLANG::JStorage< JAccessibleObjectIterator< T >, JNew >, JLANG::JStorage< JRewindableObjectIterator< JTail_t >, JNew >, JLANG::JStorage< JTOOLS::JFunction1D, JNew >, JLANG::JStorage< JDETECTOR::JCLBSimulator, JNew >, JLANG::JStorage< JTOOLS::JMultiMapTransformer, JNew >, JLANG::JStorage< JRewindableObjectIterator< const T >, JNew >, JLANG::JStorage< JBase_t, JNew >, JLANG::JStorage< JParserElementInterface, JNew >, JLANG::JStorage< JFIT::JMEstimator, JNew >, JLANG::JStorage< JAbstractAutoPointer< JBase_t >, JNew >, JLANG::JStorage< JAccessibleObjectIterator< JHead_t >, JNew >, JLANG::JStorage< JPHYSICS::JRadiation, JNew >, JLANG::JStorage< JDETECTOR::JCLBDefaultSimulatorInterface::JTDC, JNew >, JLANG::JStorage< JLANG::JMultiPipe< T, N >, JNew >, JLANG::JStorage< JAccessibleObjectIterator< JDAQSummaryslice >, JNew >, JLANG::JStorage< JObjectOutput< JHead_t >, JNew >, JLANG::JStorage< JAccessibleObjectIterator< JTypeList< JDAQEvent, JTypelist_t > >, JNew >, JLANG::JStorage< JExceptionHandler, JNew >, JLANG::JStorage< TFile >, JLANG::JStorage< JRewindableObjectIterator< T >, JNew >, JLANG::JStorage< JPropertiesElementInterface, JNew >, JLANG::JStorage< JRewindableObjectIterator< JHead_t >, JNew >, JLANG::JStorage< const JDETECTOR::JModuleRouter, JNew >, JLANG::JStorage< JObjectOutput< T >, JNew >, JLANG::JStorage< JIO::JWriter, JNew >, JLANG::JStorage< JNET::JControlHost, JNew >, JLANG::JStorage< JAccessibleObjectOutput< T >, JNew >, JLANG::JStorage< JIO::JReader, JNew >, and JLANG::JStorage< JLOGGER::JLogger, JNew >.

Definition at line 84 of file JPointer.hh.

85  {
86  this->__p = NULL;
87  }
JClass_t * __p
pointer to object
Definition: JPointer.hh:136
template<class JClass_t>
template<class T >
void JLANG::JPointer< JClass_t >::reset ( const JPointer< T > &  pointer)
inlineinherited

Reset pointer.

Parameters
pointerpointer to object

Definition at line 108 of file JPointer.hh.

109  {
110  this->reset(pointer.get());
111  }
virtual void reset()
Reset pointer.
Definition: JPointer.hh:84
virtual JClass_t * get() const
Get pointer.
Definition: JPointer.hh:64
template<class JClass_t>
void JLANG::JAbstractPointer< JClass_t >::reset ( JClass_t *  p)
inlineinherited

Reset pointer.

Parameters
ppointer to object

Definition at line 92 of file JAbstractPointer.hh.

93  {
94  if (this->get() != p) {
95 
96  this->reset();
97 
98  if (p != NULL) {
99  this->set(p);
100  }
101  }
102  }
virtual void reset()=0
Reset pointer.
virtual void set(JClass_t *p)=0
Set pointer.
template<class JClass_t>
JClass_t* const& JLANG::JPointer< JClass_t >::getReference ( ) const
inlineinherited

Get rereference to internal pointer.

Returns
reference to internal pointer

Definition at line 119 of file JPointer.hh.

120  {
121  return __p;
122  }
JClass_t * __p
pointer to object
Definition: JPointer.hh:136
template<class JClass_t>
JClass_t* & JLANG::JPointer< JClass_t >::getReference ( )
inlineinherited

Get rereference to internal pointer.

Returns
reference to internal pointer

Definition at line 130 of file JPointer.hh.

131  {
132  return __p;
133  }
JClass_t * __p
pointer to object
Definition: JPointer.hh:136
template<class JClass_t>
virtual bool JLANG::JAbstractPointer< JClass_t >::equals ( const JAbstractPointer< JClass_t > &  object) const
inlinevirtualinherited

Equals.

The equality is evaluated by comparison of the internal pointers.

Parameters
objectabstract pointer
Returns
true if equals; else false

Definition at line 48 of file JAbstractPointer.hh.

49  {
50  return this->get() == object.get();
51  }
template<class JClass_t>
bool JLANG::JAbstractPointer< JClass_t >::is_valid ( ) const
inlineinherited

Check validity of pointer.

Returns
true if pointer not null; else false

Definition at line 81 of file JAbstractPointer.hh.

82  {
83  return this->get() != NULL;
84  }
template<class JClass_t>
JClass_t* JLANG::JAbstractPointer< JClass_t >::operator-> ( ) const
inlineinherited

Smart pointer operator.

Returns
pointer to object

Definition at line 110 of file JAbstractPointer.hh.

111  {
112  if (!is_valid())
113  throw JNullPointerException("JAbstractPointer::operator->()");
114  else
115  return this->get();
116  }
bool is_valid() const
Check validity of pointer.
Exception for null pointer operation.
Definition: JException.hh:198
template<class JClass_t>
JLANG::JAbstractPointer< JClass_t >::operator JClass_t * ( ) const
inlineinherited

Type conversion operator.

Returns
pointer to object

Definition at line 124 of file JAbstractPointer.hh.

125  {
126  return this->get();
127  }
const JTreeParameters& JROOT::JTreeParameters::getTreeParameters ( ) const
inlineinherited

Get TTree parameters.

Returns
TTree parameters

Definition at line 60 of file JTreeParameters.hh.

61  {
62  return static_cast<const JTreeParameters&>(*this);
63  }
Data structure for TTree parameters.
const TString& JROOT::JTreeParameters::getTreeName ( ) const
inlineinherited

Get TTree name.

Returns
TTree name

Definition at line 71 of file JTreeParameters.hh.

72  {
73  return treeName;
74  }
TString treeName
TTree name.
const TString& JROOT::JTreeParameters::getTreeTitle ( ) const
inlineinherited

Get TTree title.

Returns
TTree title

Definition at line 82 of file JTreeParameters.hh.

83  {
84  return treeTitle;
85  }
TString treeTitle
TTree title.
const TString& JROOT::JTreeParameters::getBranchName ( ) const
inlineinherited

Get TBranch name.

Returns
TBranch name

Definition at line 93 of file JTreeParameters.hh.

94  {
95  return (branchName != "" ? branchName : treeName);
96  }
TString treeName
TTree name.
TString branchName
TBranch name.
int JROOT::JTreeParameters::getCompressionLevel ( ) const
inlineinherited

Get compression level.

Returns
compression level

Definition at line 104 of file JTreeParameters.hh.

105  {
106  return compressionLevel;
107  }
int compressionLevel
TBranch compression level.
int JROOT::JTreeParameters::getBasketSize ( ) const
inlineinherited

Get basket size.

Returns
basket size

Definition at line 115 of file JTreeParameters.hh.

116  {
117  return basketSize;
118  }
int basketSize
TBranch basket size.
int JROOT::JTreeParameters::getSplitLevel ( ) const
inlineinherited

Get split level.

Returns
split level

Definition at line 126 of file JTreeParameters.hh.

127  {
128  return splitLevel;
129  }
int splitLevel
TBranch split level.
template<class T>
void JROOT::JRootAddress< T >::release ( )
inlineinherited

Release memory.

Definition at line 42 of file JRootAddress.hh.

43  {
44  if (address != NULL) {
45 
46  delete address;
47 
48  address = NULL;
49  }
50  }
template<class T>
T* JROOT::JRootAddress< T >::getAddress ( ) const
inlineinherited

Get address.

Returns
address

Definition at line 58 of file JRootAddress.hh.

59  {
60  return address;
61  }

Member Data Documentation

template<class JClass_t>
JClass_t* JLANG::JPointer< JClass_t >::__p
protectedinherited

pointer to object

Definition at line 136 of file JPointer.hh.

TString JROOT::JTreeParameters::treeName
protectedinherited

TTree name.

Definition at line 133 of file JTreeParameters.hh.

TString JROOT::JTreeParameters::treeTitle
protectedinherited

TTree title.

Definition at line 134 of file JTreeParameters.hh.

TString JROOT::JTreeParameters::branchName
protectedinherited

TBranch name.

Definition at line 135 of file JTreeParameters.hh.

int JROOT::JTreeParameters::compressionLevel
protectedinherited

TBranch compression level.

Definition at line 136 of file JTreeParameters.hh.

int JROOT::JTreeParameters::basketSize
protectedinherited

TBranch basket size.

Definition at line 137 of file JTreeParameters.hh.

int JROOT::JTreeParameters::splitLevel
protectedinherited

TBranch split level.

Definition at line 138 of file JTreeParameters.hh.

template<class T>
T* JROOT::JRootAddress< T >::address
protectedinherited

Definition at line 64 of file JRootAddress.hh.


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