Modelib: Modelib::FichierLP class Reference

Page principale | Liste des namespaces | Hiérarchie des classes | Liste par ordre alphabétique | Liste des composants | Liste des fichiers | Membres des namespaces | Composants | Déclarations

# Référence de la classe Modelib::FichierLP

`#include <FichierLP.h>`

Graphe d'héritage de la classe Modelib::FichierLP

[Légende]
Diagramme de collaboration de Modelib::FichierLP:

[Légende]
Liste de tous les membres

## Membres publics
| FichierLP ()
bool | Open (const std::string &)
| Ouverture et lecture.
| ~FichierLP ()
| Destructeur.
## Membres protégés
bool | IsComment (std::string &)
std::string | trim (const std::string &) const
std::string | AvoidSpaces (const std::string &) const
bool | IsNumber (const std::string &) const
void | GetNumVar (const std::string &, std::string &, std::string &)
void | ParseObjective (const std::string &)
void | ParseSubjects (const std::string &, const std::string &)
void | ParseBounds (const std::string &)
void | ParseGenerals (const std::string &)
void | ParseBinaries (const std::string &)
void | Tokenize (const std::string &,std::list< std::string > &,std::list< std::string > &)

## Description détaillée

FichierLP est une spécification d'un fichier contenant un probleme. Cette classe permet de charger des fichiers de type LP et hérite donc de FichierProbleme.

Définition à la ligne 46 du fichier FichierLP.h.

## Documentation des contructeurs et destructeurs

Modelib::FichierLP::FichierLP | ( |  | ) |

| Constructeur par defaut (et unique constructeur) On ne devrait pas avoir besoin de constructeur par copie car cette classe n'a d'instances que temporaires ! Définition à la ligne 209 du fichier FichierLP.cpp. Références Modelib::BINARIES, Modelib::BOUNDS, Modelib::END, Modelib::FREE, Modelib::GENERALS, Modelib::MAXIMIZE, Modelib::MINIMIZE, et Modelib::SUBJECT.

Modelib::FichierLP::~FichierLP | ( |  | ) | `[inline]`

| Destructeur. Définition à la ligne 76 du fichier FichierLP.h.

## Documentation des méthodes

string Modelib::FichierLP::AvoidSpaces | ( | const std::string & | s | ) | const`[protected]`

  | Eliminer tous les espaces, on concatenne tous les mots Paramètres:
  s | le string a modifier
Renvoie: string = le string sans aucuns espaces Définition à la ligne 294 du fichier FichierLP.cpp. Référencé par Open().

void Modelib::FichierLP::GetNumVar | ( | const std::string & | str,
|  | std::string & | num,
|  | std::string & | var
| ) | `[protected]`

  | Extraire le nombre en facteur et la variable d'un monôme Paramètres:
  str | le string à décomposer
  num | contiendra le nombre mis en facteur
  var | contiendra la variable
Définition à la ligne 394 du fichier FichierLP.cpp. Références IsNumber(). Référencé par ParseObjective(), et ParseSubjects().

Voici le graphique d'appel pour cette fonction:

bool Modelib::FichierLP::IsComment | ( | std::string & | s | ) | `[protected]`

  | Est-ce que le string s est un commentaire ? Paramètres:
  s | Le string sera modifié s"il contient un commentaire, celui-ci sera effacé
Renvoie: bool = vrai si c'est une ligne complète de commentaire Définition à la ligne 251 du fichier FichierLP.cpp. Référencé par Open().

bool Modelib::FichierLP::IsNumber | ( | const std::string & | s | ) | const`[protected]`

  | Teste si le string est un nombre valide pour le programme. Les nombres valides sont des nombres entiers, fractionnaires ou flottants Paramètres:
  s | le nombre a tester
Renvoie: bool = vrai si c'est un nombre valide Définition à la ligne 309 du fichier FichierLP.cpp. Référencé par GetNumVar(), et ParseBounds().

