ATLAS Offline Software
Loading...
Searching...
No Matches
AuxElementComplete.icc
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3*/
4
5// $Id: AuxElementComplete.icc 581165 2014-02-03 10:42:54Z krasznaa $
6/**
7 * @file AthContainers/AuxElementComplete.icc
8 * @author scott snyder <snyder@bnl.gov>
9 * @date Oct, 2013
10 * @brief Wrapper to automatically create a private store for an element.
11 */
12
13
14namespace SG {
15
16
17/**
18 * @brief Default constructor.
19 *
20 * A private store is created for this object.
21 */
22template <class T>
23inline
24AuxElementComplete<T>::AuxElementComplete()
25{
26 this->makePrivateStore();
27}
28
29
30/**
31 * @brief Generic constructor.
32 * @param u1 Constructor argument.
33 *
34 * A private store is created for this object.
35 */
36template <class T>
37template <class U1>
38inline
39AuxElementComplete<T>::AuxElementComplete (const U1& u1)
40 : T(u1)
41{
42 this->makePrivateStore(u1);
43}
44
45
46/**
47 * @brief Copy constructor.
48 * @param other The object being copied.
49 *
50 * A private store is created for this object.
51 */
52template <class T>
53inline
54AuxElementComplete<T>::AuxElementComplete (const AuxElementComplete& other)
55 : T(other)
56{
57 this->makePrivateStore(other);
58}
59
60
61} // namespace SG