# Dirac - A Video Codec

Created by the British Broadcasting Corporation.

# dirac::MotionVector< T > Class Template Reference

Motion vector class - just a pair.

`#include <motion.h>`

List of all members.

## Public Member Functions

- MotionVector (T a, T b)
    Constructor.
- MotionVector ()
    Default construct - sets components to 0.
- MotionVector (T a)
    Constructor.
- MotionVector< T > operator+ (const MotionVector< T > &argument) const
    Addition.
- MotionVector< T > operator- (const MotionVector< T > &argument) const
    Subtraction.
- MotionVector< T > operator* (const float argument) const
    Scalar multiplication.
- MotionVector< T > operator* (const int argument) const
    Scalar multiplication.
- MotionVector< T > operator<< (const int argument) const
    Bitshift of each component.
- MotionVector< T > operator>> (const int argument) const
    Bitshift of each component.
- T & operator[] (const int pos)
    Array-style element access.
- const T & operator[] (const int pos) const
    Array-style element access.

## Public Attributes

- T x
    x and y components
- T y

### template<class T>
class dirac::MotionVector< T >

## Constructor & Destructor Documentation

template<class T>

dirac::MotionVector< T >::MotionVector | ( | T | a,
|  | T | b |
| ) |  |  | `[inline]`

template<class T>

dirac::MotionVector< T >::MotionVector | ( |  | ) | `[inline]`

template<class T>

dirac::MotionVector< T >::MotionVector | ( | T | a | ) | `[inline]`

## Member Function Documentation

template<class T >

MotionVector< T > dirac::MotionVector< T >::operator* | ( | const int | argument | ) | const`[inline]`

References dirac::MotionVector< T >::x, and dirac::MotionVector< T >::y.

template<class T >

MotionVector< T > dirac::MotionVector< T >::operator* | ( | const float | argument | ) | const`[inline]`

References dirac::MotionVector< T >::x, and dirac::MotionVector< T >::y.

template<class T>

MotionVector< T > dirac::MotionVector< T >::operator+ | ( | const MotionVector< T > & | argument | ) | const`[inline]`

References dirac::MotionVector< T >::x, and dirac::MotionVector< T >::y.

template<class T>

MotionVector< T > dirac::MotionVector< T >::operator- | ( | const MotionVector< T > & | argument | ) | const`[inline]`

References dirac::MotionVector< T >::x, and dirac::MotionVector< T >::y.

template<class T >

MotionVector< T > dirac::MotionVector< T >::operator<< | ( | const int | argument | ) | const`[inline]`

References dirac::MotionVector< T >::x, and dirac::MotionVector< T >::y.

template<class T >

MotionVector< T > dirac::MotionVector< T >::operator>> | ( | const int | argument | ) | const`[inline]`

References dirac::MotionVector< T >::x, and dirac::MotionVector< T >::y.

template<class T>

const T& dirac::MotionVector< T >::operator[] | ( | const int | pos | ) | const`[inline]`

template<class T>

T& dirac::MotionVector< T >::operator[] | ( | const int | pos | ) | `[inline]`

## Member Data Documentation

template<class T>

T dirac::MotionVector< T >::x

Referenced by dirac::Norm1(), dirac::Norm2(), dirac::MotionVector< T >::operator*(), dirac::MotionVector< T >::operator+(), dirac::MotionVector< T >::operator-(), dirac::operator<<(), dirac::MotionVector< T >::operator<<(), dirac::operator>>(), dirac::MotionVector< T >::operator>>(), and dirac::MotionVector< int >::operator[]().

template<class T>

T dirac::MotionVector< T >::y

Referenced by dirac::Norm1(), dirac::Norm2(), dirac::MotionVector< T >::operator*(), dirac::MotionVector< T >::operator+(), dirac::MotionVector< T >::operator-(), dirac::MotionVector< T >::operator<<(), dirac::operator>>(), dirac::MotionVector< T >::operator>>(), and dirac::MotionVector< int >::operator[]().

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

- motion.h

© 2004 British Broadcasting Corporation. Dirac code licensed under the Mozilla Public License (MPL) Version 1.1.
HTML documentation generated by Dimitri van Heesch's excellent Doxygen tool.