//===========================================================================//
// File:	NetBitDepts.hpp											
//---------------------------------------------------------------------------//
//   Date    Who  Modification                                               //
// --------  ---  ---------------------------------------------------------- //
// 01/06/1999  JSE  Inital coding
//---------------------------------------------------------------------------//
// Copyright (C) 1998, Microsoft Corp.										 //
// All Rights reserved worldwide                                             //
// This unpublished sourcecode is PROPRIETARY and CONFIDENTIAL               //
//===========================================================================//


#pragma once
#include "MW4.hpp"
#include "NetConstants.hpp"
#include "NetUpdateManager.hpp"
#include "MWEntityManager.hpp"

namespace MechWarrior4 
{
	class BitDepthManager
	{
	public:

		enum {
			LowBandwidth = 0,
			MediumBandwidth,
			HighBandwidth,
			BandwidthTypeCount
		};


		int randomKey;

		int **lowBitDepths;
		int **medBitDepths;
		int **highBitDepths;

		int **bitDepths[BandwidthTypeCount];

		UpdateRate *updateRates[BandwidthTypeCount];
		
		void InitilizeBitDepths(void);
		void TerminateBitDepths(void);

		static int BitDepth(int update_type, int update_entry_id, int bandwidth = MediumBandwidth);
		static UpdateRate GetUpdateRate(int update_type, int bandwidth = MediumBandwidth);

	};

};