This file is indexed.

/usr/lib/perl5/TFBS/PatternI.pm is in libtfbs-perl 0.5.svn.20100421-1build1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  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
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
# TFBS module for TFBS::PatternI
#
# Copyright Boris Lenhard
#
# You may distribute this module under the same terms as perl itself
#

# POD

=head1 NAME

TFBS::PatternI - interface definition for all pattern objects (currently
includes matrices and word (consensus and regular expressions )

=head1 DESCRIPTION

TFBS::PatternI is a draft class that should contain general interface for matrix and other (future) pattern objects. It is not defined and not used yet, as I need to ponder over certain unresolved issues in general pattern definition. User feedback is more than welcome.

=head1 FEEDBACK

Please send bug reports and other comments to the author.

=head1 AUTHOR - Boris Lenhard

Boris Lenhard E<lt>Boris.Lenhard@cgb.ki.seE<gt>

=head1 APPENDIX

The rest of the documentation details each of the object
methods. Internal methods are preceded with an underscore.

=cut

# The code begins here:


# The code begins HERE:

package TFBS::PatternI;
use vars '@ISA';

use Bio::Root::Root;

use strict;

@ISA = qw(Bio::Root::Root);

#sub new  {

#}

=head2 ID

 Title   : ID
 Usage   : my $ID = $icm->ID()
           $pfm->ID('M00119');
 Function: Get/set on the ID of the pattern (unique in a DB or a set)
 Returns : pattern ID (a string)
 Args    : none for get, string for set

=cut

sub ID  {
    my ($self, $ID) = @_;
    $self->{'ID'} = $ID if $ID;
    return $self->{'ID'};
}


=head2 name

 Title   : name
 Usage   : my $name = $pwm->name()
           $pfm->name('PPARgamma');
 Function: Get/set on the name of the pattern
 Returns : pattern name (a string)
 Args    : none for get, string for set

=cut

sub name  {
    my ($self, $name) = @_;
    $self->{'name'} = $name if $name;
    return $self->{'name'};
}


=head2 class

 Title   : class
 Usage   : my $class = $pwm->class()
           $pfm->class('forkhead');
 Function: Get/set on the structural class of the pattern
 Returns : class name (a string)
 Args    : none for get, string for set

=cut


sub class  {
    my ($self, $class) = @_;
    $self->{'class'} = $class if $class;
    return $self->{'class'};
}

=head2 tag

 Title   : tag
 Usage   : my $acc = $pwm->tag('acc')
           $pfm->tag(source => "Gibbs");
 Function: Get/set on the structural class of the pattern
 Returns : tag value (a scalar/reference)
 Args    : tag name (string) for get,
	   tag name (string) and value (any scalar/reference) for set

=cut

sub tag {
    my $self = shift;
    my $tag = shift || return;
    if (scalar @_)  {
	$self->{'tags'}->{$tag} =shift;
    }
    return $self->{'tags'}->{$tag};
}


=head2 all_tags

 Title   : all_tags
 Usage   : my %tag = $pfm->all_tags();
 Function: get a hash of all tags for a matrix
 Returns : a hash of all tag values keyed by tag name
 Args    : none

=cut

sub all_tags {
    return %{$_[0]->{'tags'}};
}




=head2 delete_tag

 Title   : delete_tag
 Usage   : $pfm->delete_tag('score');
 Function: get a hash of all tags for a matrix
 Returns : nothing
 Args    : a string (tag name)

=cut


sub delete_tag {
    my ($self, $tag) = @_;
    delete $self->{'tags'}->{$tag};
}



1;