// This file is generated by WOK (CPPExt).
// Please do not edit this file; modify original file instead.
// The copyright and license terms as defined for the original file apply to 
// this header file considered to be the "object code" form of the original source.

#ifndef _Transfer_FindHasher_HeaderFile
#define _Transfer_FindHasher_HeaderFile

#include <Standard.hxx>
#include <Standard_DefineAlloc.hxx>
#include <Standard_Macro.hxx>

#include <Standard_Integer.hxx>
#include <Handle_Transfer_Finder.hxx>
#include <Standard_Boolean.hxx>
class Transfer_Finder;


//! FindHasher defines HashCode for Finder, which is : ask a
//! Finder its HashCode !  Because this is the Finder itself which
//! brings the HashCode for its Key
//!
//! This class complies to the template given in TCollection by
//! MapHasher itself
class Transfer_FindHasher 
{
public:

  DEFINE_STANDARD_ALLOC

  
  //! Returns a HashCode in the range <0,Upper> for a Finder :
  //! asks the Finder its HashCode then transforms it to be in the
  //! required range
  Standard_EXPORT static   Standard_Integer HashCode (const Handle(Transfer_Finder)& K, const Standard_Integer Upper) ;
  
  //! Returns True if two keys are the same.
  //! The test does not work on the Finders themselves but by
  //! calling their methods Equates
  Standard_EXPORT static   Standard_Boolean IsEqual (const Handle(Transfer_Finder)& K1, const Handle(Transfer_Finder)& K2) ;




protected:





private:





};







#endif // _Transfer_FindHasher_HeaderFile
