Vuo  2.0.0
Macros | Typedefs | Functions
VuoInteger

Description

A signed 64-bit integer.

Macros

#define VuoInteger_SUPPORTS_COMPARISON
 This type has _areEqual() and _isLessThan() functions. More...
 
#define MIN(a, b)   (((a)<(b))?(a):(b))
 Returns the smaller of a and b. More...
 
#define MAX(a, b)   (((a)>(b))?(a):(b))
 Returns the larger of a and b. More...
 

Typedefs

typedef int64_t VuoInteger
 A signed 64-bit integer. More...
 

Functions

VuoInteger VuoInteger_makeFromJson (json_object *js)
 
json_objectVuoInteger_getJson (const VuoInteger value)
 
char * VuoInteger_getSummary (const VuoInteger value)
 
VuoInteger VuoInteger_min (VuoInteger *terms, unsigned long termsCount, VuoInteger *outputPosition)
 Returns the minimum of an array of terms, or 0 if the array is empty. More...
 
VuoInteger VuoInteger_max (VuoInteger *terms, unsigned long termsCount, VuoInteger *outputPosition)
 Returns the maximum of an array of terms, or 0 if the array is empty. More...
 
VuoInteger VuoInteger_wrap (VuoInteger value, VuoInteger minimum, VuoInteger maximum)
 Returns value if it is within the range of minimum to maximum (inclusive), otherwise a value wrapped with modular arithmetic to be within the range. More...
 
VuoInteger VuoInteger_random (const VuoInteger minimum, const VuoInteger maximum)
 Returns a pseudorandom value between minimum and maximum, inclusive. More...
 
void VuoInteger_setRandomState (unsigned short state[3], const VuoInteger seed)
 Initializes state using the lower 48 bits of seed. More...
 
VuoInteger VuoInteger_randomWithState (unsigned short state[3], const VuoInteger minimum, const VuoInteger maximum)
 Returns a pseudorandom value between minimum and maximum, inclusive. More...
 
VuoInteger VuoInteger_makeFromHexByte (unsigned char byte)
 If byte is a valid ASCII hex character (0–9, a–f, A–F), returns the equivalent numeric value. More...
 
static VuoInteger VuoInteger_add (VuoInteger a, VuoInteger b) __attribute__((const))
 a+b More...
 
static VuoInteger VuoInteger_subtract (VuoInteger a, VuoInteger b) __attribute__((const))
 a-b More...
 
static VuoInteger VuoInteger_multiply (VuoInteger a, VuoInteger b) __attribute__((const))
 Provided for generic type equivalence with VuoPoints. More...
 
static VuoInteger VuoInteger_scale (VuoInteger a, VuoInteger b) __attribute__((const))
 Provided for generic type equivalence with VuoPoints. More...
 
static VuoInteger VuoInteger_makeNonzero (VuoInteger a) __attribute__((const))
 If the value is zero, returns 1. More...
 
static VuoInteger VuoInteger_snap (VuoInteger a, VuoInteger center, VuoInteger snap) __attribute__((const))
 Returns a snapped value using a center point and snap value. More...
 
bool VuoInteger_areEqual (const VuoInteger value1, const VuoInteger value2)
 Returns true if the two values are equal. More...
 
bool VuoInteger_isLessThan (const VuoInteger a, const VuoInteger b)
 Returns true if a < b. More...
 
static VuoInteger VuoInteger_clamp (VuoInteger value, VuoInteger limitA, VuoInteger limitB)
 Limits value to values between min and max, inclusive. More...
 
static VuoInteger VuoInteger_clampn (VuoInteger value, VuoInteger limitA, VuoInteger limitB)
 Same as VuoInteger_clamp. More...
 
VuoInteger VuoInteger_makeFromString (const char *str)
 Automatically generated function. More...
 
char * VuoInteger_getString (const VuoInteger value)
 Automatically generated function. More...
 
void VuoInteger_retain (VuoInteger value)
 Automatically generated function. More...
 
void VuoInteger_release (VuoInteger value)
 Automatically generated function. More...
 

Macro Definition Documentation

◆ MAX

#define MAX (   a,
 
)    (((a)>(b))?(a):(b))

Returns the larger of a and b.

Definition at line 126 of file VuoInteger.h.

◆ MIN

#define MIN (   a,
 
)    (((a)<(b))?(a):(b))

Returns the smaller of a and b.

Definition at line 119 of file VuoInteger.h.

◆ VuoInteger_SUPPORTS_COMPARISON

#define VuoInteger_SUPPORTS_COMPARISON

This type has _areEqual() and _isLessThan() functions.

Definition at line 111 of file VuoInteger.h.

Typedef Documentation

◆ VuoInteger

typedef int64_t VuoInteger

A signed 64-bit integer.

Definition at line 32 of file VuoInteger.h.

Function Documentation

◆ VuoInteger_add()

static VuoInteger VuoInteger_add ( VuoInteger  a,
VuoInteger  b 
) const
inlinestatic

a+b

Provided for generic type equivalence with VuoPoints.

Definition at line 56 of file VuoInteger.h.

◆ VuoInteger_areEqual()

bool VuoInteger_areEqual ( const VuoInteger  value1,
const VuoInteger  value2 
)

Returns true if the two values are equal.

Definition at line 286 of file VuoInteger.c.

◆ VuoInteger_clamp()

static VuoInteger VuoInteger_clamp ( VuoInteger  value,
VuoInteger  limitA,
VuoInteger  limitB 
)
inlinestatic

