kwave  18.07.70
Kwave::Triple< T1, T2, T3 > Class Template Reference

#include <Triple.h>

Collaboration diagram for Kwave::Triple< T1, T2, T3 >:
Collaboration graph

Public Member Functions

 Triple ()
 
 Triple (const T1 &first, const T2 &second, const T3 &third)
 
 Triple (const Triple &copy)
 
virtual ~Triple ()
 
Triple< T1, T2, T3 > & operator= (const Triple< T1, T2, T3 > &t2)
 
bool operator== (const Triple< T1, T2, T3 > &t2) const
 
const T1 & first () const
 
const T2 & second () const
 
const T3 & third () const
 

Private Attributes

T1 m_first
 
T2 m_second
 
T3 m_third
 

Detailed Description

template<class T1, class T2, class T3>
class Kwave::Triple< T1, T2, T3 >

Definition at line 26 of file Triple.h.

Constructor & Destructor Documentation

◆ Triple() [1/3]

template<class T1, class T2, class T3>
Kwave::Triple< T1, T2, T3 >::Triple ( )
inline

Stupid default constructor (sometimes needed but should not)

Definition at line 30 of file Triple.h.

31  :m_first(),
32  m_second(),
33  m_third()
34  {}
T3 m_third
Definition: Triple.h:87
T1 m_first
Definition: Triple.h:81
T2 m_second
Definition: Triple.h:84

◆ Triple() [2/3]

template<class T1, class T2, class T3>
Kwave::Triple< T1, T2, T3 >::Triple ( const T1 &  first,
const T2 &  second,
const T3 &  third 
)
inline

Constructor with initialization data

Definition at line 37 of file Triple.h.

38  :m_first(first),
40  m_third(third)
41  {}
T3 m_third
Definition: Triple.h:87
const T2 & second() const
Definition: Triple.h:74
T1 m_first
Definition: Triple.h:81
const T3 & third() const
Definition: Triple.h:77
const T1 & first() const
Definition: Triple.h:71
T2 m_second
Definition: Triple.h:84

◆ Triple() [3/3]

template<class T1, class T2, class T3>
Kwave::Triple< T1, T2, T3 >::Triple ( const Triple< T1, T2, T3 > &  copy)
inline

Copy constructor

Definition at line 44 of file Triple.h.

45  :m_first(copy.first()),
46  m_second(copy.second()),
47  m_third(copy.third())
48  {}
T3 m_third
Definition: Triple.h:87
T1 m_first
Definition: Triple.h:81
T2 m_second
Definition: Triple.h:84

◆ ~Triple()

template<class T1, class T2, class T3>
virtual Kwave::Triple< T1, T2, T3 >::~Triple ( )
inlinevirtual

Destructor

Definition at line 51 of file Triple.h.

51 {}

Member Function Documentation

◆ first()

template<class T1, class T2, class T3>
const T1& Kwave::Triple< T1, T2, T3 >::first ( ) const
inline

returns a reference to the firstelement

Definition at line 71 of file Triple.h.

References Kwave::Triple< T1, T2, T3 >::m_first.

Referenced by Kwave::Triple< T1, T2, T3 >::operator=(), and Kwave::Triple< T1, T2, T3 >::operator==().

71 { return m_first; }
T1 m_first
Definition: Triple.h:81
Here is the caller graph for this function:

◆ operator=()

template<class T1, class T2, class T3>
Triple<T1,T2,T3>& Kwave::Triple< T1, T2, T3 >::operator= ( const Triple< T1, T2, T3 > &  t2)
inline

assignment operator

Definition at line 54 of file Triple.h.

References Kwave::Triple< T1, T2, T3 >::first(), Kwave::Triple< T1, T2, T3 >::m_first, Kwave::Triple< T1, T2, T3 >::m_second, Kwave::Triple< T1, T2, T3 >::m_third, Kwave::Triple< T1, T2, T3 >::second(), and Kwave::Triple< T1, T2, T3 >::third().

54  {
55  m_first = t2.first();
56  m_second = t2.second();
57  m_third = t2.third();
58  return *this;
59  }
T3 m_third
Definition: Triple.h:87
T1 m_first
Definition: Triple.h:81
T2 m_second
Definition: Triple.h:84
Here is the call graph for this function:

◆ operator==()

template<class T1, class T2, class T3>
bool Kwave::Triple< T1, T2, T3 >::operator== ( const Triple< T1, T2, T3 > &  t2) const
inline

compare operator

Definition at line 62 of file Triple.h.

References Kwave::Triple< T1, T2, T3 >::first(), Kwave::Triple< T1, T2, T3 >::m_first, Kwave::Triple< T1, T2, T3 >::m_second, Kwave::Triple< T1, T2, T3 >::m_third, Kwave::Triple< T1, T2, T3 >::second(), and Kwave::Triple< T1, T2, T3 >::third().

62  {
63  return (
64  ( m_first == t2.first() ) &&
65  ( m_second == t2.second() ) &&
66  ( m_third == t2.third() )
67  );
68  }
T3 m_third
Definition: Triple.h:87
T1 m_first
Definition: Triple.h:81
T2 m_second
Definition: Triple.h:84
Here is the call graph for this function:

◆ second()

template<class T1, class T2, class T3>
const T2& Kwave::Triple< T1, T2, T3 >::second ( ) const
inline

returns a reference to the second element

Definition at line 74 of file Triple.h.

References Kwave::Triple< T1, T2, T3 >::m_second.

Referenced by Kwave::Triple< T1, T2, T3 >::operator=(), and Kwave::Triple< T1, T2, T3 >::operator==().

74 { return m_second; }
T2 m_second
Definition: Triple.h:84
Here is the caller graph for this function:

◆ third()

template<class T1, class T2, class T3>
const T3& Kwave::Triple< T1, T2, T3 >::third ( ) const
inline

returns a reference to the third element

Definition at line 77 of file Triple.h.

References Kwave::Triple< T1, T2, T3 >::m_third.

Referenced by Kwave::Triple< T1, T2, T3 >::operator=(), and Kwave::Triple< T1, T2, T3 >::operator==().

77 { return m_third; }
T3 m_third
Definition: Triple.h:87
Here is the caller graph for this function:

Member Data Documentation

◆ m_first

template<class T1, class T2, class T3>
T1 Kwave::Triple< T1, T2, T3 >::m_first
private

◆ m_second

template<class T1, class T2, class T3>
T2 Kwave::Triple< T1, T2, T3 >::m_second
private

◆ m_third

template<class T1, class T2, class T3>
T3 Kwave::Triple< T1, T2, T3 >::m_third
private

The documentation for this class was generated from the following file: