# LinearReferenceSequenceDisplay

Auto-generated from the @jbrowse/mobx-state-tree model in the source — see the [developer guide](https://jbrowse.org/jb2/docs/developer_guide/) for concepts. Provided by the `sequence` plugin. [View source](https://github.com/GMOD/jbrowse-components/blob/main/plugins/sequence/src/LinearReferenceSequenceDisplay/model.ts).

Draws a `ReferenceSequenceTrack` as rows of bases: the forward strand, the
reverse complement and the translation frames.

The model composes `BaseDisplay`, `TrackHeightMixin` and
`MultiRegionDisplayMixin`.

The configuration slots for this model are documented on its [config schema page](../../config/linearreferencesequencedisplay).

Each section ends with the members a composed model contributes, linked to the page that documents them.

## Properties

| Member | Description |
| --- | --- |
| **type**<br><code>type: types.literal('LinearReferenceSequenceDisplay')</code> |  |
| **configuration**<br><code>configuration: ConfigurationReference(configSchema)</code> |  |

1 inherited property from one model:

From [BaseDisplay](../basedisplay): [`id`](../basedisplay#property-id)


## Volatiles

22 inherited volatiles from 6 models:

From [BaseDisplay](../basedisplay): [`error`](../basedisplay#volatile-error), [`statusMessage`](../basedisplay#volatile-statusmessage), [`statusProgress`](../basedisplay#volatile-statusprogress)

From [TrackHeightMixin](../trackheightmixin): [`scrollTop`](../trackheightmixin#volatile-scrolltop), [`hostHeight`](../trackheightmixin#volatile-hostheight)

From [MultiRegionDisplayMixin](../multiregiondisplaymixin): [`loadedRegions`](../multiregiondisplaymixin#volatile-loadedregions)

From [RegionTooLargeMixin](../regiontoolargemixin): [`forceLoadTrack`](../regiontoolargemixin#volatile-forceloadtrack), [`byteEstimate`](../regiontoolargemixin#volatile-byteestimate), [`gateMeasuredViewportKey`](../regiontoolargemixin#volatile-gatemeasuredviewportkey)

From [RenderLifecycleMixin](../renderlifecyclemixin): [`canvasDrawn`](../renderlifecyclemixin#volatile-canvasdrawn), [`paintCount`](../renderlifecyclemixin#volatile-paintcount), [`currentRenderingBackend`](../renderlifecyclemixin#volatile-currentrenderingbackend), [`renderTick`](../renderlifecyclemixin#volatile-rendertick), [`autorunsInstalled`](../renderlifecyclemixin#volatile-autorunsinstalled), [`renderError`](../renderlifecyclemixin#volatile-rendererror), [`offScreen`](../renderlifecyclemixin#volatile-offscreen)

From [FetchMixin](../fetchmixin): [`activeSignal`](../fetchmixin#volatile-activesignal), [`fetchGeneration`](../fetchmixin#volatile-fetchgeneration), [`reloadCounter`](../fetchmixin#volatile-reloadcounter), [`statusWindow`](../fetchmixin#volatile-statuswindow), [`fetchCanceled`](../fetchmixin#volatile-fetchcanceled), [`fetchRotation`](../fetchmixin#volatile-fetchrotation)


## Getters

| Member | Description |
| --- | --- |
| **sequenceData**<br><code>ReadonlyMap&lt;number, SequenceRegionData&gt;</code> | The fetched sequence, keyed by displayedRegionIndex — the foundation's per-region store, narrowed. |
| **view**<br><code>ModelInstanceTypeProps&lt;…&gt; &amp; {…} &amp; {…} &amp; {…} &amp; {…} &amp; {…} &amp; {…} &amp; {…} &amp; {…} &amp; {…} &amp; {…} &amp; {…} &amp; {…} &amp; {…} &amp; {…} &amp; {…} &amp; {…} &amp; {…} &amp; {…} &amp; {…} &amp; {…} &amp; {…} &amp; {…} &amp; {…} &amp; {…} &amp; {…} &amp; { rubberbandClickMenuItems(clickOffset: BpOffset): MenuItem[]; highlightMenuItems(_highlight: HighlightType): MenuItem[]; } &amp; { flyTo: (centerBp: number, windowWidthBp: number) =&gt; void; flyToCenter(coord: number, refName: string, displayedRegionIndex?: number &#124; undefined): void; flyToFit(centerBp: number, fitWidthBp: number): void; } &amp; { afterCreate(): void; afterAttach(): void; } &amp; IStateTreeNode&lt;…&gt;</code> |  |
| **showForward**<br><code>boolean</code> |  |
| **showReverse**<br><code>boolean</code> |  |
| **showTranslation**<br><code>boolean</code> |  |
| **sequenceType**<br><code>"dna" &#124; "pep"</code> |  |
| **colorPalette**<br><code>ColorPalette</code> | Theme-derived fill and text color for every cell this display paints |
| **isDna**<br><code>boolean</code> | the reverse-complement and translation rows are DNA-only |
| **rowVisibility**<br><code>RowVisibility</code> | Which rows the stack is showing, as the one value `rowLayout` takes |
| **cellEncoding**<br><code>CellEncoding</code> | What the cells' encode reads beyond the sequence itself |
| **zoomedOut**<br><code>boolean</code> | the view is too zoomed out to show individual bases |
| **placeholderMessage**<br><code>string &#124; undefined</code> | The message shown where the canvas would go: zoomed past base resolution, or every row toggled off (which would otherwise collapse the track to 0px). Undefined when the sequence paints. |
| **fetchInert**<br><code>boolean</code> | A shown message means no paint is coming. See FetchMixin.fetchInert. |
| **numRows**<br><code>number</code> |  |
| **computedHeight**<br><code>number</code> | fits the visible rows, or 50px while a message shows |
| **height**<br><code>number</code> | a manual resize if set, else `computedHeight` |
| **rowHeight**<br><code>number</code> | the track height split evenly across the shown rows |
| **renderState**<br><code>SequenceRenderState</code> | everything the marks and the letters need to paint a frame |

69 inherited getters from 6 models:

From [BaseDisplay](../basedisplay): [`parentTrack`](../basedisplay#getter-parenttrack), [`RenderingComponent`](../basedisplay#getter-renderingcomponent), [`DisplayBlurb`](../basedisplay#getter-displayblurb), [`adapterConfig`](../basedisplay#getter-adapterconfig), [`isMinimized`](../basedisplay#getter-isminimized), [`hoveredFeature`](../basedisplay#getter-hoveredfeature), [`featureNoun`](../basedisplay#getter-featurenoun), [`featureWidgetType`](../basedisplay#getter-featurewidgettype), [`plotKeys`](../basedisplay#getter-plotkeys), [`plot`](../basedisplay#getter-plot), [`schemaNotices`](../basedisplay#getter-schemanotices), [`plotExamples`](../basedisplay#getter-plotexamples), [`configDocsUrl`](../basedisplay#getter-configdocsurl)

From [TrackHeightMixin](../trackheightmixin): [`configuredHeight`](../trackheightmixin#getter-configuredheight), [`allottedHeight`](../trackheightmixin#getter-allottedheight), [`resizing`](../trackheightmixin#getter-resizing), [`scrollContentHeight`](../trackheightmixin#getter-scrollcontentheight), [`scrollViewportHeight`](../trackheightmixin#getter-scrollviewportheight), [`scrollableHeight`](../trackheightmixin#getter-scrollableheight)

From [MultiRegionDisplayMixin](../multiregiondisplaymixin): [`host`](../multiregiondisplaymixin#getter-host), [`canvasWidthPx`](../multiregiondisplaymixin#getter-canvaswidthpx), [`settledSubPixelBinBp`](../multiregiondisplaymixin#getter-settledsubpixelbinbp), [`canRender`](../multiregiondisplaymixin#getter-canrender), [`rendersCanvas`](../multiregiondisplaymixin#getter-renderscanvas), [`trackVisibleRegions`](../multiregiondisplaymixin#getter-trackvisibleregions), [`viewportWithinLoadedData`](../multiregiondisplaymixin#getter-viewportwithinloadeddata), [`viewportEmpty`](../multiregiondisplaymixin#getter-viewportempty), [`fetchSuspended`](../multiregiondisplaymixin#getter-fetchsuspended), [`layoutReady`](../multiregiondisplaymixin#getter-layoutready), [`dataSuperseded`](../multiregiondisplaymixin#getter-datasuperseded), [`renderBlocks`](../multiregiondisplaymixin#getter-renderblocks), [`fetchInputs`](../multiregiondisplaymixin#getter-fetchinputs), [`regionPayloads`](../multiregiondisplaymixin#getter-regionpayloads), [`hasRegionData`](../multiregiondisplaymixin#getter-hasregiondata), [`staleSettingsDrawn`](../multiregiondisplaymixin#getter-stalesettingsdrawn), [`dataCurrent`](../multiregiondisplaymixin#getter-datacurrent), [`loadedAssembly`](../multiregiondisplaymixin#getter-loadedassembly), [`phaseViewportCurrent`](../multiregiondisplaymixin#getter-phaseviewportcurrent), [`svgReady`](../multiregiondisplaymixin#getter-svgready), [`paintInert`](../multiregiondisplaymixin#getter-paintinert), [`paintSuperseded`](../multiregiondisplaymixin#getter-paintsuperseded), [`displayPhase`](../multiregiondisplaymixin#getter-displayphase)

From [RegionTooLargeMixin](../regiontoolargemixin): [`gateEnabled`](../regiontoolargemixin#getter-gateenabled), [`byteGateAdapterConfig`](../regiontoolargemixin#getter-bytegateadapterconfig), [`configuredFetchSizeLimit`](../regiontoolargemixin#getter-configuredfetchsizelimit), [`densityTooLarge`](../regiontoolargemixin#getter-densitytoolarge), [`byteGateAdapterPath`](../regiontoolargemixin#getter-bytegateadapterpath), [`adapterFetchSizeLimit`](../regiontoolargemixin#getter-adapterfetchsizelimit), [`configForceLoad`](../regiontoolargemixin#getter-configforceload), [`gateViewportSpanBp`](../regiontoolargemixin#getter-gateviewportspanbp), [`gateViewport`](../regiontoolargemixin#getter-gateviewport), [`aboveForceLoadFloor`](../regiontoolargemixin#getter-aboveforceloadfloor), [`gateExempt`](../regiontoolargemixin#getter-gateexempt), [`estimatedFetchBytes`](../regiontoolargemixin#getter-estimatedfetchbytes), [`gateMeasurementStale`](../regiontoolargemixin#getter-gatemeasurementstale), [`gateByteLimit`](../regiontoolargemixin#getter-gatebytelimit), [`gateActive`](../regiontoolargemixin#getter-gateactive), [`densityGateActive`](../regiontoolargemixin#getter-densitygateactive), [`tooLargeStatus`](../regiontoolargemixin#getter-toolargestatus), [`regionTooLarge`](../regiontoolargemixin#getter-regiontoolarge), [`regionTooLargeReason`](../regiontoolargemixin#getter-regiontoolargereason), [`zoomCanReleaseGate`](../regiontoolargemixin#getter-zoomcanreleasegate), [`gateSkipsMeasuredViewport`](../regiontoolargemixin#getter-gateskipsmeasuredviewport)

From [RenderLifecycleMixin](../renderlifecyclemixin): [`painted`](../renderlifecyclemixin#getter-painted)

From [FetchMixin](../fetchmixin): [`isLoading`](../fetchmixin#getter-isloading), [`isLoadingOrCanceled`](../fetchmixin#getter-isloadingorcanceled), [`awaitingPrerequisite`](../fetchmixin#getter-awaitingprerequisite), [`awaitingDependentData`](../fetchmixin#getter-awaitingdependentdata), [`settingsFetchInputs`](../fetchmixin#getter-settingsfetchinputs)


## Methods

| Member | Description |
| --- | --- |
| **colorPaletteIn**<br><code>(palette: JBrowsePalette) =&gt; ColorPalette</code> | `colorPalette` in another palette: the SVG export's, whose theme need not be the session's. |
| **hoverAt**<br><code>(offsetX: number, offsetY: number) =&gt; SequenceHover &#124; undefined</code> | Resolve the genomic position, reference base, and codon/amino-acid under a cursor at track-relative pixel `(offsetX, offsetY)`. Drives the hover tooltip; returns undefined when no sequence is painted, off a fetched region, or between rows. |
| **renderSvg**<br><code>(opts?: ExportSvgDisplayOptions &#124; undefined) =&gt; Promise&lt;ReactElement&lt;unknown, string &#124; JSXElementConstructor&lt;any&gt;&gt; &#124; Iterable&lt;ReactNode&gt; &#124; AwaitedReactNode&gt;</code> |  |
| **trackMenuItems**<br><code>() =&gt; MenuItem[]</code> |  |

8 inherited methods from 3 models:

From [BaseDisplay](../basedisplay): [`renderingProps`](../basedisplay#method-renderingprops), [`liftPlot`](../basedisplay#method-liftplot), [`plotProblems`](../basedisplay#method-plotproblems), [`plotWrites`](../basedisplay#method-plotwrites)

From [MultiRegionDisplayMixin](../multiregiondisplaymixin): [`regionHasData`](../multiregiondisplaymixin#method-regionhasdata), [`isCacheValid`](../multiregiondisplaymixin#method-iscachevalid)

From [RegionTooLargeMixin](../regiontoolargemixin): [`resolvedByteLimit`](../regiontoolargemixin#method-resolvedbytelimit), [`gateFetchState`](../regiontoolargemixin#method-gatefetchstate)


## Actions

| Member | Description |
| --- | --- |
| **toggleShowForward**<br><code>() =&gt; void</code> |  |
| **toggleShowReverse**<br><code>() =&gt; void</code> |  |
| **toggleShowTranslation**<br><code>() =&gt; void</code> |  |
| **startRenderingBackend**<br><code>(backend: PerRegionRenderingBackend&lt;SequenceCells, SequenceRenderState, RenderBlock, SequenceCells&gt;) =&gt; void</code> |  |
| **fetchNeeded**<br><code>(needed: IndexedRegion[]) =&gt; Promise&lt;void&gt;</code> |  |

40 inherited actions from 6 models:

From [BaseDisplay](../basedisplay): [`setStatusMessage`](../basedisplay#action-setstatusmessage), [`setError`](../basedisplay#action-seterror), [`clearHoveredFeature`](../basedisplay#action-clearhoveredfeature), [`reload`](../basedisplay#action-reload), [`applyDisplaySettings`](../basedisplay#action-applydisplaysettings), [`applyPlot`](../basedisplay#action-applyplot)

From [TrackHeightMixin](../trackheightmixin): [`setScrollTop`](../trackheightmixin#action-setscrolltop), [`setHostHeight`](../trackheightmixin#action-sethostheight), [`setHeight`](../trackheightmixin#action-setheight), [`resizeHeight`](../trackheightmixin#action-resizeheight), [`expandToContentHeight`](../trackheightmixin#action-expandtocontentheight)

From [MultiRegionDisplayMixin](../multiregiondisplaymixin): [`setLoadedRegion`](../multiregiondisplaymixin#action-setloadedregion), [`evictRegionStore`](../multiregiondisplaymixin#action-evictregionstore), [`dropLoadedRegion`](../multiregiondisplaymixin#action-droploadedregion), [`clearDisplaySpecificData`](../multiregiondisplaymixin#action-cleardisplayspecificdata), [`clearSettingsBakedData`](../multiregiondisplaymixin#action-clearsettingsbakeddata), [`clearAllRpcData`](../multiregiondisplaymixin#action-clearallrpcdata), [`invalidateSettings`](../multiregiondisplaymixin#action-invalidatesettings), [`fetchRegions`](../multiregiondisplaymixin#action-fetchregions), [`afterAttach`](../multiregiondisplaymixin#action-afterattach)

From [RegionTooLargeMixin](../regiontoolargemixin): [`clearByteEstimate`](../regiontoolargemixin#action-clearbyteestimate), [`clearGateMeasurements`](../regiontoolargemixin#action-cleargatemeasurements), [`setForceLoadTrack`](../regiontoolargemixin#action-setforceloadtrack), [`commitFetchBytes`](../regiontoolargemixin#action-commitfetchbytes), [`forceLoad`](../regiontoolargemixin#action-forceload)

From [RenderLifecycleMixin](../renderlifecyclemixin): [`markCanvasDrawn`](../renderlifecyclemixin#action-markcanvasdrawn), [`resetCanvasDrawn`](../renderlifecyclemixin#action-resetcanvasdrawn), [`stopRenderingBackend`](../renderlifecyclemixin#action-stoprenderingbackend), [`renderNow`](../renderlifecyclemixin#action-rendernow), [`setOffScreen`](../renderlifecyclemixin#action-setoffscreen), [`setRenderError`](../renderlifecyclemixin#action-setrendererror), [`attachRenderingBackend`](../renderlifecyclemixin#action-attachrenderingbackend)

From [FetchMixin](../fetchmixin): [`stopActiveFetch`](../fetchmixin#action-stopactivefetch), [`openStatusStream`](../fetchmixin#action-openstatusstream), [`cancelFetch`](../fetchmixin#action-cancelfetch), [`cancelFetchByUser`](../fetchmixin#action-cancelfetchbyuser), [`beforeDestroy`](../fetchmixin#action-beforedestroy), [`beginFetch`](../fetchmixin#action-beginfetch), [`endFetch`](../fetchmixin#action-endfetch), [`runFetch`](../fetchmixin#action-runfetch)


