edu.umd.hooka
Class PhrasePair

java.lang.Object
  extended by edu.umd.hooka.PhrasePair
All Implemented Interfaces:
Cloneable, Comparable, Writable, WritableComparable

public class PhrasePair
extends Object
implements WritableComparable, Cloneable

Author:
chris Notes: This class represents a pair of phrases, one from target language, one from source language, and an alignment

Nested Class Summary
static class PhrasePair.SubPhraseCoordinates
           
 
Constructor Summary
PhrasePair()
           
PhrasePair(Phrase f, Phrase e)
           
PhrasePair(Phrase f, Phrase e, Alignment a)
           
PhrasePair(String f, Vocab vocF, String e, Vocab vocE, String a)
           
 
Method Summary
 Object clone()
           
 int compareTo(Object o)
           
 boolean equals(Object o)
           
 ArrayList<PhrasePair> extractConsistentPhrasePairs(int maxPhraseLength)
           
 ArrayList<PhrasePair.SubPhraseCoordinates> extractConsistentSubPhraseCoordinates(int maxPhraseLength)
           
 PhrasePair extractMinimalConsistentPhrasePairContainingESpan(int eStart, int eEnd)
           
 PhrasePair extractSubPhrasePair(int startF, int endF, int startE, int endE)
           
 PhrasePair extractSubPhrasePair(PhrasePair.SubPhraseCoordinates c)
           
 Alignment getAlignment()
           
 AlignmentPosteriorGrid getAlignmentPosteriorGrid()
           
 Phrase getE()
           
 Phrase getF()
           
 PhrasePair.SubPhraseCoordinates getMinimalConsistentSubPhraseCoordsContainingESpan(int e_start, int e_end)
          Returns the smallest consistent phrase pair that contains [e_start,e_end] This is not efficient- don't use it where speed counts!
 PhrasePair getTranspose()
           
 boolean hasAlignment()
           
 boolean hasAlignmentPosteriors()
           
 int hashCode()
           
 void mergeEnglishWords(int i, int j, int newE)
           
 float ratioFtoE()
           
 void readFields(DataInput in)
           
 void setAlignment(Alignment a)
           
 void setAlignmentPosteriorGrid(AlignmentPosteriorGrid g)
           
 void setE(Phrase e)
           
 void setF(Phrase f)
           
 void splitEnglishWords(int i, int newE1, int newE2)
           
 void splitForeignWords(int j, int newF1, int newF2)
           
 String toString()
           
 String toString(Vocab vocF, Vocab vocE)
           
 void write(DataOutput out)
           
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

PhrasePair

public PhrasePair()

PhrasePair

public PhrasePair(Phrase f,
                  Phrase e)

PhrasePair

public PhrasePair(Phrase f,
                  Phrase e,
                  Alignment a)

PhrasePair

public PhrasePair(String f,
                  Vocab vocF,
                  String e,
                  Vocab vocE,
                  String a)
Method Detail

clone

public Object clone()
Overrides:
clone in class Object

compareTo

public int compareTo(Object o)
Specified by:
compareTo in interface Comparable

hashCode

public int hashCode()
Overrides:
hashCode in class Object

getTranspose

public PhrasePair getTranspose()

getAlignment

public Alignment getAlignment()

equals

public boolean equals(Object o)
Overrides:
equals in class Object

ratioFtoE

public float ratioFtoE()

toString

public String toString()
Overrides:
toString in class Object

mergeEnglishWords

public void mergeEnglishWords(int i,
                              int j,
                              int newE)

splitEnglishWords

public void splitEnglishWords(int i,
                              int newE1,
                              int newE2)

splitForeignWords

public void splitForeignWords(int j,
                              int newF1,
                              int newF2)

toString

public String toString(Vocab vocF,
                       Vocab vocE)

getE

public Phrase getE()

getF

public Phrase getF()

setE

public void setE(Phrase e)

setF

public void setF(Phrase f)

hasAlignment

public boolean hasAlignment()

setAlignment

public void setAlignment(Alignment a)

readFields

public void readFields(DataInput in)
                throws IOException
Specified by:
readFields in interface Writable
Throws:
IOException

write

public void write(DataOutput out)
           throws IOException
Specified by:
write in interface Writable
Throws:
IOException

hasAlignmentPosteriors

public boolean hasAlignmentPosteriors()

getAlignmentPosteriorGrid

public AlignmentPosteriorGrid getAlignmentPosteriorGrid()

setAlignmentPosteriorGrid

public void setAlignmentPosteriorGrid(AlignmentPosteriorGrid g)

extractSubPhrasePair

public PhrasePair extractSubPhrasePair(PhrasePair.SubPhraseCoordinates c)

extractSubPhrasePair

public PhrasePair extractSubPhrasePair(int startF,
                                       int endF,
                                       int startE,
                                       int endE)

getMinimalConsistentSubPhraseCoordsContainingESpan

public PhrasePair.SubPhraseCoordinates getMinimalConsistentSubPhraseCoordsContainingESpan(int e_start,
                                                                                          int e_end)
Returns the smallest consistent phrase pair that contains [e_start,e_end] This is not efficient- don't use it where speed counts!


extractMinimalConsistentPhrasePairContainingESpan

public PhrasePair extractMinimalConsistentPhrasePairContainingESpan(int eStart,
                                                                    int eEnd)

extractConsistentSubPhraseCoordinates

public ArrayList<PhrasePair.SubPhraseCoordinates> extractConsistentSubPhraseCoordinates(int maxPhraseLength)

extractConsistentPhrasePairs

public ArrayList<PhrasePair> extractConsistentPhrasePairs(int maxPhraseLength)