annotate hub-archive-creator/BigWig.py @ 6:9193fe3ee73f draft default tip

Uploaded
author yating-l
date Thu, 22 Dec 2016 15:59:24 -0500
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
6
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
1 #!/usr/bin/python
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
2
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
3 import os
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
4 import shutil
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
5
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
6 # Internal dependencies
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
7 from Datatype import Datatype
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
8 from Track import Track
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
9 from TrackDb import TrackDb
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
10
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
11
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
12 class BigWig( Datatype ):
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
13 def __init__(self, input_bigwig_path, data_bigwig):
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
14 super(BigWig, self).__init__()
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
15
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
16 self.track = None
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
17
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
18 self.input_bigwig_path = input_bigwig_path
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
19 self.name_bigwig = data_bigwig["name"]
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
20 self.priority = data_bigwig["order_index"]
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
21 self.track_color = data_bigwig["track_color"]
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
22 # TODO: Think about how to avoid repetition of the group_name everywhere
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
23 self.group_name = data_bigwig["group_name"]
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
24
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
25 #print "Creating TrackHub BigWig from (falsePath: %s; name: %s)" % ( self.input_bigwig_path, self.name_bigwig )
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
26
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
27 trackName = "".join( ( self.name_bigwig, ".bigwig" ) )
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
28
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
29 myBigWigFilePath = os.path.join(self.myTrackFolderPath, trackName)
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
30 shutil.copy(self.input_bigwig_path, myBigWigFilePath)
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
31
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
32 # Create the Track Object
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
33 self.createTrack(file_path=trackName,
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
34 track_name=trackName,
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
35 long_label=self.name_bigwig,
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
36 track_type='bigWig', visibility='full',
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
37 priority=self.priority,
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
38 track_file=myBigWigFilePath,
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
39 track_color=self.track_color,
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
40 group_name=self.group_name)
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
41
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
42 # dataURL = "tracks/%s" % trackName
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
43 #
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
44 # # Return the BigBed track
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
45 #
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
46 # trackDb = TrackDb(
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
47 # trackName=trackName,
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
48 # longLabel=self.name_bigwig,
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
49 # shortLabel=self.getShortName( self.name_bigwig ),
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
50 # trackDataURL=dataURL,
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
51 # trackType='bigWig',
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
52 # visibility='full',
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
53 # priority=self.priority,
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
54 # )
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
55 #
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
56 # self.track = Track(
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
57 # trackFile=myBigWigFilePath,
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
58 # trackDb=trackDb,
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
59 # )
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
60
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
61 print("- BigWig %s created" % self.name_bigwig)
9193fe3ee73f Uploaded
yating-l
parents:
diff changeset
62 #print("- %s created in %s" % (trackName, myBigWigFilePath))