Author: [log in to unmask] Date: Mon Feb 23 17:17:54 2015 New Revision: 2178 Log: Add support for ECAL calibration condition. HPSJAVA-429 Added: java/trunk/conditions/src/main/java/org/hps/conditions/ecal/EcalLedCalibration.java Modified: java/trunk/conditions/src/test/java/org/hps/conditions/ecal/EcalLedTest.java Added: java/trunk/conditions/src/main/java/org/hps/conditions/ecal/EcalLedCalibration.java ============================================================================= --- java/trunk/conditions/src/main/java/org/hps/conditions/ecal/EcalLedCalibration.java (added) +++ java/trunk/conditions/src/main/java/org/hps/conditions/ecal/EcalLedCalibration.java Mon Feb 23 17:17:54 2015 @@ -0,0 +1,46 @@ +package org.hps.conditions.ecal; + +import org.hps.conditions.api.AbstractConditionsObject; +import org.hps.conditions.api.AbstractConditionsObjectCollection; +import org.hps.conditions.database.Converter; +import org.hps.conditions.database.Field; +import org.hps.conditions.database.MultipleCollectionsAction; +import org.hps.conditions.database.Table; + +@Table(names = "ecal_led_calibrations") +@Converter(multipleCollectionsAction = MultipleCollectionsAction.LAST_CREATED) +public class EcalLedCalibration extends AbstractConditionsObject { + + /** + * Generic collection class for these objects. + */ + public static class EcalLedCalibrationCollection extends AbstractConditionsObjectCollection<EcalLedCalibration> { + } + + /** + * Get the ECAL channel ID. + * @return The ECAL channel ID. + */ + @Field(names = {"ecal_channel_id"}) + public int getEcalChannelId() { + return getFieldValue("ecal_channel_id"); + } + + /** + * Get the crate number assigned to this crystal. + * @return The crate number. + */ + @Field(names = {"led_response"}) + public double getLedResponse() { + return getFieldValue("led_response"); + } + + /** + * Get the LED number assigned to this crystal. + * @return The LED number. + */ + @Field(names = {"rms"}) + public int getRms() { + return getFieldValue("rms"); + } +} Modified: java/trunk/conditions/src/test/java/org/hps/conditions/ecal/EcalLedTest.java ============================================================================= --- java/trunk/conditions/src/test/java/org/hps/conditions/ecal/EcalLedTest.java (original) +++ java/trunk/conditions/src/test/java/org/hps/conditions/ecal/EcalLedTest.java Mon Feb 23 17:17:54 2015 @@ -6,6 +6,7 @@ import org.hps.conditions.database.TableConstants; //import org.hps.conditions.config.DevReadOnlyConfiguration; import org.hps.conditions.ecal.EcalLed.EcalLedCollection; +import org.hps.conditions.ecal.EcalLedCalibration.EcalLedCalibrationCollection; import org.lcsim.conditions.ConditionsManager.ConditionsNotFoundException; /** @@ -15,12 +16,11 @@ */ public class EcalLedTest extends TestCase { - DatabaseConditionsManager conditionsManager; public void setUp() { conditionsManager = DatabaseConditionsManager.getInstance(); try { - conditionsManager.setDetector("HPS-Proposal2014-v7-2pt2", 2000); + conditionsManager.setDetector("HPS-ECalCommissioning-v2", 2000); } catch (ConditionsNotFoundException e) { throw new RuntimeException(e); } @@ -28,9 +28,17 @@ public void testEcalLed() { DatabaseConditionsManager manager = DatabaseConditionsManager.getInstance(); - EcalLedCollection collection = manager.getConditionsData(EcalLedCollection.class, TableConstants.ECAL_LEDS); - for (EcalLed led : collection) { + + // LED channel information. + EcalLedCollection leds = manager.getConditionsData(EcalLedCollection.class, TableConstants.ECAL_LEDS); + for (EcalLed led : leds) { System.out.println(led); + } + + // LED calibration data. + EcalLedCalibrationCollection calibrations = manager.getCollection(EcalLedCalibrationCollection.class); + for (EcalLedCalibration calibration : calibrations) { + System.out.println(calibration); } } }