Class Curve

Class Documentation

class Curve

Public Types

typedef int Variable
typedef unsigned int VariableHash
typedef unsigned int NamespaceHash

Public Functions

template<unsigned int N>
__device__ __host__ __forceinline__ Curve::VariableHash variableHash(const char (&str)[N])

Public Static Functions

template<unsigned int N>
__device__ __host__ __forceinline__ static VariableHash variableHash(const char (&str)[N])

Main cuRVE variable hashing function

Calls recursive hashing functions, this should be processed at compile time (effectively constexpr).

Parameters:

str – String to be hashed

Returns:

a 32 bit cuRVE string variable hash.

__host__ static VariableHash variableRuntimeHash(const std::string &str)

Main cuRVE variable hashing function for strings of length determined at runtime and not compile time Should only be used for registered variables as this will be much slower than the compile time alternative.

Parameters:

str – String to be hashed

Returns:

a 32 bit cuRVE string variable hash.

__host__ static VariableHash variableRuntimeHash(unsigned int num)

Main cuRVE variable hashing function for unsigned integers

Parameters:

num – Unsigned int to be hashed

Returns:

a 32 bit cuRVE string variable hash.

Public Static Attributes

static const int MAX_VARIABLES = 512
static const VariableHash EMPTY_FLAG = 0