Panda3D
hashGeneratorBase.h
Go to the documentation of this file.
1 /**
2  * PANDA 3D SOFTWARE
3  * Copyright (c) Carnegie Mellon University. All rights reserved.
4  *
5  * All use of this software is subject to the terms of the revised BSD
6  * license. You should have received a copy of this license along
7  * with this source code in a file named "LICENSE."
8  *
9  * @file hashGeneratorBase.h
10  * @author drose
11  * @date 2001-05-14
12  */
13 
14 #ifndef HASHGENERATORBASE_H
15 #define HASHGENERATORBASE_H
16 
17 #include "pandabase.h"
18 
19 /**
20  * This is the base class for a number of classes that generate arbitrary hash
21  * numbers for complex objects, based fundamentally on a sequence of integers.
22  *
23  * There are no virtual functions here, for performance reasons; it is
24  * generally desirable to generate hash numbers as quickly as possible. The
25  * derived classes must redefine all the basic functionality.
26  *
27  * Thus, a compile-time decision must be made for the kind of HashGenerator
28  * that is appropriate for a particular class.
29  */
30 class EXPCL_PANDA_EXPRESS HashGeneratorBase {
31 public:
32  INLINE HashGeneratorBase();
33 
34  INLINE size_t get_hash() const;
35 
36 protected:
37  size_t _hash;
38 };
39 
40 #include "hashGeneratorBase.I"
41 
42 #endif
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
This is the base class for a number of classes that generate arbitrary hash numbers for complex objec...