org.bdgenomics.adam.models

# Gene

#### case class Gene(id: String, names: Seq[String], strand: Boolean, transcripts: Iterable[Transcript]) extends Product with Serializable

A 'gene model' is a small, hierarchical collection of objects: Genes, Transcripts, and Exons. Each Gene contains a collection of Transcripts, and each Transcript contains a collection of Exons, and together they describe how the genome is transcribed and translated into a family of related proteins (or other RNA products that aren't translated at all).

This review, Gerstein et al. "What is a gene, post-ENCODE? History and updated definition" Genome Research (2007) http://genome.cshlp.org/content/17/6/669.full

is a reasonably good overview both of what the term 'gene' has meant in the past as well as where it might be headed in the future.

Here, we aren't trying to answer any of these questions about "what is a gene," but rather to provide the routines necessary to _re-assemble_ hierarchical models of genes that have been flattened into features (GFF, GTF, or BED)

id

  A name, presumably unique within a gene dataset, of a Gene

names

  Common names for the gene, possibly shared with other genes (for historical or ad hoc reasons)

strand

  The strand of the Gene (this is from data, not derived from the Transcripts' strand(s), and we leave open the possibility that a single Gene will have Transcripts in _both_ directions, e.g. anti-sense transcripts)

transcripts

  The Transcripts that are part of this gene model

Linear Supertypes
Serializable, Serializable, Product, Equals, AnyRef, Any
Ordering

1. Alphabetic
2. By inheritance

Inherited

1. Gene
2. Serializable
3. Serializable
4. Product
5. Equals
6. AnyRef
7. Any

1. Hide All
2. Show all

Learn more about member selection
Visibility

1. Public
2. All

### Instance Constructors

1. #### new Gene(id: String, names: Seq[String], strand: Boolean, transcripts: Iterable[Transcript])

   id

     A name, presumably unique within a gene dataset, of a Gene

   names

     Common names for the gene, possibly shared with other genes (for historical or ad hoc reasons)

   strand

     The strand of the Gene (this is from data, not derived from the Transcripts' strand(s), and we leave open the possibility that a single Gene will have Transcripts in _both_ directions, e.g. anti-sense transcripts)

   transcripts

     The Transcripts that are part of this gene model

### Value Members

1. #### final def !=(arg0: Any): Boolean

   Definition Classes
     AnyRef → Any

2. #### final def ##(): Int

   Definition Classes
     AnyRef → Any

3. #### final def ==(arg0: Any): Boolean

   Definition Classes
     AnyRef → Any

4. #### final def asInstanceOf[T0]: T0

   Definition Classes
     Any

5. #### def clone(): AnyRef

   Attributes
     protected[java.lang]
   Definition Classes
     AnyRef
   Annotations
     @throws( ... )

6. #### final def eq(arg0: AnyRef): Boolean

   Definition Classes
     AnyRef

7. #### def finalize(): Unit

   Attributes
     protected[java.lang]
   Definition Classes
     AnyRef
   Annotations
     @throws( classOf[java.lang.Throwable] )

8. #### final def getClass(): Class[_]

   Definition Classes
     AnyRef → Any

9. #### val id: String

   A name, presumably unique within a gene dataset, of a Gene

10. #### final def isInstanceOf[T0]: Boolean

    Definition Classes
      Any

11. #### val names: Seq[String]

    Common names for the gene, possibly shared with other genes (for historical or ad hoc reasons)

12. #### final def ne(arg0: AnyRef): Boolean

    Definition Classes
      AnyRef

13. #### final def notify(): Unit

    Definition Classes
      AnyRef

14. #### final def notifyAll(): Unit

    Definition Classes
      AnyRef

15. #### lazy val regions: Seq[ReferenceRegion]

    Finds the union of all the locations of the transcripts for this gene, across all the reference sequences indicates by the transcripts themselves.

    Finds the union of all the locations of the transcripts for this gene, across all the reference sequences indicates by the transcripts themselves.

    returns

      A Seq of ReferenceRegions

16. #### val strand: Boolean

    The strand of the Gene (this is from data, not derived from the Transcripts' strand(s), and we leave open the possibility that a single Gene will have Transcripts in _both_ directions, e.g.

    The strand of the Gene (this is from data, not derived from the Transcripts' strand(s), and we leave open the possibility that a single Gene will have Transcripts in _both_ directions, e.g. anti-sense transcripts)

17. #### final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
      AnyRef

18. #### val transcripts: Iterable[Transcript]

    The Transcripts that are part of this gene model

19. #### final def wait(): Unit

    Definition Classes
      AnyRef
    Annotations
      @throws( ... )

20. #### final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
      AnyRef
    Annotations
      @throws( ... )

21. #### final def wait(arg0: Long): Unit

    Definition Classes
      AnyRef
    Annotations
      @throws( ... )

### Inherited from Serializable

### Inherited from Product

### Inherited from Equals

### Inherited from AnyRef

### Inherited from Any

### Ungrouped