FRODO Version 2.19.1
An open-source framework for Distributed Constraint Optimization (DCOP)
Loading...
Searching...
No Matches
frodo2.algorithms.odpop.goodsTree.InnerNodeTree.InnerNodeTree< Val extends Addable< Val >, U extends Addable< U >, L extends LeafNode< U > >.IntArrayWrapper Class Reference

The IntArrayWrapper is used as a key for (partial) assignments. More...

Inheritance diagram for frodo2.algorithms.odpop.goodsTree.InnerNodeTree.InnerNodeTree< Val extends Addable< Val >, U extends Addable< U >, L extends LeafNode< U > >.IntArrayWrapper:

Public Member Functions

 IntArrayWrapper (int[] array)
 Constructor.
 IntArrayWrapper (int size)
 Constructor.
 IntArrayWrapper (int[] array, byte[] byteArray)
 Constructor.
void setValue (int index, int value, boolean real)
 Sets the value in the array.
IntArrayWrapper addValues (int[] newValues, boolean[] changable, int newSize)
 Given a set of new values, a new IntArrayWrapper is created.
IntArrayWrapper getPartialAssignment (boolean[] neededVariables, int size)
 Returns the partial assignment of the assignment stored in array.
Public Member Functions inherited from frodo2.algorithms.odpop.goodsTree.InnerNodeTreeFullDomain.InnerNodeTree< Val extends Addable< Val >, U extends Addable< U >, L extends LeafNode< U > >.IntArrayWrapper
void setValue (int index, int value)
 Sets the value in the array.
int getValue (int index)
String toString ()
void extendArray (int newSize)
 Given a new set of variables and values, this array is to be extended.
boolean equals (Object o)
int hashCode ()
 Uses the superFastHash() function to compute the hash.
byte[] intArrayToByteArray (int[] intArray)
 Transforms an array of int into an array of byte.
int get16bits (byte[] d, int index)
 Returns 16 bits stored in an int.

Additional Inherited Members

Protected Attributes inherited from frodo2.algorithms.odpop.goodsTree.InnerNodeTreeFullDomain.InnerNodeTree< Val extends Addable< Val >, U extends Addable< U >, L extends LeafNode< U > >.IntArrayWrapper
int[] array
 the array representing the variable assignment
byte[] byteArray
 the byte representation of array
final boolean change
 true when the array is to be changed, false otherwise

Detailed Description

The IntArrayWrapper is used as a key for (partial) assignments.

The hash function used is a java implementation of the Hsieh hash function

Author
Brammert Ottens, 22 apr 2010

Constructor & Destructor Documentation

◆ IntArrayWrapper() [1/3]

◆ IntArrayWrapper() [2/3]

frodo2.algorithms.odpop.goodsTree.InnerNodeTree.InnerNodeTree< Val extends Addable< Val >, U extends Addable< U >, L extends LeafNode< U > >.IntArrayWrapper.IntArrayWrapper ( int size)

◆ IntArrayWrapper() [3/3]

Member Function Documentation

◆ addValues()

IntArrayWrapper frodo2.algorithms.odpop.goodsTree.InnerNodeTree.InnerNodeTree< Val extends Addable< Val >, U extends Addable< U >, L extends LeafNode< U > >.IntArrayWrapper.addValues ( int[] newValues,
boolean[] changable,
int newSize )

Given a set of new values, a new IntArrayWrapper is created.

Note that there can be less new values than there are positions in the original array

Author
Brammert Ottens, 4 okt 2009
Parameters
newValuesan array of new values
changablearray that stores which values can be changed
newSizethe size of the required array
Returns
a new IntArrayWrapper with the new values placed in the appropriate positions

Reimplemented from frodo2.algorithms.odpop.goodsTree.InnerNodeTreeFullDomain.InnerNodeTree< Val extends Addable< Val >, U extends Addable< U >, L extends LeafNode< U > >.IntArrayWrapper.

References frodo2.algorithms.odpop.goodsTree.InnerNodeTreeFullDomain.InnerNodeTree< Val extends Addable< Val >, U extends Addable< U >, L extends LeafNode< U > >.IntArrayWrapper.array, frodo2.algorithms.odpop.goodsTree.InnerNodeTreeFullDomain.InnerNodeTree< Val extends Addable< Val >, U extends Addable< U >, L extends LeafNode< U > >.IntArrayWrapper.byteArray, and IntArrayWrapper().

Here is the call graph for this function:

◆ getPartialAssignment()

IntArrayWrapper frodo2.algorithms.odpop.goodsTree.InnerNodeTree.InnerNodeTree< Val extends Addable< Val >, U extends Addable< U >, L extends LeafNode< U > >.IntArrayWrapper.getPartialAssignment ( boolean[] neededVariables,
int size )

Returns the partial assignment of the assignment stored in array.

Only the positions that are true in neededVariables are used

Author
Brammert Ottens, 26 jun 2009
Parameters
neededVariablesthe variables in the partial assignment
sizethe number of variables in the partial assignment
Returns
an array of int

Reimplemented from frodo2.algorithms.odpop.goodsTree.InnerNodeTreeFullDomain.InnerNodeTree< Val extends Addable< Val >, U extends Addable< U >, L extends LeafNode< U > >.IntArrayWrapper.

References frodo2.algorithms.odpop.goodsTree.InnerNodeTreeFullDomain.InnerNodeTree< Val extends Addable< Val >, U extends Addable< U >, L extends LeafNode< U > >.IntArrayWrapper.array, frodo2.algorithms.odpop.goodsTree.InnerNodeTreeFullDomain.InnerNodeTree< Val extends Addable< Val >, U extends Addable< U >, L extends LeafNode< U > >.IntArrayWrapper.byteArray, and IntArrayWrapper().

Referenced by frodo2.algorithms.odpop.goodsTree.InnerNodeTree.InnerNodeTree< Val extends Addable< Val >, U extends Addable< U >, L extends LeafNode< U > >.checkLeaf(), frodo2.algorithms.odpop.goodsTree.InnerNodeTree.InnerNodeTree< Val extends Addable< Val >, U extends Addable< U >, L extends LeafNode< U > >.createLeaf(), frodo2.algorithms.odpop.goodsTree.InnerNodeTree.InnerNodeTree< Val extends Addable< Val >, U extends Addable< U >, L extends LeafNode< U > >.createLeaf(), frodo2.algorithms.odpop.goodsTree.InnerNodeTree.InnerNodeTree< Val extends Addable< Val >, U extends Addable< U >, L extends LeafNode< U > >.hasSupport(), and frodo2.algorithms.odpop.goodsTree.InnerNodeTree.InnerNodeTree< Val extends Addable< Val >, U extends Addable< U >, L extends LeafNode< U > >.updatePath().

Here is the call graph for this function:

◆ setValue()

void frodo2.algorithms.odpop.goodsTree.InnerNodeTree.InnerNodeTree< Val extends Addable< Val >, U extends Addable< U >, L extends LeafNode< U > >.IntArrayWrapper.setValue ( int index,
int value,
boolean real )

The documentation for this class was generated from the following file: