Thread Weitergabe eines Objectes in eine externe Funktion (PM) (11 answers)
Opened by jan99 at 2014-04-25 06:22

jan99
 2014-04-25 06:22
#174986 #174986
User since
2008-09-18
439 Artikel
BenutzerIn
[default_avatar]
Moin !

ich habe folgendes Problem das ich Code in eine PM ausgelagert habe und beim Funktionsaufruf wird auch ein Objekt für ein Logfile ($log) übergeben

Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#!/usr/bin/perl
use strict;
use warnings;
use utf8;

use OSM::Tree;
use OSM::Tree::Helper;
use OSM::Tree::WayMerger;
...
my $log=Log::File->open($config{logfile_name});
...
# Aufruf der Funktion für die Way-Suche
my @superway_id_result = osmtree_waymerger(@data,$log);    

....

Die externe Funktion im Grundzug:

Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
package OSM::Tree::WayMerger ;
use OSM::Tree::Helper;
use strict;
use warnings;
use Data::Dumper;
# JT Log-File-PM
use Log::File;

use base qw (Exporter AutoLoader);
our $version='0.1';
our @EXPORT = qw (osmtree_waymerger
                  ) ;
                                  ...
sub osmtree_waymerger { waymerger(@_); }
sub waymerger
{
  my @data = shift;
  my $log = shift;                                
...
#nachfolgend Zeile 126
$log->doublewrite("-- suchen der Anschluss-Elemente ---");


Die Meldung dabei ist:

Quote
Can't locate object method "doublewrite" via package "OSM::Tree::Way" at C:/Perl
/lib/OSM/Tree/WayMerger.pm line 126, <> line 1.


Die Funktion doublewrite ist in der Log::File definiert und funktioniert an anderer Stelle (dort wo die Instanz angelegt wird).Kann mir einer weiterhelfen?

Gruß Jan :-)
perl-Greenhorn - Win7 64bit / strawberry (ehem. activeperl) - www.OpenStreetMap.de

View full thread Weitergabe eines Objectes in eine externe Funktion (PM)