IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

problème pour instancier une class


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    277
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 277
    Par défaut problème pour instancier une class
    Bonjour,

    Je cherche a programmer un codeur/decodeur de Reed Solomon, j'ai déjà bien avancé sauf que j'ai un problème que je n'arrive pas à résoudre...
    Du coup je me suis baladé sur le net et j'ai trouvé ceci:
    http://www.partow.net/projects/galois/index.html

    Je pense que pratiquement tout les ingrédients sont réunis pour faire un décodeur (j'ai déjà programmmé le codeur) mais je suis complétement novice en c++ alors j'ai un peu de mal à embriquer toutes les méthodes qui sont proposées.

    j'ai l'impression que pour faire le décodeur je dois d'abord générer un champs de Galois avec:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    	unsigned int prim_poly[9] = {1,0,0,1,0,1,1,0,1};
    	galois::GaloisField gf(256,prim_poly);
    puis de créer un block!!
    reedsolomon::ReedSolomonBlock(phrase, error, 8, false);
    et enfin d'appliquer le decodage:
    ReedSolomonDecoder

    Toute aide serait vraiment la bienvenue!!
    parce que je comprends pas trop comment agencer tout ça.

  2. #2
    Fry
    Fry est déconnecté
    Membre confirmé Avatar de Fry
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    150
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 150
    Par défaut
    C'est quoi un codeur/decodeur de Reed Solomon ?

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    277
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 277
    Par défaut
    Je me suis pas très bien exprimé, en faite les codes de reed solomon font parti de la famille des CRC codes cycliques redondants.
    Tu transmets une information qui tiens sur xx symboles. Les codes de reed solomon te permette de construire un polynome redondants sur yy symboles.
    et gâce a cette "information" supplémentaire, tu peux corriger yy/2 erreurs...

  4. #4
    Fry
    Fry est déconnecté
    Membre confirmé Avatar de Fry
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    150
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 150
    Par défaut
    ca a l'air assez compliquer comme controle d'erreur... pk utiliser celui la?
    sinon est ce que tu a compiler la librairie?

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    277
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 277
    Par défaut
    je veux faire un lecteur de Datamatrix (http://grandzebu.net/informatique/codbar/datamatrix.htm) qui utilise ce mode de correction là, donc j'ai pas le choix...

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    277
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 277
    Par défaut
    peux tu me dire si c'est juste:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    	unsigned int prim_poly[9] = {1,0,0,1,0,1,1,0,1};
    	galois::GaloisField gf(8,prim_poly);
    ces instructions créent un champs de Galois gf, et en même temps calcul alpha_to[].
    Dans le debuggueur je peux accéder à gf.alpha_to[4] donc la place est allouée.

    après je tente de faire comme sur le site:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    galois::GaloisFieldElement element1(&gf, 1);
    galois::GaloisFieldElement element2(&gf, 2);
    Mais mon compilateur me sort ça:
    dec.obj : error LNK2001: unresolved external symbol "public: __thiscall galois::GaloisFieldElement::GaloisFieldElement(class galois::GaloisField *,int)" (??0GaloisFieldElement@galois@@QAE@PAVGaloisField@1@H@Z)

    Pourtant si j'ai bien compris &gf c'est l'adresse de "galois::GaloisField "donc c'est bien "class galois::GaloisField *" et 1 ou 2 sont des int donc je comprends pas ce msg d'erreur.

    de plus j'ai fait des petits tests:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    unsigned int prim_poly[9] = {1,0,0,1,0,1,1,0,1};
    	galois::GaloisField gf(8,prim_poly);
     
    	galois::GaloisField *GF;
    	galois::GaloisFieldElement *element;
    	reedsolomon::ReedSolomonBlock *bl;
    //GaloisFieldElement element(&GF, 1);
    Je peux accèder a chaque class, mais je n'arrive pas à m'en servir?? j'ai l'impression que c'est le &gf qui passe mal

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème pour instancier une classe
    Par Armulis dans le forum C++
    Réponses: 4
    Dernier message: 29/06/2014, 15h06
  2. Problème pour retrouver une class
    Par As2piK dans le forum iReport
    Réponses: 1
    Dernier message: 11/11/2007, 14h24
  3. [Débutant] Problèmes pour créer une classe
    Par Hokage dans le forum Débuter
    Réponses: 3
    Dernier message: 27/09/2007, 16h48
  4. Réponses: 7
    Dernier message: 22/02/2007, 16h57
  5. Réponses: 3
    Dernier message: 13/08/2005, 15h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo