Lines Matching defs:snake
222 /// In a given path from the edit graph, a snake is a non-diagonal
226 /// the snake. This is given by the snake::begin() method. This point
231 /// of the snake; it's given by the snake::intermediate() method.
232 /// This point is what is referred to as "the begining of the snake"
236 /// snake::diagonal_start() method.
239 /// snake::end() method. Note that when the snake contains no
240 /// diagonal edge, snake::intermediate(), and snake::end() return the
241 /// same point; snake::diagonal_start() contains an empty point (i.e,
243 class snake
250 /// Default constructor for snake.
251 snake()
257 /// @param b the beginning point of the snake. That is, the
260 /// @param i the intermediate point of the snake. That is, the end
263 /// @param e the end point of the snake. That is the end point of
265 snake(const point& b,
274 /// @param b the beginning point of the snake. That is, the
277 /// @param i the intermediate point of the snake. That is, the end
281 /// the first diagonal edge of the snake.
283 /// @param e the end point of the snake. That is the end point of
285 snake(const point& b,
295 /// snake.
297 /// @return the starting point of the non-diagonal edge of the snake
303 /// snake, aka begin point.
310 /// Getter for the end point of the non-diagonal edge of the snake.
312 /// @return the end point of the non-diagonal edge of the snake
317 /// Setter for the end point of the non-diagonal edge of the snake,
326 /// diagonal start point. Note that if the snake has no diagonal
342 /// Getter for the end point of the last diagonal edge, aka snake
343 /// end point. Note that if the snake has no diagonal edge, this
351 /// Setter for the end point of the last diagonal edge, aka snake
352 /// end point. Note that if the snake has no diagonal edge, this
358 /// Setter for the begin, intermediate and end points of the snake.
360 /// @param b the new snake begin point
362 /// @param i the new snake intermediate point
364 /// @param e the new snake end point
374 /// of the snake.
376 /// @param b the new snake begin point
378 /// @param i the new snake intermediate point
382 /// @param e the new snake end point
392 /// @return true iff the snake is a forward snake. That is, if it
399 /// Set to true if the snake is a forward snake; that is, if it was
403 /// @param f whether the snake is a forward snake or not.
408 /// Add an offset to the abscissas of the points of the snake, and
412 /// points of the snake.
415 /// points of the snake.
429 /// @return true iff the snake has at least one diagonal edge.
444 /// @return true iff the snake is empty, that is, if all the points
448 };// end class snake
832 /// @param snak the last snake of the furthest path found. The end
833 /// point of the snake is the end point of the furthest path.
846 d_path_vec& v, snake& snak)
850 snake s;
893 // Now, follow the snake (aka, zero or more consecutive
973 /// @param snak the last snake of the furthest path found. The end
974 /// point of the snake is the end point of the furthest path.
987 d_path_vec& v, snake& snak)
995 snake s;
1031 // Now, follow the snake. Note that we stay on the k_plus_delta
1103 /// Returns the middle snake of two sequences A and B, as well as the
1132 /// @param snak out parameter. This is the snake current when the two
1136 /// @return true is the snake was found, false otherwise.
1144 snake& snak, int& ses_len)
1183 snake s;
1193 // As the paper says in 4b while explaining the middle snake
1216 snake s;
1253 snake& s, int& ses_len);
1255 /// This prints the middle snake of two strings.
1261 /// @param s the snake to print.
1263 /// @param out the output stream to print the snake to.
1268 const snake &s, ostream& out)
1273 out << "snake start: ";
1276 out << "snake intermediate: ";
1290 out << "snake end: ";
1331 snake snak;
1423 snake_end_points(const snake& s, point&, point&);
1523 snake snak;
1552 // So there is no middle snake. That means there is no lcs, so
1632 // Obviously on the middle snake is part of the solution, as