Callable Functions


File Type

DDS 2.9 DLL functions descriptions rtf
DDS 1.1.20 PLUS-version rtf
DDS 1.1.20 pbn/no-pbn rtf

Function names:

Historically there was a first function, for example SolveBoard, and then a later function, SolveBoardPBN, with a different input format. For consistency we would rename functions so that they end on either Bin (for "binary") or PBN. This is already the naming convention for the more recently added functions.

Eliminating chunk functions:

When the same deal is solved again for a different declarer but for the same strain, it is efficient to be able to re-use internal results. This was the reason for "chunk" functions which require a rigid format, for example groups of 4 hands in a row that are guaranteed by the user to be similar.

We now have a more flexible re-use implemented where the DLL detects duplication within a single invocation automatically, even if the similar hands are not right after each other. Therefore we would eliminate the "chunk" functions.

Solver modes:

The SolveBoard function includes the "mode" call parameter. The used values are mode = 0, 1 or 2. mode = 0 can be used when there is only one move to consider. Then mode = 0 tells DDS not to start the search for a double dummy value. The search speed of DDS is now fast enough to make this possibility unimportant. mode = 2 orders DDS to reuse the transposition table contents. Since the possibility to reuse the contents now is done automatically it is recommended not to set mode = 2. This is not to say that mode should then be removed from the interface. The "mode" parameter is still included in v2.8 for historical reasons. But at some point we will perhaps use it for different stuff instead, so you should stop relying on it, or let us know why you think you need it.