<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> <title>Dirac Video Codec</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> </head><body bgcolor="#ffffff"> <h1 align="center" color="#606080"> Dirac - A Video Codec </h1> <p align="center"> Created by the <a href="http://www.bbc.co.uk">British Broadcasting Corporation</a>. </p> <hr> <!-- Generated by Doxygen 1.5.9 --> <div class="contents"> <h1>motion.h File Reference</h1><code>#include <<a class="el" href="a00171_source.html">libdirac_common/common.h</a>></code><br> <code>#include <algorithm></code><br> <p> <a href="a00200_source.html">Go to the source code of this file.</a><h2>Classes</h2> <ul> <li>class <a class="el" href="a00091.html">dirac::MotionVector< T ></a> <dl class="el"><dd class="mdescRight">Motion vector class - just a pair. <a href="a00091.html#_details">More...</a><br></dl><li>class <a class="el" href="a00092.html">dirac::MvCostData</a> <dl class="el"><dd class="mdescRight">Class for recording costs derived in motion estimation. <a href="a00092.html#_details">More...</a><br></dl><li>class <a class="el" href="a00093.html">dirac::MvData</a> <dl class="el"><dd class="mdescRight">Class for all the motion vector data. <a href="a00093.html#_details">More...</a><br></dl><li>class <a class="el" href="a00082.html">dirac::MEData</a> <dl class="el"><dd class="mdescRight">Class for all the motion estimation data. <a href="a00082.html#_details">More...</a><br></dl></ul> <h2>Namespaces</h2> <ul> <li>namespace <a class="el" href="a00234.html">dirac</a> <dl class="el"><dd class="mdescRight">Definition of class <a class="el" href="a00130.html" title="A random access point within a Dirac bytestream.">SequenceHeaderByteIO</a>. <br></dl> <p> </ul> <h2>Typedefs</h2> <ul> <li>typedef MotionVector< int > <a class="el" href="a00234.html#7782429895119df12cea135b40666613">dirac::MVector</a> <dl class="el"><dd class="mdescRight">MVector class is a vector of ints. <a href="#7782429895119df12cea135b40666613"></a><br></dl><li>typedef MotionVector< int > <a class="el" href="a00234.html#caaff47bc8c3f9776ed334351006891e">dirac::ImageCoords</a> <dl class="el"><dd class="mdescRight">ImageCoords class is a vector of ints. <a href="#caaff47bc8c3f9776ed334351006891e"></a><br></dl><li>typedef TwoDArray< MVector > <a class="el" href="a00234.html#f7bfef46e009be4bb8670d497278e957">dirac::MvArray</a> <dl class="el"><dd class="mdescRight">MvArray is a two-D array of MVectors. <a href="#f7bfef46e009be4bb8670d497278e957"></a><br></dl><li>typedef TwoDArray<br class="typebreak"> < MotionVector< float > > <a class="el" href="a00234.html#dc8c140258c96e5f2ada27b424c21031">dirac::MvFloatArray</a> <dl class="el"><dd class="mdescRight">An array of float-based motion vectors for doing global motion calcs. <a href="#dc8c140258c96e5f2ada27b424c21031"></a><br></dl></ul> <h2>Enumerations</h2> <ul> <li>enum <a class="el" href="a00234.html#96972fd3f02bb2b4dedee98363564c6c">dirac::MvElement</a> { <a class="el" href="a00234.html#96972fd3f02bb2b4dedee98363564c6c4f862ba901339c0f6797d67d38717bdb">dirac::HORIZONTAL</a>, <a class="el" href="a00234.html#96972fd3f02bb2b4dedee98363564c6c47236624b4df1aea786eb11567c22cde">dirac::VERTICAL</a> } <dl class="el"><dd class="mdescRight">Horizontal or vertical. <a href="a00234.html#96972fd3f02bb2b4dedee98363564c6c">More...</a><br></dl></ul> <h2>Functions</h2> <ul> <li>template<class T > std::ostream & <a class="el" href="a00234.html#96055df832ee7286936db017d9624e69">dirac::operator<<</a> (std::ostream &stream, MotionVector< T > &mv) <dl class="el"><dd class="mdescRight">Overloaded operator<< for <a class="el" href="a00091.html" title="Motion vector class - just a pair.">MotionVector</a> class for output to stream. <a href="#96055df832ee7286936db017d9624e69"></a><br></dl><li>template<class T > std::istream & <a class="el" href="a00234.html#ec252ef50e8c639d75a72fc1045d7f1b">dirac::operator>></a> (std::istream &stream, MotionVector< T > &mv) <dl class="el"><dd class="mdescRight">Overloaded operator>> for <a class="el" href="a00091.html" title="Motion vector class - just a pair.">MotionVector</a> class for input from stream. <a href="#ec252ef50e8c639d75a72fc1045d7f1b"></a><br></dl><li>int <a class="el" href="a00234.html#9ac1cfe6f37daca57b96f4cf42682910">dirac::Median</a> (const int val1, const int val2, const int val3) <dl class="el"><dd class="mdescRight">Return the median of 3 integers. <a href="#9ac1cfe6f37daca57b96f4cf42682910"></a><br></dl><li>MVector <a class="el" href="a00234.html#627c6c67b838b1017d1c40e635068a5a">dirac::MvMedian</a> (const MVector &mv1, const MVector &mv2, const MVector &mv3) <dl class="el"><dd class="mdescRight">Return the median of three motion vectors. <a href="#627c6c67b838b1017d1c40e635068a5a"></a><br></dl><li>int <a class="el" href="a00234.html#699a93420d21ee2254ee3f59e24bec23">dirac::Median</a> (const std::vector< int > &val_list) <dl class="el"><dd class="mdescRight">Return the median of a set of integers. <a href="#699a93420d21ee2254ee3f59e24bec23"></a><br></dl><li>MVector <a class="el" href="a00234.html#9e5f9f3f6e600230a25f140490fafc9d">dirac::MvMedian</a> (const std::vector< MVector > &vect_list) <dl class="el"><dd class="mdescRight">Return the median of a set of (up to 4) motion vectors. <a href="#9e5f9f3f6e600230a25f140490fafc9d"></a><br></dl><li>MVector <a class="el" href="a00234.html#5dadb3052be537159f72b9ef0a44fddb">dirac::MvMean</a> (const MVector &mv1, const MVector &mv2) <dl class="el"><dd class="mdescRight">Return the mean of two motion vectors. <a href="#5dadb3052be537159f72b9ef0a44fddb"></a><br></dl><li>int <a class="el" href="a00234.html#8922035cd0995a06de4d499571bbe42f">dirac::Norm2</a> (const MVector &mv) <dl class="el"><dd class="mdescRight">Return the squared length of a motion vector. <a href="#8922035cd0995a06de4d499571bbe42f"></a><br></dl><li>int <a class="el" href="a00234.html#fa05bdcf95317206a28d2fa53f14d163">dirac::Norm1</a> (const MVector &mv) <dl class="el"><dd class="mdescRight">Return the sum of the lengths of a motion vector's componets. <a href="#fa05bdcf95317206a28d2fa53f14d163"></a><br></dl><li>unsigned int <a class="el" href="a00234.html#66649bcd754d54d2ee4c65010f827415">dirac::GetUMean</a> (std::vector< unsigned int > &values) <dl class="el"><dd class="mdescRight">Return the mean of a set of unsigned integer values. <a href="#66649bcd754d54d2ee4c65010f827415"></a><br></dl><li>int <a class="el" href="a00234.html#ca1824fa04de660ffbfab20ec2200cf6">dirac::GetSMean</a> (std::vector< int > &values) <dl class="el"><dd class="mdescRight">Return the mean of a set of signed integer values. <a href="#ca1824fa04de660ffbfab20ec2200cf6"></a><br></dl></ul> </div> <hr> <p align="center"><small> © 2004 British Broadcasting Corporation. Dirac code licensed under the <a href="http://www.mozilla.org/MPL/">Mozilla Public License (MPL) Version 1.1</a>.<br> HTML documentation generated by Dimitri van Heesch's excellent <a href="http://www.doxygen.org">Doxygen</a> tool. </small></p> </body> </html>