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

In This Package:

RootIOUserData Class Reference

Tack on simple user data to a RootIOBaseObject. More...

#include <RootIOUserData.h>

List of all members.


Public Types

typedef std::map< std::string,
RootIOUserDataProxy * > 
ProxyCollection
 A collection of proxies associated to one stream.
typedef std::map< std::string,
ProxyCollection
ProxyMap
 Association of a ProxyCollection to a stream name.

Public Member Functions

 RootIOUserData ()
virtual ~RootIOUserData ()
ProxyMapinputMap ()
 Access the proxy map for input.
ProxyMapoutputMap ()
 Access the proxy map for output.
ProxyCollectionproxies (const std::string &streamname, ProxyMap &pm)
 Access the proxies associated with the given stream and map.
ProxyCollectioninput (const std::string &streamname)
 Access the proxies for a given input stream name.
ProxyCollectionoutput (const std::string &streamname)
 Access the proxies for a given output stream name.

Detailed Description

Tack on simple user data to a RootIOBaseObject.

Converters can arange for their presistent object to return a non-empty RootIOUserData object from the userData() method. It will be used to convert the map of user data into tree branches.

This is a refactoring of Dan Dwyer's PerBranches

Brett Viren <bv@bnl.gov> Thu Feb 24 09:40:38 2011

Definition at line 26 of file RootIOUserData.h.


Member Typedef Documentation

typedef std::map<std::string, RootIOUserDataProxy*> RootIOUserData::ProxyCollection

A collection of proxies associated to one stream.

Definition at line 33 of file RootIOUserData.h.

typedef std::map<std::string, ProxyCollection> RootIOUserData::ProxyMap

Association of a ProxyCollection to a stream name.

Definition at line 36 of file RootIOUserData.h.


Constructor & Destructor Documentation

RootIOUserData::RootIOUserData (  ) 

Definition at line 4 of file RootIOUserData.cc.

00005 {
00006 }

RootIOUserData::~RootIOUserData (  )  [virtual]

Definition at line 8 of file RootIOUserData.cc.

00009 {
00010 }


Member Function Documentation

RootIOUserData::ProxyMap & RootIOUserData::inputMap (  ) 

Access the proxy map for input.

Definition at line 12 of file RootIOUserData.cc.

00013 {
00014     static ProxyMap s_proxyMap;
00015     return s_proxyMap;
00016 }

RootIOUserData::ProxyMap & RootIOUserData::outputMap (  ) 

Access the proxy map for output.

Definition at line 17 of file RootIOUserData.cc.

00018 {
00019     static ProxyMap s_proxyMap;
00020     return s_proxyMap;
00021 }

RootIOUserData::ProxyCollection & RootIOUserData::proxies ( const std::string &  streamname,
ProxyMap pm 
)

Access the proxies associated with the given stream and map.

Definition at line 23 of file RootIOUserData.cc.

00025 {
00026     ProxyMap::iterator pit = pm.find(streamname);
00027     if (pit != pm.end()) { return pit->second ; }
00028 
00029     pm[streamname] = ProxyCollection();
00030     return pm[streamname];
00031 }

RootIOUserData::ProxyCollection & RootIOUserData::input ( const std::string &  streamname  ) 

Access the proxies for a given input stream name.

If one does not exist it will be created.

Definition at line 33 of file RootIOUserData.cc.

00034 {
00035     return this->proxies(streamname,this->inputMap());
00036 }

RootIOUserData::ProxyCollection & RootIOUserData::output ( const std::string &  streamname  ) 

Access the proxies for a given output stream name.

If one does not exist it will be created.

Definition at line 37 of file RootIOUserData.cc.

00038 {
00039     return this->proxies(streamname,this->outputMap());
00040 }


The documentation for this class was generated from the following files:
| 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