source: lib/Omim2dbsnp.pm @ 9

Last change on this file since 9 was 9, checked in by maarten, 10 years ago

Fixed file names and parsing indels

  • Property svn:mime-type set to text/plain
File size: 1.3 KB
Line 
1        package Omim2dbsnp;
2        use strict;
3        use warnings;
4        use Carp;
5        ##################################################
6        ## the object constructor (simplistic version)  ##
7        ##################################################
8        sub new {
9                my $self = {};
10                $self->{O2P} = {};
11
12                bless($self);    # but see below
13                return $self;
14        }
15
16        ##############################################
17        ## methods to access per-object data        ##
18        ##                                          ##
19        ## With args, they set the value.  Without  ##
20        ## any, they only retrieve it/them.         ##
21        ##############################################
22
23        sub loadCrossReference {
24                my ( $self, $filename ) = @_;
25                open( FILE, "<" . $filename ) or die $!;
26                #print($filename);
27                while (<FILE>) {
28                        my ( $omim, $ref, $pubmed ) = split( /\t/, $_ );
29                        $pubmed =~ s/\s+$//;
30                        $self->{O2P}{$omim}{$ref} = $pubmed;
31
32                }
33                return ("size of hash:  .\n");
34        }
35
36        sub getdbsnp{
37                my ( $self, $omim, $av ) = @_;
38                my $dbsnp = "";
39                ## clean the omim and ref, so it contains only \d
40                if($omim=~ /(\d{6})/){
41                        $omim=$1;
42                }
43                if($av=~/(\d{4})/){
44                        $av=$1;
45                }
46                if ( exists( $self->{O2P}->{$omim}->{$av} ) ) {
47                        $dbsnp = $self->{O2P}->{$omim}->{$av};
48                }
49                else {
50                        $dbsnp = "\t";
51                        #carp( "omimid:" . $omim,
52                        #       " numberref:", $av, " value does not exist/n" );
53                }
54
55                return ($dbsnp);
56        }
57
58        1;    # so the require or use succeeds
Note: See TracBrowser for help on using the repository browser.