Changeset 3037


Ignore:
Timestamp:
08/03/07 09:16:09 (12 years ago)
Author:
melissa
Message:

32-bit uncompressed data is now interpreted as 4 channels, 8 bits per channel (instead of 1 channel, 32 bits per channel). Also fixed a bug with trying to parse empty XML strings.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/loci/formats/in/ND2Reader.java

    r3023 r3037  
    291291            } 
    292292 
    293             try { 
    294               SAXParser parser = SAX_FACTORY.newSAXParser(); 
    295               parser.parse(new ByteArrayInputStream(s.getBytes()), handler); 
    296             } 
    297             catch (ParserConfigurationException exc) { 
    298               throw new FormatException(exc); 
    299             } 
    300             catch (SAXException exc) { 
    301               throw new FormatException(exc); 
    302             } 
     293            if (s.trim().length() > 0) { 
     294              try { 
     295                SAXParser parser = SAX_FACTORY.newSAXParser(); 
     296                parser.parse(new ByteArrayInputStream(s.getBytes()), handler); 
     297              } 
     298              catch (ParserConfigurationException exc) { 
     299                throw new FormatException(exc); 
     300              } 
     301              catch (SAXException exc) { 
     302                throw new FormatException(exc); 
     303              } 
     304            }  
    303305          } 
    304306 
     
    313315        } 
    314316      } 
    315  
    316       core.sizeC[0] = 1; 
     317   
     318      if (core.pixelType[0] == FormatTools.UINT32) { 
     319        core.sizeC[0] = 4; 
     320        core.pixelType[0] = FormatTools.UINT8; 
     321        core.interleaved[0] = true;  
     322      } 
     323 
     324      if (core.sizeC[0] == 0) core.sizeC[0] = 1; 
    317325      core.currentOrder[0] = "XYCZT"; 
    318       core.rgb[0] = false; 
     326      core.rgb[0] = core.sizeC[0] >= 3; 
    319327      core.littleEndian[0] = true; 
    320328 
     
    620628          break; 
    621629        case 32: 
    622           core.pixelType[0] = FormatTools.UINT32; 
     630          core.pixelType[0] = FormatTools.UINT8; 
     631          core.sizeC[0] = 4; 
    623632          break; 
    624633        default: 
     
    641650    } 
    642651 
    643     core.rgb[0] = core.sizeC[0] == 3; 
     652    core.rgb[0] = core.sizeC[0] >= 3; 
    644653    core.interleaved[0] = true; 
    645654    core.littleEndian[0] = false; 
Note: See TracChangeset for help on using the changeset viewer.