home login register your profile contact        
Affymetrix
Products Support Analysis Scientific Community Corporate Careers Shop Affymetrix Japan
Software Developer Network
File SDK Overview
File SDK Downloads
File SDK Object Hierarchy
IGDACEXPFile
IGDACDATFile
IGDACCELFile
IGDACCHPFile
IGDACCDFFile
IGDACProbe
IGDACProbeSet
IGDACProbePair
IGDACControlProbeSet
IGDACCustomSeqComposite
IGDACCustomSeqProbeSet
IGDACCustomSeqProbeGroup
IGDACCustomSeqProbeList
IGDACGenotypeProbeSet
IGDACGenotypeProbeGroup
IGDACGenotypeProbeList
IGdacFileChooserDlg
IGDACFilesMode
File SDK Definitions
File SDK Messages
File SDK Release Notes

GDAC Files Release Notes

Below is a description of the changes to the versions of the GDAC Files SDK.


DECIDING WHICH VERSION TO USE
There are three versions of the Files APIs - COM, Java Native and Java Pure. Each one contains the same interfaces to read and parse the EXP/DAT/CEL/CHP/CDF files but they differ with respect to its ability to communicate with a GCOS Server.

One of the features of the GCOS Server is the "file security" feature. This feature provides access controls to the data files and information stored in the GCOS database based on user defined roles and permissions. When this feature is enabled on the GCOS Server the software removes both the Windows file and directory permissions so as to disable access to the data files. Access to a file is only granted if sufficient privileges are set for the user. Checking for sufficient access rights and requesting access to a data file is performed using the GCOS Server security interfaces (provided by the GCOS SDK). Since the GCOS Server software is built targeting a Windows Server system and its interfaces are using the COM technology, which is limited to the Windows platform, access requests are limited to interfaces that support COM. This means that only the COM and Java Native versions of the Files APIs will communicate to a GCOS Server system to request access to a data file. The pure Java version will not be able to read those data files managed by a GCOS Server system with file security enabled.

The COM version of the Files API is written in VC++ and will perform the fastest and most efficient file reads. Newer versions of the APIs use Windows memory mapping techniques which result in extremely fast data access. This version will communicate with the GCOS Server and verify appropriate access rights to the data files. If access is not granted the API will not read the data file and return an error indicating insufficient rights. This version can be utilized by programming languages that support COM. Among those are VC++, VB, ASP, Python, C# and ActivePerl.

The native Java version of the Files API uses Java's Java Native Interface (JNI) technology. This is a technology that enables Java methods to be written as native C function calls. The native C functions in turn call the COM interfaces. Using this version of the API you are limited to Java applications running on a Windows platform only. Since this version is a wrapper to the COM version features of the COM version such as file access and security checking are also provided. The limitation of using this version is the overhead of JNI. The other limitation is that only one file of each type (e.g. one CHP file) may be opened at one time. If you require data from multiple files, you must open one at a time and cache the results in your own buffer.

The pure Java version is written entirely in Java with no Windows dependencies. Use this version if you are developing on a non-Windows platform such as UNIX or Linux. This version, as discussed above, does not communicate with the GCOS Server system so it will be unable to read files managed by a GCOS Server where the file security feature is enabled. You must export the data files from the GCOS Server system in order to access them with this version of the APIs. When using this version we suggest using the -Xmx Java option to specify a large heap size. We use -Xmx128000000 is our testing. You may need to specify a higher value depending on the density of the array (file) you are accessing.


VERSION 4.2.04 UPDATE
  • Added support for reading GDAS 3.1 and GTYPE 1.0 CHP files.
  • This version will be able to read the 1.3GB DAT files generated by GCOS 1.3.

VERSION 4.2 UPDATE
  • Added support for BAR and BPMAP files.
  • Fixed bug in reading background values from CHP files.
  • This version will not read in the 1.3GB DAT files generated by GCOS 1.3.

VERSION 4.0 UPDATE
  • Added support for the GCOS 1.2 software and the new file formats it generates (also known as XDA files).
  • Added a new interface to provide a retrieve the DATHeader value in the CEL file.

VERSION 3.0 UPDATES - COM/Java SDK
  • Added support for the GCOS 1.0 file security feature. The File SDK will be able to read the data files managed by the GCOS 1.0 when the file security feature is enabled.
  • Added a new interface to provide a "file open" dialog. This dialog, implemented in the IGCOSFileDlg interface will provide a dialog listing and filtering all of the files managed by either the MAS, GCOS or LIMS software. The interface will return the list of files selected by the user.
  • Added the IGDACCELFile::ConvertToVersion3() method to convert CEL files to the older format.
  • This version of the SDK is compatible with MAS 5, LIMS 3 and GCOS 1. There are no interface changes so your applications do not need to be rebuilt. You will only need to install the new runtime libraries.

VERSION 2.0 UPDATES - COM SDK
  • Added support for CustomSeq® arrays.
  • Added support for the Genotyping (10K) array.
  • The AlgType property of IGDACCHPFile is now set after the ReadHeader() method is invoked.
  • When requesting control probe set information using the filter option, version 1 of the SDK would return the number of probe sets loaded equal to that of the number of controls requested. Those controls that did not exist would return NULL values. Version 2 returns the number of controls actually contained on the CHP and CDF file.
  • In version 1.0 the IGDACProbePair::UseProbePair property reports a value of USE_PROBEPAIR_USAGE_TYPE when the actual value is MASKED_PROBEPAIR_USAGE_TYPE and reports a value of MASKED_PROBEPAIR_USAGE_TYPE when the actual value is USE_PROBEPAIR_USAGE_TYPE. Version 2.0 returns the corrected values.
  • The execution time for the GetProbeByPosition() method of the IGDACCELFile interface has been significantly decreased.
  • Added TBase and PBase properties to the IGDACProbe interface.

VERSION 2.0 UPDATES - Java SDK
  • The changes listed above in the COM SDK section also apply to the Java SDK.
  • The execution time for the ReadHeader() method of the CGDACCHPFile class has been significantly decreased.
  • Fixed bug in the GetQCProbes() method of the IGDACProbeSet class which resulted in a Java exception.
888-DNA-CHIP (888-362-2447) +44 (0) 1628 552550 feedback e-mail support terms of use privacy policy