bool Modelib::FichierLP::Open | ( | const std::string & | nomFile | ) | `[virtual]`

  | Ouverture et lecture. Ouvrir le fichier LP Paramètres:
  nom | le nom du fichier à ouvrir
Renvoie: bool = vrai si kle fichier a été traité Implémente Modelib::FichierProbleme. Définition à la ligne 787 du fichier FichierLP.cpp. Références AvoidSpaces(), Modelib::BINARIES, Modelib::BOUNDS, Modelib::END, Modelib::GENERALS, IsComment(), Modelib::MAXIMIZE, Modelib::MINIMIZE, ParseBinaries(), ParseBounds(), ParseGenerals(), ParseObjective(), ParseSubjects(), Modelib::SUBJECT, et trim(). Référencé par Modelib::Model::LoadLP().

Voici le graphique d'appel pour cette fonction:

void Modelib::FichierLP::ParseBinaries | ( | const std::string & | s | ) | `[protected]`

  | Parser le champ Binaries Paramètres:
  s | le string à anaylser
Définition à la ligne 746 du fichier FichierLP.cpp. Référencé par Open().

void Modelib::FichierLP::ParseBounds | ( | const std::string & | s | ) | `[protected]`

  | Parser l'encadrement des contraintes. Elle sont de plusieurs types: b <= bsup binf <= b <= bsup binf <= b Paramètres:
  s | le string à anaylser
Définition à la ligne 585 du fichier FichierLP.cpp. Références Modelib::GetNbComparator(), IsNumber(), et Modelib::LOWER_THAN. Référencé par Open().

Voici le graphique d'appel pour cette fonction:

void Modelib::FichierLP::ParseGenerals | ( | const std::string & | s | ) | `[protected]`

  | Parser le champ Generals Paramètres:
  s | le string à anaylser
Définition à la ligne 707 du fichier FichierLP.cpp. Référencé par Open().

void Modelib::FichierLP::ParseObjective | ( | const std::string & | s | ) | `[protected]`

  | Parser l'expression de la fonction objectif ! Paramètres:
  s | le string à anaylser
Définition à la ligne 423 du fichier FichierLP.cpp. Références GetNumVar(), Modelib::MINUS, Modelib::PLUS, et Tokenize(). Référencé par Open().

Voici le graphique d'appel pour cette fonction:

void Modelib::FichierLP::ParseSubjects | ( | const std::string & | s,
|  | const std::string & | nom
| ) | `[protected]`

  | Parser une expression d'une contrainte Paramètres:
  s | le string à anaylser
  nom | le nom de la contrainte s'il existe
Définition à la ligne 470 du fichier FichierLP.cpp. Références GetNumVar(), Modelib::MINUS, Modelib::PLUS, et Tokenize(). Référencé par Open().

Voici le graphique d'appel pour cette fonction:

void Modelib::FichierLP::Tokenize | ( | const std::string & | str,
|  | std::list< std::string > & | tokens_plus,
|  | std::list< std::string > & | tokens_minus
| ) | `[protected]`

  | Sépare une expression a-b-c+d en deux listes {a,d} et {b,c} Paramètres:
  str | le string à décomposer
  tokens_plus | stockages des monomes commençants par un '+'
  tokens_minus | stockages des monomes commençants par un '-'
Définition à la ligne 343 du fichier FichierLP.cpp. Références Modelib::MINUS, et Modelib::PLUS. Référencé par ParseObjective(), et ParseSubjects().

string Modelib::FichierLP::trim | ( | const std::string & | s | ) | const`[protected]`

  | Eliminer les espaces des bords Paramètres:
  s | le string a modifier
Renvoie: string = le string sans espaces sur les cotés Définition à la ligne 279 du fichier FichierLP.cpp. Référencé par Open().

La documentation associée à cette classe a été générée à partir des fichiers suivants :

- /FichierLP.h
- /FichierLP.cpp