## IntensityMeasure
setMethod(show, "IntensityMeasure", function(object)
{
callNextMethod()
cat(" dim: ", dim(object), "\n")
})
setMethod(get("["), c("IntensityMeasure", "ANY", "ANY", "ANY"),
function(x, i, j, ..., drop=FALSE)
{
if (missing(i)) i <- TRUE
if (missing(j)) j <- TRUE
initialize(x, x@.Data[i,j,...,drop=FALSE])
})
setMethod(get("[["), c("ArrayIntensity", "ANY", "ANY"),
function(x, i, j, k, ...)
{
if (missing(i)) i <- TRUE
if (missing(j)) j <- TRUE
if (missing(k)) k <- TRUE
x@.Data[i,j,k]
})
## IntensityInfo
## Intensity
setMethod(.srValidity, "Intensity", function(object)
{
msg <- NULL
if (.hasMeasurementError(object) &&
!all(dim(intensity(object)) == dim(measurementError(object)))) {
msg <- c(msg,
"'intensity' and 'measurementError' dimensions differ")
}
if (nrow(readIntensityInfo(object)) != nrow(intensity(object))) {
msg <- c(msg,
"'intensity' and 'readInfo' read numbers differ")
}
if (is.null(msg)) TRUE else msg
})
measurementError <- function(object, ...)
{
if (!.hasMeasurementError(object))
.throw(SRError("ValueUnavailable",
"'%s' has no value '%s'",
class(object), "nse"))
slot(object, "measurementError")
}
local({
slts <- slotNames("Intensity")
.make_getter(slts[!slts %in% c("readInfo", "measurementError")],
verbose=TRUE)
})
readIntensityInfo <- function(object, ...)
{
slot(object, "readInfo")
}
setMethod(dim, "Intensity", function(x)
{
dim(intensity(x))
})
setMethod(show, "Intensity", function(object)
{
callNextMethod()
cat("dim:", dim(object), "\n")
cat("readInfo:", class(readIntensityInfo(object)), "\n")
cat("intensity:", class(intensity(object)), "\n")
if (.hasMeasurementError(object)) {
cat("measurementError:", class(measurementError(object)), "\n")
} else {
cat("measurementError: not available\n")
}
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.