Modelib: Modelib::FichierProbleme 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::FichierProbleme

`#include <FichierProbleme.h>`

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

[Légende]
Liste de tous les membres

## Membres publics
virtual bool | Open (const std::string &nom)=0
| Ouvrir un fichier (nom) et le charger.
bool | operator>> (Model &m)
virtual | ~FichierProbleme ()
## Membres protégés
| FichierProbleme ()
| Constructeur par defaut.
## Attributs Protégés
std::string | nom
bool | isMax
std::list< plExprNode * > | exprObj
std::list< plGlobalNode * > | exprConstraint
std::list< std::string > | exprGeneral
std::list< std::string > | exprBinary
std::list< plConstraintNode * > | exprBounds
std::multimap< std::string, unsigned > | mmap
std::map< std::string, unsigned > | Comp2Int
| Obtenir les comparateurs.
std::list< std::pair< long, std::string > > | commentaires
## Amis (friends)
std::ostream & | operator<< (std::ostream &, const FichierProbleme &)

## Description détaillée

FichierProbleme est une super classe Elle contient tout :]

Ainsi, il est facile d'ajouter des supports de nouveaux types de fichier (je pense notamment au MPS)

Dans tous les cas, la structure devra etre la meme car notre 'Model' est base dessus (structure grandement equivalente)

Définition à la ligne 237 du fichier FichierProbleme.h.

## Documentation des contructeurs et destructeurs

Modelib::FichierProbleme::FichierProbleme | ( |  | ) | `[inline, protected]`

| Constructeur par defaut. Définition à la ligne 277 du fichier FichierProbleme.h.

virtual Modelib::FichierProbleme::~FichierProbleme | ( |  | ) | `[inline, virtual]`

| Notre destructeur Définition à la ligne 288 du fichier FichierProbleme.h. Références exprBounds, exprConstraint, et exprObj.

## Documentation des méthodes

virtual bool Modelib::FichierProbleme::Open | ( | const std::string & | nom | ) | `[pure virtual]`

| Ouvrir un fichier (nom) et le charger. Implémenté dans Modelib::FichierLP, et Modelib::FichierMPS.

bool Modelib::FichierProbleme::operator>> | ( | Model & | m | ) |

  | Opérateur de surcharge de flux permettant de charger un modèle à partir un fichier problème Paramètres:
  m | le modèle dans lequel le FichierProbleme doit être chargé
Renvoie: vrai si il n'y a pas eu de probleme Définition à la ligne 47 du fichier FichierProbleme.cpp. Références Modelib::Model::Add(), Modelib::Expr::ASS(), commentaires, exprBinary, exprBounds, exprConstraint, exprGeneral, exprObj, Modelib::Model::GetComment(), Modelib::Model::GetProblemName(), Modelib::Infinity, isMax, Modelib::Model::Maximize(), Modelib::Model::Minimize(), Modelib::Model::SetComment(), et Modelib::Model::SetProblemName().

Voici le graphique d'appel pour cette fonction:

## Documentation des fonctions amies et associées

std::ostream& operator<< | ( | std::ostream & | o,
|  | const FichierProbleme & | pblm
| ) | `[friend]`

  | Surchage du flux de sortie, celui là permet de ressortir tout ce qui est stocké sous forme de fichier LP "" J'aime pas friend mais bon, faut bien le mettre là: bjarne a dit : > Does "friend" violate encapsulation ? No. It does not. "Friend" is an explicit mechanism for granting access, just like membership. You cannot (in a standard conforming program) grant yourself access to a class without modifying its source. "" Paramètres:
  o | flux de sortie
  FichierProbleme | ce que le flux va afficher
Renvoie: ostream on retourne classiquement le flux "le flux ne peut pas etre stoppé" Définition à la ligne 140 du fichier FichierLP.cpp.

## Documentation des données imbriquées

std::list< std::pair<long,std::string> > Modelib::FichierProbleme::commentaires`[protected]`

| Chopper les commentaires Définition à la ligne 273 du fichier FichierProbleme.h. Référencé par operator>>().

std::map<std::string,unsigned> Modelib::FichierProbleme::Comp2Int`[protected]`

| Obtenir les comparateurs. Définition à la ligne 269 du fichier FichierProbleme.h.

std::list<std::string> Modelib::FichierProbleme::exprBinary`[protected]`

| variables booléenes Définition à la ligne 257 du fichier FichierProbleme.h. Référencé par Modelib::operator<<(), et operator>>().

std::list<plConstraintNode *> Modelib::FichierProbleme::exprBounds`[protected]`

| Borner les variables Définition à la ligne 260 du fichier FichierProbleme.h. Référencé par Modelib::operator<<(), operator>>(), et ~FichierProbleme().

std::list<plGlobalNode *> Modelib::FichierProbleme::exprConstraint`[protected]`

| les contraintes sont de la forme "NomContrainte: expression contrainte(<=0...)" Définition à la ligne 251 du fichier FichierProbleme.h. Référencé par Modelib::operator<<(), operator>>(), et ~FichierProbleme().

std::list<std::string> Modelib::FichierProbleme::exprGeneral`[protected]`

| variables entieres Définition à la ligne 254 du fichier FichierProbleme.h. Référencé par Modelib::operator<<(), et operator>>().

std::list<plExprNode *> Modelib::FichierProbleme::exprObj`[protected]`

| fonction objectif Définition à la ligne 248 du fichier FichierProbleme.h. Référencé par Modelib::operator<<(), operator>>(), et ~FichierProbleme().

bool Modelib::FichierProbleme::isMax`[protected]`

| Est-ce que l'on va maximiser ou minimiser l'expression ? Définition à la ligne 245 du fichier FichierProbleme.h. Référencé par Modelib::operator<<(), et operator>>().

std::multimap<std::string,unsigned> Modelib::FichierProbleme::mmap`[protected]`

| Typiquement, on utilisera ce multimap pour le switch Comme en C++ on ne peut pas switcher sur des strings, on utilise ca pour que ce soit assez rapide. Définition à la ligne 266 du fichier FichierProbleme.h.

std::string Modelib::FichierProbleme::nom`[protected]`

| Des fois, ca pourrait etre sympa que le probleme ait un nom Définition à la ligne 242 du fichier FichierProbleme.h. Référencé par Modelib::operator<<().

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

- /FichierProbleme.h
- /FichierProbleme.cpp