public class ProteinTree extends Object
| Modifier and Type | Class and Description |
|---|---|
class |
ProteinTree.PeptideIterator
Alphabetical iterator for the tree.
|
| Modifier and Type | Field and Description |
|---|---|
static int |
proteinBatchSize
The number of proteins which should be imported at a time.
|
static String |
version
The version of the protein tree.
|
| Constructor and Description |
|---|
ProteinTree(int memoryAllocation,
int cacheSize)
Creates a tree based on the proteins present in the sequence factory.
|
| Modifier and Type | Method and Description |
|---|---|
void |
close()
Closes all connections to files.
|
boolean |
deleteDb()
Try to delete the current database.
|
void |
emptyCache()
Empties the cache.
|
int |
getCacheSize()
Returns the size of the cache used for peptide mappings (note that there
are two of them).
|
HashMap<String,ArrayList<Integer>> |
getMatchedPeptideSequences(String peptideSequence,
String proteinAccession,
AminoAcidPattern.MatchingType matchingType,
Double massTolerance,
boolean limitXs)
Returns a list of peptides matched using the given peptide sequence in
the given protein according the provided matching settings.
|
int |
getMemoryAllocation()
Returns the memory allocation.
|
int |
getNodesInCache()
Returns the number of nodes currently loaded in cache.
|
ProteinTree.PeptideIterator |
getPeptideIterator()
Returns a PeptideIterator which iterates alphabetically all peptides
corresponding to the end of a branch in the tree.
|
Integer |
getProteinLength(String accession)
Retrieves the length of a protein.
|
HashMap<String,ArrayList<Integer>> |
getProteinMapping(String peptideSequence)
Returns the protein mapping in the sequence factory for the given peptide
sequence based on string matching only.
|
HashMap<String,HashMap<String,ArrayList<Integer>>> |
getProteinMapping(String peptideSequence,
AminoAcidPattern.MatchingType matchingType,
Double massTolerance,
boolean limitXs)
Returns the protein mapping in the sequence factory for the given peptide
sequence.
|
HashMap<Peptide,HashMap<String,ArrayList<Integer>>> |
getProteinMapping(Tag tag,
AminoAcidPattern.MatchingType matchingType,
Double massTolerance,
ArrayList<String> fixedModifications,
ArrayList<String> variableModifications,
boolean limitXs,
boolean reportFixedPtms)
Returns the protein mappings for the given peptide sequence.
|
void |
initiateTree(int initialTagSize,
int maxNodeSize,
int maxPeptideSize,
Enzyme enzyme,
WaitingHandler waitingHandler,
boolean printExpectedImportTime,
boolean displayProgress)
Initiates the tree.
|
void |
initiateTree(int initialTagSize,
int maxNodeSize,
int maxPeptideSize,
WaitingHandler waitingHandler,
boolean printExpectedImportTime,
boolean displayProgress)
Initiates the tree.
|
void |
reduceNodeCacheSize(double share)
Reduces the node cache size by the given share.
|
void |
setCacheSize(int cacheSize)
Sets the size of the cache used for peptide mappings (note that there are
two of them).
|
void |
setMemoryAllocation(int memoryAllocation)
Sets the memory allocation.
|
public static final String version
public static final int proteinBatchSize
public ProteinTree(int memoryAllocation,
int cacheSize)
throws IOException
memoryAllocation - the number of MB available for the tree in
memory.cacheSize - the peptide queries caches size (note, there are two of
them)IOExceptionpublic int getMemoryAllocation()
public void setMemoryAllocation(int memoryAllocation)
memoryAllocation - the memory allocationpublic void initiateTree(int initialTagSize,
int maxNodeSize,
int maxPeptideSize,
WaitingHandler waitingHandler,
boolean printExpectedImportTime,
boolean displayProgress)
throws IOException,
IllegalArgumentException,
InterruptedException,
ClassNotFoundException,
SQLException
initialTagSize - the initial tag sizemaxNodeSize - the maximal size of a node. large nodes will be fast
to initiate but slow to query. I typically use 500 giving an approximate
query time <20ms.maxPeptideSize - the maximum peptide sizewaitingHandler - the waiting handler used to display progress to the
user. Can be null but strongly recommended :)printExpectedImportTime - if true the expected import time will be
printed to the waiting handlerdisplayProgress - display progressIOExceptionIllegalArgumentExceptionInterruptedExceptionClassNotFoundExceptionSQLExceptionpublic void initiateTree(int initialTagSize,
int maxNodeSize,
int maxPeptideSize,
Enzyme enzyme,
WaitingHandler waitingHandler,
boolean printExpectedImportTime,
boolean displayProgress)
throws IOException,
IllegalArgumentException,
InterruptedException,
IOException,
IllegalArgumentException,
InterruptedException,
ClassNotFoundException,
SQLException
initialTagSize - the initial size of peptide tag. Large initial size
are fast to query, low initial size are fast to initiate. I typically use
3 for databases containing less than 100 000 proteins giving an
approximate initiation time of 60ms per accession.maxNodeSize - the maximal size of a node. large nodes will be fast
to initiate but slow to query. I typically use 500 giving an approximate
query time <20ms.maxPeptideSize - the maximum peptide sizeenzyme - the enzyme used to select peptides. If null all possible
peptides will be indexedwaitingHandler - the waiting handler used to display progress to the
user. Can be null.printExpectedImportTime - if true the expected import time will be
printed to the waiting handlerdisplayProgress - display progressIOExceptionIllegalArgumentExceptionInterruptedExceptionClassNotFoundExceptionSQLExceptionpublic boolean deleteDb()
public HashMap<String,ArrayList<Integer>> getProteinMapping(String peptideSequence) throws IOException, InterruptedException, ClassNotFoundException, SQLException
peptideSequence - the peptide sequenceIOExceptionInterruptedExceptionClassNotFoundExceptionSQLExceptionpublic HashMap<String,HashMap<String,ArrayList<Integer>>> getProteinMapping(String peptideSequence, AminoAcidPattern.MatchingType matchingType, Double massTolerance, boolean limitXs) throws IOException, InterruptedException, ClassNotFoundException, SQLException
peptideSequence - the peptide sequencematchingType - the matching typemassTolerance - the mass tolerance for matching type
'indistiguishibleAminoAcids'. Can be null otherwiselimitXs - if true the share of Xs in the peptide sequences will be
limited in order to increase sequencing speed.IOExceptionInterruptedExceptionClassNotFoundExceptionSQLExceptionpublic HashMap<Peptide,HashMap<String,ArrayList<Integer>>> getProteinMapping(Tag tag, AminoAcidPattern.MatchingType matchingType, Double massTolerance, ArrayList<String> fixedModifications, ArrayList<String> variableModifications, boolean limitXs, boolean reportFixedPtms) throws IOException, InterruptedException, ClassNotFoundException, SQLException
tag - the tag to look for in the tree. Must contain a consecutive
amino acid sequence of longer or equal size than the initialTagSize of
the tree.matchingType - the matching typemassTolerance - the mass tolerance for matching type
'indistiguishibleAminoAcids'. Can be null otherwisefixedModifications - the fixed modifications to considervariableModifications - the variable modifications to considerlimitXs - if true the share of Xs in the peptide sequences will be
limited in order to increase sequencing speed.reportFixedPtms - a boolean indicating whether fixed PTMs should be
reported in the Peptide objectIOExceptionInterruptedExceptionClassNotFoundExceptionSQLExceptionpublic void close()
throws IOException,
SQLException
IOExceptionSQLExceptionpublic int getCacheSize()
public void setCacheSize(int cacheSize)
cacheSize - the size of the cache used for peptide mappingspublic void emptyCache()
public void reduceNodeCacheSize(double share)
share - the share of the cache to remove. 0.5 means 50%public int getNodesInCache()
public HashMap<String,ArrayList<Integer>> getMatchedPeptideSequences(String peptideSequence, String proteinAccession, AminoAcidPattern.MatchingType matchingType, Double massTolerance, boolean limitXs) throws IOException, InterruptedException, ClassNotFoundException, SQLException
peptideSequence - the original peptide sequenceproteinAccession - the accession of the protein of interestmatchingType - the matching typemassTolerance - the mass tolerance for indistinguishable amino acids
matching modelimitXs - if true the share of Xs in the peptide sequences will be
limited in order to increase sequencing speed.IOExceptionInterruptedExceptionSQLExceptionClassNotFoundExceptionpublic ProteinTree.PeptideIterator getPeptideIterator() throws SQLException, IOException, ClassNotFoundException, InterruptedException
SQLExceptionIOExceptionClassNotFoundExceptionInterruptedExceptionpublic Integer getProteinLength(String accession) throws SQLException, ClassNotFoundException, IOException, InterruptedException
accession - the accession of the protein of interestSQLExceptionClassNotFoundExceptionIOExceptionInterruptedExceptionCopyright © 2014. All rights reserved.