Limits value to values between min and max, inclusive.

Definition at line 132 of file VuoInteger.h.

◆ VuoInteger_clampn()

static VuoInteger VuoInteger_clampn ( VuoInteger  value,
VuoInteger  limitA,
VuoInteger  limitB 
)
inlinestatic

Same as VuoInteger_clamp.

Provided for generic type compatibility with other _clampn functions.

Definition at line 141 of file VuoInteger.h.

◆ VuoInteger_getJson()

struct json_object * VuoInteger_getJson ( const VuoInteger  value)

Encodes value as a JSON object.

Definition at line 55 of file VuoInteger.c.

◆ VuoInteger_getString()

char* VuoInteger_getString ( const VuoInteger  value)

Automatically generated function.

◆ VuoInteger_getSummary()

char * VuoInteger_getSummary ( const VuoInteger  value)

Always shows the full value, since it's guaranteed to be pretty short.

Definition at line 64 of file VuoInteger.c.

◆ VuoInteger_isLessThan()

bool VuoInteger_isLessThan ( const VuoInteger  a,
const VuoInteger  b 
)

Returns true if a < b.

Definition at line 294 of file VuoInteger.c.

◆ VuoInteger_makeFromHexByte()

VuoInteger VuoInteger_makeFromHexByte ( unsigned char  byte)

If byte is a valid ASCII hex character (0–9, a–f, A–F), returns the equivalent numeric value.

Otherwise returns 0.

Definition at line 278 of file VuoInteger.c.

◆ VuoInteger_makeFromJson()

VuoInteger VuoInteger_makeFromJson ( json_object js)

Decodes the JSON object js to create a new value.

Definition at line 29 of file VuoInteger.c.

◆ VuoInteger_makeFromString()

VuoInteger VuoInteger_makeFromString ( const char *  str)

Automatically generated function.

◆ VuoInteger_makeNonzero()

static VuoInteger VuoInteger_makeNonzero ( VuoInteger  a) const
inlinestatic

If the value is zero, returns 1.

Otherwise returns the value.

Definition at line 94 of file VuoInteger.h.

◆ VuoInteger_max()

VuoInteger VuoInteger_max ( VuoInteger terms,
unsigned long  termsCount,
VuoInteger outputPosition 
)

Returns the maximum of an array of terms, or 0 if the array is empty.

Definition at line 97 of file VuoInteger.c.

◆ VuoInteger_min()

VuoInteger VuoInteger_min ( VuoInteger terms,
unsigned long  termsCount,
VuoInteger outputPosition 
)

Returns the minimum of an array of terms, or 0 if the array is empty.

Definition at line 75 of file VuoInteger.c.

◆ VuoInteger_multiply()

static VuoInteger VuoInteger_multiply ( VuoInteger  a,
VuoInteger  b 
) const
inlinestatic

Provided for generic type equivalence with VuoPoints.

Definition at line 76 of file VuoInteger.h.

◆ VuoInteger_random()

VuoInteger VuoInteger_random ( const VuoInteger  minimum,
const VuoInteger  maximum 
)

Returns a pseudorandom value between minimum and maximum, inclusive.

This function uses arc4random_uniform() (the key stream generator employed by the arc4 cipher). It is self-seeding.

Both maximum and maximum - minimum must be INT_MAX (2^31) or less.

Definition at line 198 of file VuoInteger.c.

◆ VuoInteger_randomWithState()

VuoInteger VuoInteger_randomWithState ( unsigned short  state[3],
const VuoInteger  minimum,
const VuoInteger  maximum 
)

Returns a pseudorandom value between minimum and maximum, inclusive.

This function uses jrand48() (a linear congruential algorithm).

Seed it by providing 3 x 16-bit values to state, which is modified upon return. Pass the modified state back to this function to retrieve the next value in the sequence.

Both maximum and maximum - minimum must be INT_MAX (2^31) or less.

Definition at line 229 of file VuoInteger.c.

◆ VuoInteger_release()

void VuoInteger_release ( VuoInteger  value)

Automatically generated function.

◆ VuoInteger_retain()

void VuoInteger_retain ( VuoInteger  value)

Automatically generated function.

◆ VuoInteger_scale()

static VuoInteger VuoInteger_scale ( VuoInteger  a,
VuoInteger  b 
) const
inlinestatic

Provided for generic type equivalence with VuoPoints.

Definition at line 85 of file VuoInteger.h.

◆ VuoInteger_setRandomState()

void VuoInteger_setRandomState ( unsigned short  state[3],
const VuoInteger  seed 
)

Initializes state using the lower 48 bits of seed.

Definition at line 212 of file VuoInteger.c.

◆ VuoInteger_snap()

static VuoInteger VuoInteger_snap ( VuoInteger  a,
VuoInteger  center,
VuoInteger  snap 
) const
inlinestatic

Returns a snapped value using a center point and snap value.

Definition at line 103 of file VuoInteger.h.

◆ VuoInteger_subtract()

static VuoInteger VuoInteger_subtract ( VuoInteger  a,
VuoInteger  b 
) const
inlinestatic

a-b

Provided for generic type equivalence with VuoPoints.

Definition at line 67 of file VuoInteger.h.

◆ VuoInteger_wrap()

VuoInteger VuoInteger_wrap ( VuoInteger  value,
VuoInteger  minimum,
VuoInteger  maximum 
)

Returns value if it is within the range of minimum to maximum (inclusive), otherwise a value wrapped with modular arithmetic to be within the range.

Definition at line 120 of file VuoInteger.c.