edu.wisc.cs.stego.lib
Class PPCTLookup
java.lang.Object
|
+--edu.wisc.cs.stego.lib.PPCTLookup
- public class PPCTLookup
- extends java.lang.Object
This class is the utility class used by PPCTEncoder and PPCTScanner.
The main purpose of this class is to build a lookup table which is
used for encoding and decoding the watermark. In our implementation
the watermark is a very large integer represented using BigInteger.
For more information on how the matrix is computed, please read
Combinatorial Algorithms by Donald Kreher and Douglas Stinson
- See Also:
PPCTEncoder
,
PPCTScanner
Constructor Summary |
PPCTLookup(int catalan)
Constructor for PPCTLookup
Upon successful construction, this class will contain a table
built using the catalan number passed in as parameter. |
Method Summary |
static java.math.BigInteger |
factor(int start)
This method computes n! |
java.math.BigInteger |
lookup(int row,
int column)
Lookup method
Given a row and column number, lookup table will return
a BigInteger representing the number for that point |
Methods inherited from class java.lang.Object |
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait |
PPCTLookup
public PPCTLookup(int catalan)
- Constructor for PPCTLookup
Upon successful construction, this class will contain a table
built using the catalan number passed in as parameter. Note
that the catalan number referred here is not actually the
catalan number C(n), it's n. C(n) is defined as (2n, n)/(n - 1)
Techinically, the table is a matrx of size catalan X catalan * 2
However, since a large portion of the numbers in the matrix is
zero (hence the matrix is sparse), we use a vector of maps
to represent the matrix.
- See Also:
edu.wisc.cs.stego.PPCTEncoder
,
edu.wisc.cs.stego.PPCTScanner
lookup
public java.math.BigInteger lookup(int row,
int column)
- Lookup method
Given a row and column number, lookup table will return
a BigInteger representing the number for that point
- See Also:
edu.wisc.cs.stego.PPCTEncoder
,
edu.wisc.cs.stego.PPCTScanner
factor
public static java.math.BigInteger factor(int start)
- This method computes n!