Added accessors to the rod data sources so that walkers can access the name/file/type triplets for input rods. This is necessary if e.g. you want to create a vcf writer based on all of the samples being input.

git-svn-id: file:///humgen/gsa-scr1/gsa-engineering/svn_contents/trunk@1994 348d0f76-0448-11de-a6fe-93d51630548a
This commit is contained in:
ebanks 2009-11-09 04:25:39 +00:00
parent d07f3bb6f6
commit 7ce0df76f8
3 changed files with 24 additions and 2 deletions

View File

@ -663,7 +663,7 @@ public class GenomeAnalysisEngine {
* Returns data source object encapsulating all essential info and handlers used to traverse
* reads; header merger, individual file readers etc can be accessed through the returned data source object.
*
* @return
* @return the reads data source
*/
public SAMDataSource getDataSource() {
return this.readsDataSource;
@ -677,4 +677,14 @@ public class GenomeAnalysisEngine {
public GATKArgumentCollection getArguments() {
return this.argCollection;
}
/**
* Returns data source objects encapsulating all rod data;
* individual rods can be accessed through the returned data source objects.
*
* @return the rods data sources
*/
public List<ReferenceOrderedDataSource> getRodDataSources() {
return this.rodDataSources;
}
}

View File

@ -53,6 +53,14 @@ public class ReferenceOrderedDataSource implements SimpleDataSource {
return this.rod.getName();
}
/**
* Return the underlying reference-ordered data.
* @return the underlying rod.
*/
public ReferenceOrderedData getReferenceOrderedData() {
return this.rod;
}
/**
* Seek to the specified position and return an iterator through the data.
* @param shard Shard that points to the selected position.

View File

@ -176,15 +176,19 @@ public class ReferenceOrderedData<ROD extends ReferenceOrderedDatum> implements
//
// ----------------------------------------------------------------------
public ReferenceOrderedData(final String name, File file, Class<ROD> type ) {
this.name = name;
this.file = file;
this.type = type;
this.name = name;
// this.header = initializeROD(name, file, type);
// this.fieldDelimiter = newROD(name, type).delimiterRegex();
}
public String getName() { return name; }
public File getFile() { return file; }
public Class<ROD> getType() { return type; }
/**
* Special equals override to see if this ROD is compatible with the given
* name and type. 'Compatible' means that this ROD has the name that's passed