Source: line_sets.h


Annotated List
Files
Globals
Hierarchy
Index
class line_sets;


/**
 * Regroupement des lignes de pics en sous-ensembles
 *
 * @short Regroupement des lignes de pics en sous-ensembles
 * @author G.Garcia (source cpp Philippe Chose)
 * @version 7
 */

class line_sets
{
public:
  
  /**
   * Tableau des ensembles de lignes de pics
   */
  tab* line_set;
  /**
   * Sous-ensemble optimal
   */
  tab* opt_line_subset;

private:
  /**
   * Tableau indiquant les lignes de pics activées dans le sous-ensemble courant
   */
  int* on;

  /**
   * Tableau contenant les fils d'une ligne donnée c'est à dire les lignes ayant des pics en commun
   */
  tab* child;
  /**
   * Tableau contenant les peres d'une ligne donnée (cf @ref line_sets::child )
   */
  tab* parent;
  /**
   * Tableau temporaire de stockage
   */
  tab* aux_line_subset;
  
  /**
   * Nombre maximal de
   */
  int maxNbLinks;
  /**
   * Nombre maximal de 
   */
  int maxNbLines;
  /**
   *
   */
  int window;
public:
  /**
   * Constructeur
   *
   * @param window taille de la fenêtre d'analyse HMM
   * @param maxNbLines nombre maximal de lignes de pics dans la même fenêtre d'analyse
   * @param maxNbLinks nombre maximal de lignes de pics dans un même sous-ensemble de lignes
   */
  line_sets(int window, int maxNbLines, int maxNbLinks);
  /**
   * Destructeur
   */
  ~line_sets();

  /**
   * Recherche du sous-ensemble optimal dun ensemble de lignes
   *
   * @param index indice du sous-ensemble de lignes à optimiser
   * @param gain tableau des scores des lignes de pics
   */
  void find_opt_line_subset(int index, float *gain);

  /**
   * Recherche du premier parent allumé
   *
   * @return numéro de la première ligne parente allumée
   * @param shift indice du premier élément du sous-ensemble
   * @param set_size taille du sous-ensemble
   */
  int first_parent_on(int shift, int set_size );

  /**
   * Fonction de regroupement des lignes de pics
   *
   * @param lines_instance instance de la classe lines contenant les données sur les lignes
   * @param line_size 
   * @param viterbi 1 si on veut utiliser l'option viterbi, 0 sinon.
   */
  void find_line_sets(lines* lines_instance, int viterbi);
  
  /**
   * Détecte une différence entre deux lignes de pics
   *
   * @return -1 si les lignes ont un pic en commun, 1 sinon.
   * @param line tableau des lignes
   * @param i indice de la première ligne
   * @param j indice de la seconde ligne
   */
  int compare_lines(int** line, int i, int j);
};



Generated by: chose@josquin on Wed Nov 10 20:55:59 199.