Jpp
JRootAddress.hh
Go to the documentation of this file.
1 #ifndef __JROOT__JROOTADDRESS__
2 #define __JROOT__JROOTADDRESS__
3 
4 
5 /**
6  * \author mdejong
7  */
8 
9 namespace JROOT {}
10 namespace JPP { using namespace JROOT; }
11 
12 namespace JROOT {
13 
14  /**
15  * Auxiliary classd for address handling within TTree or TChain.
16  */
17  template<class T>
18  struct JRootAddress {
19  /**
20  * Default constructor.
21  */
23  address(NULL)
24  {}
25 
26 
27  /**
28  * Copy constructor.
29  *
30  * Note that the internal address of this class is not copied but instead set to NULL.
31  *
32  * \param address ROOT address
33  */
35  address(NULL)
36  {}
37 
38 
39  /**
40  * Release memory.
41  */
42  void release()
43  {
44  if (address != NULL) {
45 
46  delete address;
47 
48  address = NULL;
49  }
50  }
51 
52 
53  /**
54  * Get address.
55  *
56  * \return address
57  */
58  T* getAddress() const
59  {
60  return address;
61  }
62 
63  protected:
64  T* address;
65  };
66 }
67 
68 #endif
JROOT
Auxiliary classes and methods for ROOT I/O.
Definition: JAbstractStreamer.hh:13
JROOT::JRootAddress::JRootAddress
JRootAddress()
Default constructor.
Definition: JRootAddress.hh:22
JROOT::JRootAddress::address
T * address
Definition: JRootAddress.hh:64
JROOT::JRootAddress::getAddress
T * getAddress() const
Get address.
Definition: JRootAddress.hh:58
JROOT::JRootAddress
Auxiliary classd for address handling within TTree or TChain.
Definition: JRootAddress.hh:18
JPP
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
Definition: JAAnetToolkit.hh:37
JROOT::JRootAddress::JRootAddress
JRootAddress(const JRootAddress &address)
Copy constructor.
Definition: JRootAddress.hh:34
JROOT::JRootAddress::release
void release()
Release memory.
Definition: JRootAddress.hh:42