| Rhino C++ API
    8.24
    | 
#include <opennurbs_string.h>
| Public Member Functions | |
| ON_NameHash ()=default | |
| ON_NameHash (const ON_NameHash &)=default | |
| ~ON_NameHash ()=default | |
| ON__UINT32 | DataCRC (ON__UINT32 current_remainder) const | 
| 32 bit hash of id and mapped name  More... | |
| ON__UINT32 | IdCRC (ON__UINT32 current_remainder) const | 
| 32 bit hash of id  More... | |
| bool | IgnoreCase () const | 
| ON__UINT32 | Internal_DotNetInterfaceGetFlags () const | 
| bool | IsEmptyNameHash () const | 
| bool | IsFilePathHash () const | 
| bool | IsInvalidNameHash () const | 
| bool | IsValidAndNotEmpty () const | 
| ON__UINT32 | MappedNameCodePointCount () const | 
| ON_SHA1_Hash | MappedNameSha1Hash () const | 
| SHA-1 hash of mapped name.  More... | |
| ON__UINT32 | NameCRC (ON__UINT32 current_remainder) const | 
| 32 bit hash of id and mapped name  More... | |
| ON_NameHash & | operator= (const ON_NameHash &)=default | 
| ON_UUID | ParentId () const | 
| Static Public Member Functions | |
| static int | Compare (const ON_NameHash &a, const ON_NameHash &b) | 
| static int | CompareNameSHA1 (const ON_NameHash &a, const ON_NameHash &b) | 
| static int | CompareNameSHA1Ptr (const ON_NameHash *a, const ON_NameHash *b) | 
| static int | CompareParentId (const ON_NameHash &a, const ON_NameHash &b) | 
| static int | CompareParentIdPtr (const ON_NameHash *a, const ON_NameHash *b) | 
| static int | ComparePtr (const ON_NameHash *a, const ON_NameHash *b) | 
| static ON_NameHash | Create (const char *utf8_name) | 
| static ON_NameHash | Create (const char *utf8_name, bool bIgnoreCase) | 
| static ON_NameHash | Create (const ON_String &name, bool bIgnoreCase) | 
| static ON_NameHash | Create (const ON_String &utf8_name) | 
| static ON_NameHash | Create (const ON_UUID &parent_id, const char *utf8_name) | 
| static ON_NameHash | Create (const ON_UUID &parent_id, const char *utf8_name, bool bIgnoreCase) | 
| static ON_NameHash | Create (const ON_UUID &parent_id, const ON_String &name) | 
| static ON_NameHash | Create (const ON_UUID &parent_id, const ON_String &utf8_name, bool bIgnoreCase) | 
| static ON_NameHash | Create (const ON_UUID &parent_id, const ON_wString &name) | 
| static ON_NameHash | Create (const ON_UUID &parent_id, const ON_wString &name, bool bIgnoreCase) | 
| static ON_NameHash | Create (const ON_UUID &parent_id, const wchar_t *name) | 
| static ON_NameHash | Create (const ON_UUID &parent_id, const wchar_t *name, bool bIgnoreCase) | 
| static ON_NameHash | Create (const ON_UUID &parent_id, size_t length, const char *utf8_name) | 
| static ON_NameHash | Create (const ON_UUID &parent_id, size_t length, const char *utf8_name, bool bIgnoreCase) | 
| static ON_NameHash | Create (const ON_UUID &parent_id, size_t length, const wchar_t *name) | 
| static ON_NameHash | Create (const ON_UUID &parent_id, size_t length, const wchar_t *name, bool bIgnoreCase) | 
| static ON_NameHash | Create (const ON_wString &name) | 
| static ON_NameHash | Create (const ON_wString &name, bool bIgnoreCase) | 
| static ON_NameHash | Create (const wchar_t *name) | 
| static ON_NameHash | Create (const wchar_t *name, bool bIgnoreCase) | 
| static ON_NameHash | Create (size_t length, const char *utf8_name) | 
| static ON_NameHash | Create (size_t length, const char *utf8_name, bool bIgnoreCase) | 
| static ON_NameHash | Create (size_t length, const wchar_t *name) | 
| static ON_NameHash | Create (size_t length, const wchar_t *name, bool bIgnoreCase) | 
| static ON_NameHash | CreateFilePathHash (const char *file_path) | 
| static ON_NameHash | CreateFilePathHash (const class ON_FileReference &file_reference) | 
| static ON_NameHash | CreateFilePathHash (const wchar_t *file_path) | 
| static ON_NameHash | CreateIdAndEmptyName (const ON_UUID &parent_id) | 
| static ON_NameHash | CreateIdAndUnsetName (const ON_UUID &parent_id) | 
| static ON_NameHash | Internal_DotNetInterfaceSet (const ON_UUID &, const ON_SHA1_Hash &, const ON__UINT32) | 
| Static Public Attributes | |
| static const ON_NameHash | EmptyNameHash | 
| static const ON_NameHash | UnsetNameHash | 
Description: An ON_NameHash is designed to help search for and compare attribute names like the ON_ModelComponent.Name() value.
If a name is wchar_t encoded as wide_char_name and UTF-8 encoded as utf8_name, then ON_NameHash(wide_char_name) == ON_NameHash(utf8_name).
Set: bool bEqualNameHash = ON_NameHash::Create(parent_id1,name1) == ON_NameHash::Create(parent_id2,name2); bool bEqualParentId = (parent_id1 == parent_id2) bool bEqualAttributeName = ON_String::EqualAttributeName(name1,name2);
If (bEqualParentId && bEqualAttributeName) is true, then bEqualNameHash is true. If bEqualParentId is false, then bEqualNameHash is false. With probability 1-epsilon, if bEqualAttributeName is false, then bEqualNameHash is false, where epsilon is an extremely tiny number.
| 
 | default | 
