MultiplicityTF

org.eso.ias.asce.transfer.impls.MultiplicityTF
See theMultiplicityTF companion object
class MultiplicityTF(cEleId: String, cEleRunningId: String, validityTimeFrame: Long, props: Properties) extends ScalaTransferExecutor[Alarm]

Implements the Multiplicity transfer function.

The IASIOs in input to this TF are only alarms. The alarm generate by this TF activates when the number of alarms in input is equal or greater then the threshold retrieved from the properties.

The priority of the alarm produced by this TF is the highest of the priorities of the alarms in input uneless a priority is passed by setting the alarm priority property in the CDB.

Since #153, the multiplicity TF propagates the properties of the inputs to the output:

  • only the properties of the inputs that are SET are propagated in the output
  • it the same property is present in more inputs, their values will be merged in the output

Value parameters

cEleId:

the ID of the ASCE

cEleRunningId:

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

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

Attributes

See also

ScalaTransferExecutor#eval

def getOutputMode(modes: Iterable[OperationalMode]): OperationalMode

The mode of the ouptut depends on the modes of the inputs: it is UNKNOW if the modes of the inputs differ, otherwise it is the common operational mode of the inputs.

The mode of the ouptut depends on the modes of the inputs: it is UNKNOW if the modes of the inputs differ, otherwise it is the common operational mode of the inputs.

Value parameters

modes

the operational modes of the inputs

Attributes

Returns

the mode to assign to the output

def getPropsOfOutput(props: Iterable[Map[String, String]]): Map[String, String]

Get and return the properties of the output by the properties of the inputs

Get and return the properties of the output by the properties of the inputs

Value parameters

props

the properties of the inputs that are set

Attributes

Returns

th eproperties to assign to the ouput

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

Check that all the inputs and the output are alarms

Check that all the inputs and the output are alarms

Value parameters

inputsInfo

The IDs and types of the inputs

outputInfo

The Id and type of thr output

Attributes

Definition Classes
def shutdown(): Unit

Attributes

See also

TransferExecutor#shutdown()

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 priorityFromCDB: Priority

The priority of the alarm from the java property or the default if not defined

The priority of the alarm from the java property or the default if not defined

Attributes

lazy val threshold: Int

A little bit too verbose but wanted to catch all the possible failures....

A little bit too verbose but wanted to catch all the possible failures....

The threshold

Attributes