Definition at line 58 of file fbxprocessorshaderdependency.h.
#include <fbxprocessorshaderdependency.h>
Public Member Functions | |
| unsigned int | operator() (const FbxString &pValue) const |
| unsigned int operator() | ( | const FbxString & | pValue | ) | const [inline] |
Definition at line 61 of file fbxprocessorshaderdependency.h.
{
// from wikipedia.org
// Jenkins One-at-a-time hash
size_t lLen = pValue.GetLen();
unsigned int lHashValue = 0;
const char* lData = pValue.Buffer();
for( size_t i = 0; i < lLen; ++i )
{
lHashValue += lData[i];
lHashValue += (lHashValue << 10);
lHashValue ^= (lHashValue >> 16);
}
lHashValue += (lHashValue << 3);
lHashValue ^= (lHashValue >> 11);
lHashValue += (lHashValue << 15);
return lHashValue;
}