ThresholdWithBackupsAndDelay

org.eso.ias.tranfer.ThresholdWithBackupsAndDelay
See theThresholdWithBackupsAndDelay companion object
class ThresholdWithBackupsAndDelay(asceId: String, asceRunningId: String, validityTimeFrame: Long, props: Properties) extends ScalaTransferExecutor[Alarm]

This class is very similar to the BackupSelector but in case of a failure instead of the main monitor points checks if any of the others is over (or below) the thresholds to generate an alarm.

Monitor points in inputs are assumed to be numeric and for the calculation are all converted to double.

Thresholds are defined in the same way they are defined in the MinMaxThresholdTF.

It is optionally possible to set a activation and deactivation delay like the one provided by the DelayedAlarm: if not set no delay is implemented

The ThresholdWithBackupsAndDelay generates an alarm if the value of the main monitor point (or, if not available, one of the backups) is greater (lower) then the threshold. If a delay is given, the generation or clearing of the alarm is done only after the timeout elapses.

Value parameters

asceId

: the ID of the ASCE

asceRunningId:

the runningID of the ASCE

props:

the user defined properties

validityTimeFrame:

The time frame (msec) to invalidate monitor points

Attributes

Companion
object
Graph
Supertypes
class ScalaTransferExecutor[Alarm]
class TransferExecutor
class Object
trait Matchable
class Any

Members list

Value members

Concrete methods

override def eval(compInputs: Map[String, IasIO[_]], actualOutput: IasIO[Alarm]): IasIO[Alarm]

Produces the output of the component by evaluating the inputs.

Produces the output of the component by evaluating the inputs.

Attributes

Returns

the computed output of the ASCE

Definition Classes
def getDoubleValueOfIasio(iasio: IasIO[_]): Double

Get and return the double in the passed iasio

Get and return the double in the passed iasio

Attributes

Returns

the double in the passed iasio, if any

def getIasiosWithBackup(inputs: Map[String, IasIO[_]]): List[IasIO[_]]

Get the value of the inputs taking into account the validity of the main monitor point or, in case of failure, the values of the backups.

Get the value of the inputs taking into account the validity of the main monitor point or, in case of failure, the values of the backups.

The value is a list composed of the only main monitor point if it is reliable, otherwise the list of the backups to consider, i.e. those that are reliable

Value parameters

inputs

the inputs

Attributes

Returns

the values of the inputs, or empty if no IASIO is valid

def getValue(props: Properties, propName: String, default: Double): Double

Get the value of a property from the passed properties.

Get the value of a property from the passed properties.

Value parameters

default:

the value to return if the property is not defined in the passed properties

propName:

the name of the property

props:

The properties to look for the property with the given name

Attributes

override def initialize(inputsInfo: Set[IasioInfo], outputInfo: IasioInfo): Unit

Initialize the TF

Initialize the TF

Value parameters

inputsInfo

The IDs and types of the inputs

outputInfo

The Id and type of thr output

Attributes

Definition Classes
def mustBeSetByThreshold(wasSet: Boolean, doubleValues: List[Double]): Boolean

Check if the output must be SET or CLEARED because the value of the main input (or one of the backups) is greater than the threshold

Check if the output must be SET or CLEARED because the value of the main input (or one of the backups) is greater than the threshold

Value parameters

doubleValues

the values of the IASIOs in input

wasSet

true if the alarm was set

Attributes

Returns

true if the alarm must be set

override def shutdown(): Unit

Attributes

See also

TransferExecutor#shutdown()

Definition Classes
TransferExecutor

Inherited methods

final protected def getIdentifier(id: String): String

Value parameters

id

the id to translate, templated or not

Attributes

Returns

teh identifer translated if the ASCE is templated

Inherited from:
ScalaTransferExecutor
def getTemplateInstance(): Optional[Integer]

Attributes

Inherited from:
TransferExecutor
final protected def getValue(inputs: Map[String, IasIO[_]], id: String, instance: Option[Int]): Option[IasIO[_]]

This method transparently returns a value from the passed ID and instance.

This method transparently returns a value from the passed ID and instance.

When an input is not templated, neither a template instance, then its value cabn be directly retrieved from the map of the inputs passed to [#eval]. But if the imput is templated or a templated instance then this method must be used.

If the ASCE is generated out of a template, its inputs can or cannot be generated out of the same template. In the latter, their identifiers must be enriched with the number of the instance of the ASCE. For templated inputs the number of the instance is not needed because it is the same instance number of the ASCE and it is known to the transfer function. The case of templated input instances is different because their instance number is defined in the configuration of the ASCE and not known in the transfer function so it must be esplicity passed by the caller.

For normal and templated inputs, the instance is empty. For templated inputs the instance can be passed if it is teh same of the ASCE. For templated input instances the instance number is required.

This method must be used also to get templated input instances from non templated ASCEs.

Value parameters

id

The (non templated) identifier of the value

inputs

the map of the inputs

instance

the optional instance nummber for templated input instances, not required for other cases

Attributes

Returns

the IASValue of the given ID, or None if not found in the Map

Inherited from:
ScalaTransferExecutor
def isTemplated(): Boolean

Attributes

Inherited from:
TransferExecutor
final def setTemplateInstance(x$0: Optional[Integer]): Unit

Attributes

Inherited from:
TransferExecutor

Concrete fields

val alarmPriority: Priority

The priority to SET

The priority to SET

Attributes

val delayToClear: Long

Delay to clear the alarm (msecs)

Delay to clear the alarm (msecs)

Attributes

val delayToSet: Long

Delay to set the alarm (msecs)

Delay to set the alarm (msecs)

Attributes

val highOff: Double

if the (high) alarm is active and the value of the IASIO goes below HighOFF, then the alarm is deactivated

if the (high) alarm is active and the value of the IASIO goes below HighOFF, then the alarm is deactivated

Attributes

val highOn: Double

The (high) alarm is activated when the value of the IASIO is greater then HighON

The (high) alarm is activated when the value of the IASIO is greater then HighON

Attributes

val idOfMainInput: Option[String]

The Ids of the main IASIOs against the backups

The Ids of the main IASIOs against the backups

Attributes

val lowOff: Double

if the (low) alarm is active and the value of the IASIO becomes greater then LowOFF, then the alarm is deactivated

if the (low) alarm is active and the value of the IASIO becomes greater then LowOFF, then the alarm is deactivated

Attributes

val lowOn: Double

the (low) alarm is activated when the value of the IASIO is lower then LowON

the (low) alarm is activated when the value of the IASIO is lower then LowON

Attributes