Author: scooter
Date: 2008-09-06 21:18:08 -0700 (Sat, 06 Sep 2008)
New Revision: 14847

Modified:
   
csplugins/trunk/ucsf/scooter/clusterMaker/src/clusterMaker/algorithms/hierarchical/Matrix.java
   
csplugins/trunk/ucsf/scooter/clusterMaker/src/clusterMaker/treeview/model/TreeViewModel.java
Log:
Make sure we can handle integer attributes also.



Modified: 
csplugins/trunk/ucsf/scooter/clusterMaker/src/clusterMaker/algorithms/hierarchical/Matrix.java
===================================================================
--- 
csplugins/trunk/ucsf/scooter/clusterMaker/src/clusterMaker/algorithms/hierarchical/Matrix.java
      2008-09-07 03:51:44 UTC (rev 14846)
+++ 
csplugins/trunk/ucsf/scooter/clusterMaker/src/clusterMaker/algorithms/hierarchical/Matrix.java
      2008-09-07 04:18:08 UTC (rev 14847)
@@ -366,14 +366,22 @@
                // For each edge, get the attribute and update the matrix and 
mask values
                int index = 0;
                int column;
+               byte attributeType = edgeAttributes.getType(weight);
                for (CyNode node: nodeList) {
                        this.rowLabels[index] = node.getIdentifier();
                        this.rowNodes[index] = node;
                        this.columnLabels[index] = node.getIdentifier();
                        // Get the list of adjacent edges
-                               List<CyEdge> edgeList = 
network.getAdjacentEdgesList(node, true, true, true);
+                       List<CyEdge> edgeList = 
network.getAdjacentEdgesList(node, true, true, true);
                        for (CyEdge edge: edgeList) {
-                               Double val = 
edgeAttributes.getDoubleAttribute(edge.getIdentifier(), weight);
+                               Double val = null;
+                               if (attributeType == 
CyAttributes.TYPE_FLOATING) {
+                                       val = 
edgeAttributes.getDoubleAttribute(edge.getIdentifier(), weight);
+                               } else {
+                                       Integer v = 
edgeAttributes.getIntegerAttribute(edge.getIdentifier(), weight);
+                                       if (v != null)
+                                               val = 
Double.valueOf(v.toString());
+                               }
                                if (edge.getSource() == node) {
                                        column = 
nodeList.indexOf(edge.getTarget());
                                        matrix[index][column] = val;

Modified: 
csplugins/trunk/ucsf/scooter/clusterMaker/src/clusterMaker/treeview/model/TreeViewModel.java
===================================================================
--- 
csplugins/trunk/ucsf/scooter/clusterMaker/src/clusterMaker/treeview/model/TreeViewModel.java
        2008-09-07 03:51:44 UTC (rev 14846)
+++ 
csplugins/trunk/ucsf/scooter/clusterMaker/src/clusterMaker/treeview/model/TreeViewModel.java
        2008-09-07 04:18:08 UTC (rev 14847)
@@ -128,12 +128,20 @@
                        for (int cell = 0; cell < nGene*nExpr; cell++)
                                exprData[cell] = DataModel.NODATA;
 
+                       byte attributeType = edgeAttributes.getType(attribute);
                        Iterator edgeIterator = network.edgesIterator();
                        while (edgeIterator.hasNext()) {
                                CyEdge edge = (CyEdge)edgeIterator.next();
                                CyNode source = (CyNode)edge.getSource();
                                CyNode target = (CyNode)edge.getTarget();
-                               Double val = 
edgeAttributes.getDoubleAttribute(edge.getIdentifier(), attribute);
+                               Double val = null;
+                               if (attributeType == 
CyAttributes.TYPE_FLOATING) {
+                                       val = 
edgeAttributes.getDoubleAttribute(edge.getIdentifier(), attribute);
+                               } else if (attributeType == 
CyAttributes.TYPE_INTEGER) {
+                                       Integer v = 
edgeAttributes.getIntegerAttribute(edge.getIdentifier(), attribute);
+                                       if (v != null)
+                                               val = 
Double.valueOf(v.toString());
+                               }
                                int gene = 
geneList.indexOf(source.getIdentifier());
                                int expr = 
geneList.indexOf(target.getIdentifier());
                                // System.out.println("Edge 
"+source.getIdentifier()+"("+gene+") "+
@@ -151,7 +159,18 @@
                        for (String nodeName: geneList) {
                                int expr = 0;
                                for (String attribute: arrayList) {
-                                       Double val = 
nodeAttributes.getDoubleAttribute(nodeName, attribute);
+                                       byte attributeType = 
nodeAttributes.getType(attribute);
+                                       Double val = null;
+                                       if (attributeType == 
CyAttributes.TYPE_FLOATING) {
+                                               val = 
nodeAttributes.getDoubleAttribute(nodeName, attribute);
+                                       } else if (attributeType == 
CyAttributes.TYPE_INTEGER) {
+                                               Integer v = 
nodeAttributes.getIntegerAttribute(nodeName, attribute);
+                                               if (v != null)
+                                                       val = 
Double.valueOf(v.toString());
+                                               else
+                                                       val = null;
+                                       }
+
                                        if (val == null) {
                                                exprData[gene*nExpr + expr] = 
DataModel.NODATA;
                                        } else {


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"cytoscape-cvs" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/cytoscape-cvs?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to