Bonjour,
je viens encore poser des questions qui vous paraitrons évidentes, mais bon, c'est en programmant que l'on devient programmeur...
toujours avec mon logiciel de lecture de radios, je veux pouvoir avoir le choix du lecteur utilisé selon le format du stream, et j'aimerai que cela soit configurable par l'utilisateur.
Donc, je me dit que je peux faire un package qui contient une fonctions qui liste une serie de package specifiques selon le format...
les fichiers Player/*.pm sont du genre :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 #!/usr/bin/perl -w #Player.pm use strict; package Player; %Player::list = (); sub list_player { no strict 'refs'; foreach (glob ('Player/*.pm') ) { my $name; ($name = $_ ) =~ s/Player\/(.*)\.pm/$1/; require 'Player/'.$name.'.pm'; my $format = 'Player::'.$name.'::format'; my $Pname = 'Player::'.$name.'::name'; $Player::list{$$format} = $$Pname; } use strict 'refs'; return %Player::list; } 1;
Le probleme est que dans la partie
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 use strict; package Player::ogg123; $Player::ogg123::name = 'ogg123'; $Player::ogg123::format = 'ogg'; $Player::ogg123::opts = '-q'; $Player::ogg123::cache = '--buffer '; 1; __END__
mon code est surement pas le bon...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 my $format = 'Player::'.$name.'::format'; my $Pname = 'Player::'.$name.'::name'; $Player::list{$$format} = $$Pname;
si quelqu'un pouvait me guider, ou alors me dire que ma methode est la pire qu'il n'ai jamais vu... Merci d'avance
Partager