MCPcopy Create free account
hub / github.com/BirolLab/abyss / erode

Function erode

Assembly/ErodeAlgorithm.h:63–83  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

61 */
62template <typename Graph>
63size_t erode(Graph* c, const typename Graph::value_type& seq)
64{
65 typedef typename vertex_bundle_type<Graph>::type VP;
66
67 if (seq.second.deleted())
68 return 0;
69 extDirection dir;
70 SeqContiguity contiguity = checkSeqContiguity(seq, dir);
71 if (contiguity == SC_CONTIGUOUS)
72 return 0;
73
74 const VP& data = seq.second;
75 if (data.getMultiplicity() < opt::erode
76 || data.getMultiplicity(SENSE) < opt::erodeStrand
77 || data.getMultiplicity(ANTISENSE) < opt::erodeStrand) {
78 removeSequenceAndExtensions(c, seq);
79 g_numEroded++;
80 return 1;
81 } else
82 return 0;
83}
84
85/** The given sequence has changed. */
86static inline

Callers 3

notifyMethod · 0.85
erosionObserverFunction · 0.85
erodeEndsFunction · 0.85

Calls 4

checkSeqContiguityFunction · 0.85
deletedMethod · 0.80
getMultiplicityMethod · 0.80

Tested by

no test coverage detected