/*
 * (c) 2005 Research Group Dr. Fuhrmann, University of Karlsruhe, Germany
 * All rights reserved.
 *
 * Author:
 *         Stefan Denk <denk@ira.uka.de>
 *         Kendy Kutzner <kutzner@ira.uka.de>
 *
 * $Id: video_hash.h,v 1.3 2005/12/27 12:12:33 kutzner Exp $
 *
 */

#ifndef _VIDEO_HASH_H_
#define _VIDEO_HASH_H_

#include <ostream>
#include <vector>
using namespace std;

class video_hash {
	public:
		uint hash;
		uint len;
		video_hash(uint hash, uint len) : hash(hash), len(len) {}
		friend ostream& operator<<(ostream& os, const video_hash& v)
		{ return os << v.hash << '#' << v.len; }		/// use # as delimiter (all the nice ones have already been taken)
		video_hash(const string &s);
		string tostring();
};

/** Type to hold many hash values.
 * Currently vector is choosen, because insert and delete operations are not expected.
 */
typedef vector<video_hash> hashes_t;


#endif // _VIDEO_HASH_H_
