| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

In This Package:

RootIOAddress< StreamType > Class Template Reference

An IOpaqueAddress for RootIO. More...

#include <RootIOAddress.h>

Inheritance diagram for RootIOAddress< StreamType >:

[legend]
Collaboration diagram for RootIOAddress< StreamType >:
[legend]
List of all members.

Public Member Functions

 RootIOAddress (const CLID &clid, const std::string &tespath)
 Initial construction with enough info to find the stream.
void setStream (StreamType *stream)
StreamType * stream () const
const std::string & tespath () const
 Return the TES (and TFile) path.
std::string tesdir () const
 Return just the TES (and TFile) path.
std::string treename () const
 Return just the tree / TES object name.
std::string branchname () const
 Return a branch name based on the TES path.
int entry () const
void setEntry (int entry)
virtual unsigned long addRef ()
virtual unsigned long release ()
virtual IRegistryregistry () const
virtual void setRegistry (IRegistry *pRegistry)
const CLIDclID () const
void setClID (const CLID &clid)
long svcType () const
void setSvcType (long typ)
virtual const std::string * par () const
virtual const unsigned long * ipar () const

Protected Attributes

unsigned long m_refCount
long m_svcType
CLID m_clID
std::string m_par [3]
unsigned long m_ipar [2]
IRegistrym_pRegistry

Private Attributes

StreamType * m_stream

Detailed Description

template<class StreamType>
class RootIOAddress< StreamType >

An IOpaqueAddress for RootIO.

bv@bnl.gov Sun Jun 29 10:12:48 2008

Definition at line 31 of file RootIOAddress.h.


Constructor & Destructor Documentation

template<class StreamType>
RootIOAddress< StreamType >::RootIOAddress ( const CLID clid,
const std::string &  tespath 
) [inline]

Initial construction with enough info to find the stream.

Definition at line 36 of file RootIOAddress.h.


Member Function Documentation

template<class StreamType>
void RootIOAddress< StreamType >::setStream ( StreamType *  stream  )  [inline]

Definition at line 41 of file RootIOAddress.h.

00041 { m_stream = stream; }

template<class StreamType>
StreamType* RootIOAddress< StreamType >::stream (  )  const [inline]

Definition at line 44 of file RootIOAddress.h.

00044 { return m_stream; }

template<class StreamType>
const std::string& RootIOAddress< StreamType >::tespath (  )  const [inline]

Return the TES (and TFile) path.

The last element is the tree / TES object name.

Definition at line 49 of file RootIOAddress.h.

00049 { return m_par[0]; }

template<class StreamType>
std::string RootIOAddress< StreamType >::tesdir (  )  const [inline]

Return just the TES (and TFile) path.

As above but the TES object name is removed. If top level, then "/" is returned.

Definition at line 53 of file RootIOAddress.h.

00053                              {
00054         std::string::size_type slash = m_par[0].rfind('/');
00055         if (!slash || slash == std::string::npos) return "/";
00056         return m_par[0].substr(0,slash);
00057     }

template<class StreamType>
std::string RootIOAddress< StreamType >::treename (  )  const [inline]

Return just the tree / TES object name.

Definition at line 60 of file RootIOAddress.h.

00060                                {
00061         std::string::size_type slash = m_par[0].rfind('/');
00062         if (!slash || slash == std::string::npos) return m_par[0];
00063         return m_par[0].substr(slash+1);
00064     }

template<class StreamType>
std::string RootIOAddress< StreamType >::branchname (  )  const [inline]

Return a branch name based on the TES path.

Definition at line 67 of file RootIOAddress.h.

00067                                  {
00068         return RootIO::branchname(tespath());
00069     }

template<class StreamType>
int RootIOAddress< StreamType >::entry (  )  const [inline]

Definition at line 71 of file RootIOAddress.h.

00071 { return m_ipar[0]; }

template<class StreamType>
void RootIOAddress< StreamType >::setEntry ( int  entry  )  [inline]

Definition at line 72 of file RootIOAddress.h.

00072 { m_ipar[0] = entry; }


Member Data Documentation

template<class StreamType>
StreamType* RootIOAddress< StreamType >::m_stream [mutable, private]

Definition at line 33 of file RootIOAddress.h.


The documentation for this class was generated from the following file:
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Mon Apr 11 20:18:21 2011 for RootIOSvc by doxygen 1.4.7