/// <summary> /// This method is called to perform the actual actions on the controlled device. /// </summary> /// <param name="action">The name of the action to perform (see the experiment file)</param> /// <param name="parameter">The action's parameter (see the experiment file)</param> protected override void PerformAction(string action, OrderedStringPairCollection parameter) { switch (action) { case "InitializeMicroscope": break; case "BlueSignallight": break; default: throw new Exception("This action is not implemented: " + action); } }
/// <summary> /// This method has to return the meta data or the sensor. /// </summary> /// <param name="sensorName">The name of a sensor as included in <see cref="Sensors"/></param> /// <returns>Meta data for the sensor</returns> /// <remarks> /// The meta data is stored in the result file and can be queued without decompressing the actual sensor data. /// It's mainly used by the data visualization. /// The field "Indicator" should hold a key to choose the right visualization backend. /// Using "Timebase" (either "common" or "per well") and "Wells" (24 or 96) a generic backend can be used. /// It's good practice to provide at least these three fields. /// </remarks> public override OrderedStringPairCollection GetMetaData(string sensor) { CheckSensor(sensor); // this breaks if the sensor is not defined OrderedStringPairCollection metaData = new OrderedStringPairCollection(); switch (sensor) { case _TemperatureSensorName: //metaData.Add("Indicator", "incubator temperature"); // name of the sensor break; default: break; } return(metaData); }