HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
GA_AIFCompare.h
Go to the documentation of this file.
1 /*
2  * PROPRIETARY INFORMATION. This software is proprietary to
3  * Side Effects Software Inc., and is not to be reproduced,
4  * transmitted, or disclosed in any way without written permission.
5  *
6  * NAME: GA_AIFCompare.h ( GA Library, C++)
7  *
8  * COMMENTS: Attribute Interface class for comparison methods
9  */
10 
11 #ifndef __GA_AIFCompare__
12 #define __GA_AIFCompare__
13 
14 #include "GA_API.h"
15 #include "GA_Types.h"
16 
17 #include <SYS/SYS_Types.h>
18 
19 
20 class GA_Attribute;
21 class GA_Range;
22 
23 
24 /// @brief Attribute Interface class to perform comparisons on attributes
25 ///
26 /// This class provides the interface to compare the attribute data.
28 {
29 public:
30  GA_AIFCompare();
31  virtual ~GA_AIFCompare();
32 
33  /// @{
34  /// Compares attributes a and b for a given offset or range, and sets
35  /// the result argument to true if the two attributes are deemed equal,
36  /// or to false if they are different.
37  /// Returns true if the comparison operation was successful, or
38  /// false if there was some kind of error.
39  virtual bool isEqual(bool &result,
40  const GA_Attribute &a, GA_Offset ai,
41  const GA_Attribute &b, GA_Offset bi) const = 0;
42  virtual bool isEqual(bool &result,
43  const GA_Attribute &a, const GA_Range &ai,
44  const GA_Attribute &b, const GA_Range &bi) const =0;
45 
46  virtual bool isAlmostEqual(bool &result,
47  const GA_Attribute &a, GA_Offset ai,
48  const GA_Attribute &b, GA_Offset bi,
49  int ulps = 50) const = 0;
50  virtual bool isAlmostEqual(bool &result,
51  const GA_Attribute &a, const GA_Range &ai,
52  const GA_Attribute &b, const GA_Range &bi,
53  int ulps = 50) const = 0;
54  /// @}
55 
56  virtual uint hash(const GA_Attribute &a, const GA_Offset i) const { return 0; }
57 };
58 
59 #endif
60 
Definition of a geometry attribute.
Definition: GA_Attribute.h:189
virtual uint hash(const GA_Attribute &a, const GA_Offset i) const
Definition: GA_AIFCompare.h:56
GLboolean GLboolean GLboolean GLboolean a
Definition: glcorearb.h:1221
#define GA_API
Definition: GA_API.h:12
png_uint_32 i
Definition: png.h:2877
A range of elements in an index-map.
Definition: GA_Range.h:42
GA_Size GA_Offset
Definition: GA_Types.h:617
Attribute Interface class to perform comparisons on attributes.
Definition: GA_AIFCompare.h:27
GLboolean GLboolean GLboolean b
Definition: glcorearb.h:1221
unsigned int uint
Definition: SYS_Types.h:33