EpivizData-class: 'EpivizData' objects

Description Details Fields Methods Author(s)

Description

This class serves as the basis for the epiviz data container class hierarchy.

Details

Objects of classes derived from this class define measurements in the measurement/chart design behind epiviz. Subclasses extended from this class correspond to specific data types, and are responsible for packaging data for display in the epiviz web app. In principle, each subclass corresponds to a data type in the epiviz JS framework. Use the listTypes method of EpivizDeviceMgr-class to see the R-JS class correspondence. This virtual class implements common functionality for subclass objects. Objects in this class hierarchy are created using link{register-methods}.

Fields

object:

The data containing object

mgr:

The epiviz session manager (object of class EpivizDeviceMgr-class)

inDevice:

(logical) TRUE if object defined in a EpivizDevice-class object.

id:

(character) the measurement object id determined by the session manager. Use getId method to get this field.

name:

(character) the measurement object name. Measurements declared by the object are given names derived from this field. Use getName method to get this field.

columns:

(character vector) the names of the columns containing measurements encapsulated by this object.

ylim:

(numeric matrix) data range for measurements encapsulated by this object. These are passed to the web app to determine plot ranges.

curQuery:

(GRanges object) last query made to this object.

curHits:

(integer) indexes returned by last query to this object.

Methods

Below, methods tagged as 'VIRTUAL' must be implemented by subclasses.

.checkColumns(columns): Check if argument columns is valid for data object. 'VIRUTAL'.

.getColumns(): Infer a valid set of columns from data object. 'VIRTUAL'.

.checkLimits(ylim): Check if argument ylim is valid for data object. 'VIRTUAL'.

.getLimits(): Infer a valid set of ylim from data object. 'VIRTUAL'.

update(newObject, sendRequest=TRUE): updates data object to argument newObject. This method checks that the classes of newObject and the current object are the same, that the columns field is valid for newObject and updates the ylim field using the .getLimits method. If sendRequest==TRUE the web app is refreshed to reflect the data in newObject.

getId(): Get the object's id.

setId(id): Set the object's id. For internal use only.

getName(): Get the object's name.

setName(name): Set the object's name. For internal use only.

setLimits(ylim): Set the object's ylim field. Argument is checked using the .checkLimits method.

getMeasurements(): Get the object's encapsulated measurements in format appropriate for web app. VIRTUAL, for internal use only.

parseMeasurement(msId=NULL): Parse measurement id msId to extract object id and column. VIRTUAL, for internal use only.

setMgr(): Set the associated session manager. For internal use only.

setInDevice(x): Set the inDevice field to x. For internal use only.

plot(): Plot data in this object. VIRTUAL.

packageData(msId): Package data for measurement msId in appropriate format for web app. VIRTUAL.

getData(query, msId=NULL): Get data overlapping query. Subclasses should not need to implement this method. It calls the packageData method which performs class-specific data packaging.

Author(s)

Hector Corrada Bravo


epiviz/epivizr-tmp documentation built on May 16, 2019, 8:19 a.m.