www.pudn.com > tristripper-1.1.0-beta-5.zip > policy.h


// 
// Copyright (C) 2004 Tanguy Fautré. 
// For conditions of distribution and use, 
// see copyright notice in tri_stripper.h 
// 
////////////////////////////////////////////////////////////////////// 
// SVN: $Id: policy.h 86 2005-06-08 17:47:27Z gpsnoopy $ 
////////////////////////////////////////////////////////////////////// 
 
#ifndef TRI_STRIPPER_HEADER_GUARD_POLICY_H 
#define TRI_STRIPPER_HEADER_GUARD_POLICY_H 
 
#include "public_types.h" 
#include "types.h" 
 
 
 
 
namespace triangle_stripper { 
 
	namespace detail { 
 
 
 
 
class policy 
{ 
public: 
	policy(size_t MinStripSize, bool Cache); 
 
	strip BestStrip() const; 
	void Challenge(strip Strip, size_t Degree, size_t CacheHits); 
 
private: 
	strip	m_Strip; 
	size_t	m_Degree; 
	size_t	m_CacheHits; 
 
	const size_t	m_MinStripSize; 
	const bool		m_Cache; 
}; 
 
 
 
 
 
inline policy::policy(size_t MinStripSize, bool Cache) 
: m_Degree(0), m_CacheHits(0), m_MinStripSize(MinStripSize), m_Cache(Cache) { } 
 
 
inline strip policy::BestStrip() const 
{ 
	return m_Strip; 
} 
 
 
 
 
	} // namespace detail 
 
} // namespace triangle_stripper 
 
 
 
 
#endif // TRI_STRIPPER_HEADER_GUARD_POLICY_H