src/hg/hgTables/microarrayTables.c 1.3

1.3 2009/04/10 23:52:18 aamp
Added error Ann suggested when intersection is turned on.
Index: src/hg/hgTables/microarrayTables.c
===================================================================
RCS file: /projects/compbio/cvsroot/kent/src/hg/hgTables/microarrayTables.c,v
retrieving revision 1.2
retrieving revision 1.3
diff -b -B -U 1000000 -r1.2 -r1.3
--- src/hg/hgTables/microarrayTables.c	10 Apr 2009 20:04:29 -0000	1.2
+++ src/hg/hgTables/microarrayTables.c	10 Apr 2009 23:52:18 -0000	1.3
@@ -1,37 +1,41 @@
 /* Stuff to handle microarray tables */
 
 #include "common.h"
 #include "hash.h"
 #include "linefile.h"
 #include "trackDb.h"
 #include "customTrack.h"
 #include "microarray.h"
 #include "hgTables.h"
 
 boolean isMicroarray(struct trackDb *parent, char *table)
 /* Return TRUE if table is specified as a microarray in the current database's
  * trackDb. */
 {
 struct trackDb *tdb = findTdbForTable(database, parent, table);
 return (tdb && (startsWith("expRatio", tdb->type) || startsWith("array", tdb->type)));
 }
 
 void doOutMicroarrayNames(struct trackDb *tdb)
 /* Show the microarray names from .ra file */
 {
-struct microarrayGroups *allGroups = maGetTrackGroupings(database, tdb);
+struct microarrayGroups *allGroups;
+if (anyIntersection())
+    errAbort("Can't do all fields output when intersection is on. "
+    "Please go back and select another output type (BED or custom track is good), or clear the intersection.");
+allGroups = maGetTrackGroupings(database, tdb);
 if (allGroups)
     {
     struct maGrouping *allArrays = allGroups->allArrays;
     int i;
     if (allArrays)
 	{
 	textOpen();
 	printf("#expId\tname\n");
 	for (i = 0; i < allArrays->size; i++)
 	    {
 	    printf("%d\t%s\n", allArrays->expIds[i], allArrays->names[i]);
 	    }
 	}
     }
 }