Default construction creates ON_NameHash::UnsetNameHash.
| 
 | default | 
| 
 | default | 
| 
 | static | 
Description: Compares id, then length, then SHA-1 digest.
| 
 | static | 
| 
 | static | 
| 
 | static | 
| 
 | static | 
| 
 | static | 
Description: Compares id, then length, then SHA-1 digest.
| 
 | static | 
| 
 | static | 
| 
 | static | 
| 
 | static | 
| 
 | static | 
| 
 | static | 
| 
 | static | 
| 
 | static | 
| 
 | static | 
| 
 | static | 
| 
 | static | 
| 
 | static | 
| 
 | static | 
| 
 | static | 
| 
 | static | 
| 
 | static | 
| 
 | static | 
Returns: ON_NameHash::EmptyNameHash if name is empty. ON_NameHash::UnsetNameHash if name is not valid.
| 
 | static | 
| 
 | static | 
| 
 | static | 
| 
 | static | 
| 
 | static | 
| 
 | static | 
| 
 | static | 
| 
 | static | 
| 
 | static | 
| 
 | static | 
| 
 | static | 
| 
 | static | 
| ON__UINT32 ON_NameHash::DataCRC | ( | ON__UINT32 | current_remainder | ) | const | 
32 bit hash of id and mapped name
| ON__UINT32 ON_NameHash::IdCRC | ( | ON__UINT32 | current_remainder | ) | const | 
32 bit hash of id
| bool ON_NameHash::IgnoreCase | ( | ) | const | 
Returns: True if hash is set and case is ignored
| ON__UINT32 ON_NameHash::Internal_DotNetInterfaceGetFlags | ( | ) | const | 
| 
 | static | 
Description: Internal_CreateFromDotNet() is public for technical reasons. It is used in Rhino Common p-invoke code that provides a .NET interface to the services ON_NameHash provided by the ON_NameHash class. This function should be ignored and never called from ordinary C++ code. If you choose to ignore the preceding admonition, you will have to read the source code for information about how this function works.
| bool ON_NameHash::IsEmptyNameHash | ( | ) | const | 
Returns: True if the hash is for an empty name.
| bool ON_NameHash::IsFilePathHash | ( | ) | const | 
Returns: True if the hash is not empty and was set by calling CreateFilePathHash().
| bool ON_NameHash::IsInvalidNameHash | ( | ) | const | 
Returns: True if the hash is for an invalid name.
| bool ON_NameHash::IsValidAndNotEmpty | ( | ) | const | 
Returns: True if the hash is for a valid non-empty name.
| ON__UINT32 ON_NameHash::MappedNameCodePointCount | ( | ) | const | 
Number of UTf-32 code point values in mapped name. (0 for file path hashes)
| ON_SHA1_Hash ON_NameHash::MappedNameSha1Hash | ( | ) | const | 
SHA-1 hash of mapped name.
| ON__UINT32 ON_NameHash::NameCRC | ( | ON__UINT32 | current_remainder | ) | const | 
32 bit hash of id and mapped name
| 
 | default | 
| ON_UUID ON_NameHash::ParentId | ( | ) | const | 
| 
 | static | 
| 
 | static | 
 1.8.17
 1.8.17