ESyS-Particle  4.0.1
quintuple.h
00001 
00002 //                                                         //
00003 // Copyright (c) 2003-2011 by The University of Queensland //
00004 // Earth Systems Science Computational Centre (ESSCC)      //
00005 // http://www.uq.edu.au/esscc                              //
00006 //                                                         //
00007 // Primary Business: Brisbane, Queensland, Australia       //
00008 // Licensed under the Open Software License version 3.0    //
00009 // http://www.opensource.org/licenses/osl-3.0.php          //
00010 //                                                         //
00012 
00013 
00014 #ifndef ESYS_LSMQUINTUPLE_H
00015 #define ESYS_LSMQUINTUPLE_H
00016 
00017 #include <boost/tuple/tuple.hpp>
00018 
00019 namespace esys
00020 {
00021   namespace lsm
00022   {
00023     template <typename T1, typename T2, typename T3, typename T4, typename T5>
00024     class quintuple : public boost::tuple<T1,T2,T3,T4,T5>
00025     {
00026     public:
00027       typedef boost::tuple<T1,T2,T3,T4,T5> inherited;
00028       inline quintuple() : inherited()
00029       {
00030       }
00031 
00032       inline quintuple(const T1 &t1, const T2 &t2, const T3 &t3, const T4 &t4, const T5 &t5)
00033         : inherited(t1,t2,t3,t4,t5)
00034       {
00035       }
00036 
00037       inline quintuple(const quintuple &quin)
00038         : inherited(quin)
00039       {
00040       }
00041 
00042       inline quintuple &operator=(const quintuple &quin)
00043       {
00044         inherited::operator=(quin);
00045         return *this;
00046       }
00047     };
00048   };
00049 };
00050 
00051 #endif