ESyS-Particle  4.0.1
triplet.h
1 
2 // //
3 // Copyright (c) 2003-2011 by The University of Queensland //
4 // Earth Systems Science Computational Centre (ESSCC) //
5 // http://www.uq.edu.au/esscc //
6 // //
7 // Primary Business: Brisbane, Queensland, Australia //
8 // Licensed under the Open Software License version 3.0 //
9 // http://www.opensource.org/licenses/osl-3.0.php //
10 // //
12 
13 #ifndef ESYS_LSMTRIPLET_H
14 #define ESYS_LSMTRIPLET_H
15 
16 #include <boost/tuple/tuple.hpp>
17 
18 namespace esys
19 {
20  namespace lsm
21  {
22  template <typename T1, typename T2, typename T3>
23  class triplet : public boost::tuple<T1,T2,T3>
24  {
25  public:
26  typedef boost::tuple<T1,T2,T3> inherited;
27  inline triplet() : inherited()
28  {
29  }
30 
31  inline triplet(const T1 &t1, const T2 &t2, const T3 &t3)
32  : inherited(t1,t2,t3)
33  {
34  }
35 
36  inline triplet(const triplet &trip)
37  : inherited(trip)
38  {
39  }
40 
41  inline triplet &operator=(const triplet &trip)
42  {
43  inherited::operator=(trip);
44  return *this;
45  }
46  };
47  };
48 };
49 
50 #endif