00001 #include "log.h"
00002 #include "format.h"
00003 #include "gfr.h"
00004 #include <stdio.h>
00005
00006
00007
00008 int main (int argc, char *argv[])
00009 {
00010 GfrEntry *currGE;
00011 GfrInterRead *currGIR;
00012 int i;
00013 Stringa buffer;
00014 FILE *fp1,*fp2;
00015 int count;
00016
00017 count = 0;
00018 buffer = stringCreate (100);
00019 gfr_init ("-");
00020 puts (gfr_writeHeader ());
00021 while (currGE = gfr_nextEntry ()){
00022 stringPrintf (buffer,"%s_1.bed",currGE->id);
00023 fp1 = fopen (string (buffer),"w");
00024 stringPrintf (buffer,"%s_2.bed",currGE->id);
00025 fp2 = fopen (string (buffer),"w");
00026 if (fp1 == NULL || fp2 == NULL) {
00027 die ("Unable to open BED files");
00028 }
00029 fprintf (fp1,"browser full knownGene\n");
00030 fprintf (fp1,"track name=\"Inter paird-ends: %s_1\" visibility=2\n",currGE->id);
00031 fprintf (fp2,"browser full knownGene\n");
00032 fprintf (fp2,"track name=\"Inter paird-ends: %s_2\" visibility=2\n",currGE->id);
00033 for (i = 0; i < arrayMax (currGE->interReads); i++) {
00034 currGIR = arrp (currGE->interReads,i,GfrInterRead);
00035 fprintf (fp1,"%s\t%d\t%d\n",currGE->chromosomeTranscript1,currGIR->readStart1,currGIR->readEnd1);
00036 fprintf (fp2,"%s\t%d\t%d\n",currGE->chromosomeTranscript2,currGIR->readStart2,currGIR->readEnd2);
00037 }
00038 fclose (fp1);
00039 fclose (fp2);
00040 puts (gfr_writeGfrEntry (currGE));
00041 count++;
00042 }
00043 gfr_deInit ();
00044 stringDestroy (buffer);
00045 warn ("%s_numGfrEntries: %d",argv[0],count);
00046 return 0;
00047 }
00048