-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathSearchEngine.pir
52 lines (40 loc) · 1.76 KB
/
SearchEngine.pir
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
#
# This class is an abstract PirObject class for
# searching an arbitrary genomic element with some
# search engine; subclasses should provided the necessary
# method to implement the search uging the API defined here.
#
- PerlClass PirObject::SearchEngine
- InheritsFrom PirObject
- FieldsTable
# Field name Sing/Array/Hash Type Comments
#---------------------- --------------- --------------- -----------------------
rawdiskseqs single <RawDiskSeqs> Must be tied to a file.
tmpworkdir single string Optional
debug single int4 Optional
#name single string A single string
#age single int4 A single number
#pet_names array string An array of strings
#pet_ages array int4 An array of numbers
#address single <Address> A single subobject, found in Address.pir
#previous_addresses array <Address> An array of subobjects
- EndFieldsTable
- Methods
our $RCS_VERSION='$Id: SearchEngine.pir,v 1.2 2008/08/20 19:43:22 riouxp Exp $';
our ($VERSION) = ($RCS_VERSION =~ m#,v ([\w\.]+)#);
# Returns an internal opaque token to be used by SearchSequences().
sub PrepareElementSearch {
my $self = shift;
my $fastamultalign = shift; # The actual multiple alignment in text format, as a single string
my $id = shift; # Optional ID for this alignment.
my $forstrand = shift; # Optional "+" or "-"; default is both
die "Method not defined in subclass?!?\n";
return "elementToken";
}
sub SearchSequences {
my $self = shift;
my $elementToken = shift; # as returned by PrepareElementSearch
die "Method not defined in subclass?!?\n";
my $results = undef;
return $results; # A PirObject::SimpleHitList;
}